Update of /cvsroot/fink/experimental/dazjorz/finkinfo In directory vz-cvs-3.sog:/tmp/cvs-serv5473
Modified Files: dpkg.info dpkg.patch Log Message: Forwardported a patch which I forgot from the previous dpkg patch, which runs the wrapper scripts in dpkg-base-files, currently this means the .la cleanup is run after package installation. Index: dpkg.patch =================================================================== RCS file: /cvsroot/fink/experimental/dazjorz/finkinfo/dpkg.patch,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- dpkg.patch 12 Apr 2011 19:33:22 -0000 1.3 +++ dpkg.patch 6 Jun 2011 05:55:26 -0000 1.4 @@ -1,6 +1,6 @@ diff -Nurd dpkg-1.15.5.6/configure dpkg-1.15.5.6-patched/configure --- dpkg-1.15.5.6/configure 2010-01-08 19:02:47.000000000 +0100 -+++ dpkg-1.15.5.6-patched/configure 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/configure 2011-06-06 07:19:23.000000000 +0200 @@ -9745,11 +9745,7 @@ if test "${enable_linker_optimisations+set}" = set; then : enableval=$enable_linker_optimisations; if test "x$enable_linker_optimisations" = "xno"; then @@ -15,7 +15,7 @@ diff -Nurd dpkg-1.15.5.6/dpkg-deb/build.c dpkg-1.15.5.6-patched/dpkg-deb/build.c --- dpkg-1.15.5.6/dpkg-deb/build.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/dpkg-deb/build.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/dpkg-deb/build.c 2011-06-06 07:19:23.000000000 +0200 @@ -67,6 +67,7 @@ "Installer-Menu-Item", "Homepage", @@ -26,7 +26,7 @@ diff -Nurd dpkg-1.15.5.6/dselect/dselect.h dpkg-1.15.5.6-patched/dselect/dselect.h --- dpkg-1.15.5.6/dselect/dselect.h 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/dselect/dselect.h 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/dselect/dselect.h 2011-06-06 07:19:23.000000000 +0200 @@ -26,7 +26,7 @@ #include "dselect-curses.h" @@ -38,7 +38,7 @@ #define MAX_DISPLAY_INFO 120 diff -Nurd dpkg-1.15.5.6/dselect/main.cc dpkg-1.15.5.6-patched/dselect/main.cc --- dpkg-1.15.5.6/dselect/main.cc 2010-01-08 09:00:34.000000000 +0100 -+++ dpkg-1.15.5.6-patched/dselect/main.cc 2010-06-14 12:08:10.000000000 +0200 ++++ dpkg-1.15.5.6-patched/dselect/main.cc 2011-06-06 07:19:23.000000000 +0200 @@ -52,6 +52,11 @@ #include <dpkg/dpkg.h> #include <dpkg/dpkg-db.h> @@ -238,7 +238,7 @@ error_unwind(ehflag_bombout); exit(2); diff -Nurd dpkg-1.15.5.6/dselect/pkgdepcon.cc dpkg-1.15.5.6-patched/dselect/pkgdepcon.cc --- dpkg-1.15.5.6/dselect/pkgdepcon.cc 2010-01-08 09:00:34.000000000 +0100 -+++ dpkg-1.15.5.6-patched/dselect/pkgdepcon.cc 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/dselect/pkgdepcon.cc 2011-06-06 07:19:23.000000000 +0200 @@ -202,6 +202,17 @@ return 2; } @@ -290,7 +290,7 @@ would= would_like_to_install(want,possi->ed); diff -Nurd dpkg-1.15.5.6/fink/md5sum dpkg-1.15.5.6-patched/fink/md5sum --- dpkg-1.15.5.6/fink/md5sum 1970-01-01 01:00:00.000000000 +0100 -+++ dpkg-1.15.5.6-patched/fink/md5sum 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/fink/md5sum 2011-06-06 07:19:23.000000000 +0200 @@ -0,0 +1,313 @@ +#!/usr/bin/perl +use strict; @@ -607,7 +607,7 @@ +} diff -Nurd dpkg-1.15.5.6/lib/dpkg/Makefile.am dpkg-1.15.5.6-patched/lib/dpkg/Makefile.am --- dpkg-1.15.5.6/lib/dpkg/Makefile.am 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/Makefile.am 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/Makefile.am 2011-06-06 07:19:23.000000000 +0200 @@ -7,7 +7,7 @@ AM_CPPFLAGS = \ -DLOCALEDIR=\"$(localedir)\" \ @@ -619,7 +619,7 @@ -I$(top_srcdir)/lib diff -Nurd dpkg-1.15.5.6/lib/dpkg/Makefile.in dpkg-1.15.5.6-patched/lib/dpkg/Makefile.in --- dpkg-1.15.5.6/lib/dpkg/Makefile.in 2010-01-08 19:02:49.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/Makefile.in 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/Makefile.in 2011-06-06 07:19:23.000000000 +0200 @@ -277,7 +277,7 @@ AM_CPPFLAGS = \ -DLOCALEDIR=\"$(localedir)\" \ @@ -631,7 +631,7 @@ -I$(top_srcdir)/lib diff -Nurd dpkg-1.15.5.6/lib/dpkg/buffer.c dpkg-1.15.5.6-patched/lib/dpkg/buffer.c --- dpkg-1.15.5.6/lib/dpkg/buffer.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/buffer.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/buffer.c 2011-06-06 07:19:23.000000000 +0200 @@ -103,7 +103,7 @@ switch (data->type) { case BUFFER_WRITE_BUF: @@ -643,7 +643,7 @@ varbufaddbuf((struct varbuf *)data->arg.ptr, buf, length); diff -Nurd dpkg-1.15.5.6/lib/dpkg/dpkg.h dpkg-1.15.5.6-patched/lib/dpkg/dpkg.h --- dpkg-1.15.5.6/lib/dpkg/dpkg.h 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/dpkg.h 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/dpkg.h 2011-06-06 07:19:23.000000000 +0200 @@ -91,7 +91,7 @@ #define SHELLENV "SHELL" #define DEFAULTSHELL "sh" @@ -672,7 +672,7 @@ #define GZIP "gzip" diff -Nurd dpkg-1.15.5.6/lib/dpkg/nfmalloc.c dpkg-1.15.5.6-patched/lib/dpkg/nfmalloc.c --- dpkg-1.15.5.6/lib/dpkg/nfmalloc.c 2010-01-08 09:00:34.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/nfmalloc.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/nfmalloc.c 2011-06-06 07:19:23.000000000 +0200 @@ -23,7 +23,7 @@ #include <string.h> @@ -684,7 +684,7 @@ #include <dpkg/dpkg.h> diff -Nurd dpkg-1.15.5.6/lib/dpkg/subproc.c dpkg-1.15.5.6-patched/lib/dpkg/subproc.c --- dpkg-1.15.5.6/lib/dpkg/subproc.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/subproc.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/subproc.c 2011-06-06 07:19:23.000000000 +0200 @@ -80,7 +80,9 @@ return 0; if (flags & PROCNOERR) @@ -698,7 +698,7 @@ else diff -Nurd dpkg-1.15.5.6/lib/dpkg/tarfn.c dpkg-1.15.5.6-patched/lib/dpkg/tarfn.c --- dpkg-1.15.5.6/lib/dpkg/tarfn.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/lib/dpkg/tarfn.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/lib/dpkg/tarfn.c 2011-06-06 07:19:23.000000000 +0200 @@ -80,8 +80,13 @@ { int len; @@ -716,14 +716,14 @@ str[len] = '\0'; diff -Nurd dpkg-1.15.5.6/origin.fink dpkg-1.15.5.6-patched/origin.fink --- dpkg-1.15.5.6/origin.fink 1970-01-01 01:00:00.000000000 +0100 -+++ dpkg-1.15.5.6-patched/origin.fink 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/origin.fink 2011-06-06 07:19:23.000000000 +0200 @@ -0,0 +1,3 @@ +Vendor: Fink +Vendor-URL: http://fink.sourceforge.net/ +Bugs: http://fink.sourceforge.net/ diff -Nurd dpkg-1.15.5.6/src/archives.c dpkg-1.15.5.6-patched/src/archives.c --- dpkg-1.15.5.6/src/archives.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/archives.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/archives.c 2011-06-06 07:19:23.000000000 +0200 @@ -758,9 +758,6 @@ #ifdef HAVE_LCHOWN if (lchown(fnametmpvb.buf,stab.st_uid,stab.st_gid)) @@ -736,7 +736,7 @@ debug(dbg_eachfiledetail,"tarobject nondirectory, `link' backup"); diff -Nurd dpkg-1.15.5.6/src/configure.c dpkg-1.15.5.6-patched/src/configure.c --- dpkg-1.15.5.6/src/configure.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/configure.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/configure.c 2011-06-06 07:19:23.000000000 +0200 @@ -527,8 +527,10 @@ const char *s; int pid; @@ -764,7 +764,7 @@ /** diff -Nurd dpkg-1.15.5.6/src/filesdb.c dpkg-1.15.5.6-patched/src/filesdb.c --- dpkg-1.15.5.6/src/filesdb.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/filesdb.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/filesdb.c 2011-06-06 07:19:23.000000000 +0200 @@ -28,6 +28,7 @@ #include <assert.h> #include <errno.h> @@ -793,7 +793,7 @@ if (*pointerp) return *pointerp; diff -Nurd dpkg-1.15.5.6/src/help.c dpkg-1.15.5.6-patched/src/help.c --- dpkg-1.15.5.6/src/help.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/help.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/help.c 2011-06-06 07:41:22.000000000 +0200 @@ -86,11 +86,15 @@ TAR, FIND, @@ -825,7 +825,155 @@ path = path_list; while (path) { path_end = strchr(path, ':'); -@@ -510,6 +522,26 @@ +@@ -278,6 +290,7 @@ + { + const char *scriptexec; + int c1, r; ++ if(scriptpath) // if NULL, just want wrapper side-effect, no actual .deb script present + setexecute(scriptpath,stab); + + push_cleanup(cu_post_script_tasks, ehflag_bombout, NULL, 0, 0); +@@ -285,12 +298,70 @@ + c1= m_fork(); + if (!c1) { + const char **narglist; ++ /* FINK LOCAL begin */ ++ const char **full_narglist; ++ char *path_wrapper; ++ struct stat stab_wrapper; ++ const char *null_script_path = ""; // must be blank string (NULL is end-of-array sentinel) ++ /* FINK LOCAL end */ + for (r=0; arglist[r]; r++) ; +- narglist=nfmalloc((r+1)*sizeof(char*)); ++ // narglist=nfmalloc((r+1)*sizeof(char*)); ++ /* FINK LOCAL begin */ ++ full_narglist=nfmalloc((r+2)*sizeof(char*)); // leave space for wrapper-script-name, add NULL terminator ++ narglist=full_narglist+1; // orig pointer points to orig array ++ /* FINK LOCAL end */ + for (r=1; arglist[r-1]; r++) + narglist[r]= arglist[r]; ++ if (scriptpath) { // FINK LOCAL + scriptexec= preexecscript(scriptpath,(char * const *)narglist); ++ } else { scriptexec = null_script_path; }; // FINK LOCAL was called with no actual script path to run + narglist[0]= scriptexec; ++ /* FINK LOCAL begin */ ++ // try to set up with wrapper ++#define FINK_DPKG_SCRIPT_DIR "@PREFIX@/lib/fink/dpkg-base-files" ++ // determine wrapper-script pathname ++ asprintf(&path_wrapper, "%s/%s", FINK_DPKG_SCRIPT_DIR, scriptname); ++ if (path_wrapper == NULL) { ++ ohshite(_("dpkg - error: could not allocate for fink script wrapper for %s.\n"), scriptpath); ++ } else { ++ if (!stat(path_wrapper, &stab_wrapper)) { ++ if ((stab_wrapper.st_mode & 0555) == 0555) { ++ // only use it if it exists and is chmod a+rx ++ debug(dbg_scripts,"Wrapper script '%s' will be used around '%s'", path_wrapper, scriptpath); ++ // it's good! set wrapper as actual runnable thing in narglist array ++ narglist=full_narglist; ++ scriptexec= preexecscript(path_wrapper,narglist); ++ narglist[0]= scriptexec; ++ ++ /* ++ Global wrapper needs way to introspect name of package ++ being manipulated. Normal .deb scripts could have this ++ hard-coded in their script because this info is known at ++ the time the .deb is constructed. Pass the name as an ++ env var to the wrapper. ++ */ ++ setenv("FINK_PACKAGE_NAME", pkg->name, 1); ++ } else { ++ debug(dbg_scripts,"Wrapper script '%s' wrong perms", path_wrapper); ++ if (scriptpath) { ++ debug(dbg_scripts,"...falling back to real script '%s'", scriptpath); ++ } else { ++ debug(dbg_scripts,"...skipping over because no real script '%s'", scriptpath); ++ exit(0); ++ } ++ } ++ } else { ++ debug(dbg_scripts,"Wrapper script '%s' does not exist", path_wrapper); ++ if (scriptpath) { ++ debug(dbg_scripts,"...falling back to real script '%s'", scriptpath); ++ } else { ++ debug(dbg_scripts,"...skipping over because no real script '%s'", scriptpath); ++ exit(0); ++ } ++ } ++ } ++ /* FINK LOCAL end */ ++ + if (setenv(MAINTSCRIPTPKGENVVAR, pkg->name, 1) || + setenv(MAINTSCRIPTARCHENVVAR, pif->architecture, 1) || + setenv(MAINTSCRIPTDPKGENVVAR, PACKAGE_VERSION, 1)) +@@ -324,8 +395,13 @@ + if (errno == ENOENT) { + debug(dbg_scripts, "vmaintainer_script_installed nonexistent %s", + scriptname); +- return 0; +- } ++// return 0; ++ /* FINK LOCAL begin */ ++ // always call do_script (fink adds side-effects), but pass NULL if no actual script ++ scriptpath = NULL; ++// } ++ } else ++ /* FINK LOCAL end */ + ohshite(_("unable to stat %s `%.250s'"), buf, scriptpath); + } + do_script(pkg, &pkg->installed, scriptname, scriptpath, &stab, +@@ -385,8 +461,14 @@ + if (stat(cidir,&stab)) { + if (errno == ENOENT) { + debug(dbg_scripts,"maintainer_script_new nonexistent %s `%s'",scriptname,cidir); +- return 0; +- } ++// return 0; ++ // } ++ /* FINK LOCAL begin */ ++ // always call do_script (fink adds side-effects), but pass NULL if no actual script ++ cidir = NULL; ++// } ++ } else ++ /* FINK LOCAL end */ + ohshite(_("unable to stat %s `%.250s'"), buf, cidir); + } + do_script(pkg, &pkg->available, scriptname, cidir, &stab, +@@ -415,17 +497,20 @@ + if (errno == ENOENT) { + debug(dbg_scripts,"maintainer_script_alternative nonexistent %s `%s'", + scriptname,oldscriptpath); +- return 0; +- } ++ /* FINK LOCAL begin */ ++ // always call do_script (fink adds side-effects), but pass NULL if no actual scripts ++ oldscriptpath = NULL; ++ } else { ++ /* FINK LOCAL end */ + warning(_("unable to stat %s '%.250s': %s"), + buf,oldscriptpath,strerror(errno)); +- } else { ++ } ++ } + if (!do_script(pkg, &pkg->installed, scriptname, oldscriptpath, &stab, + arglist, _("unable to execute %s"), buf, PROCWARN)) { + post_script_tasks(); + return 1; + } +- } + fprintf(stderr, _("dpkg - trying script from the new package instead ...\n")); + + arglist= buildarglist(scriptname, +@@ -435,6 +520,9 @@ + strcpy(cidirrest,scriptname); + sprintf(buf, _("new %s script"), desc); + ++ // FINK if old-pkg fails, don't want to allow "success" of new ++ // solely because wrapper worked in new-pkg: loses important ++ // error-state that *should* fail loudly + if (stat(cidir,&stab)) { + if (errno == ENOENT) + ohshit(_("there is no script in the new version of the package - giving up")); +@@ -510,6 +598,26 @@ debug(dbg_veryverbose, "isdirectoryinuse `%s' (except %s)", file->name, pkg ? pkg->name : "<none>"); @@ -854,7 +1002,7 @@ packageslump->pkgs[0] ? packageslump->pkgs[0]->name : "<none>"); diff -Nurd dpkg-1.15.5.6/src/main.c dpkg-1.15.5.6-patched/src/main.c --- dpkg-1.15.5.6/src/main.c 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/main.c 2010-06-14 12:07:58.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/main.c 2011-06-06 07:19:23.000000000 +0200 @@ -47,6 +47,12 @@ #include <dpkg/dpkg-db.h> #include <dpkg/myopt.h> @@ -1053,7 +1201,7 @@ actionfunction(argv); diff -Nurd dpkg-1.15.5.6/src/main.h dpkg-1.15.5.6-patched/src/main.h --- dpkg-1.15.5.6/src/main.h 2010-01-08 18:23:06.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/main.h 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/main.h 2011-06-06 07:19:23.000000000 +0200 @@ -134,6 +134,11 @@ const char *command; }; @@ -1068,7 +1216,7 @@ void archivefiles(const char *const *argv); diff -Nurd dpkg-1.15.5.6/src/packages.c dpkg-1.15.5.6-patched/src/packages.c --- dpkg-1.15.5.6/src/packages.c 2010-01-08 09:00:34.000000000 +0100 -+++ dpkg-1.15.5.6-patched/src/packages.c 2010-06-14 11:07:15.000000000 +0200 ++++ dpkg-1.15.5.6-patched/src/packages.c 2011-06-06 07:19:23.000000000 +0200 @@ -526,6 +526,30 @@ return ok; } Index: dpkg.info =================================================================== RCS file: /cvsroot/fink/experimental/dazjorz/finkinfo/dpkg.info,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- dpkg.info 12 Apr 2011 19:33:22 -0000 1.3 +++ dpkg.info 6 Jun 2011 05:55:26 -0000 1.4 @@ -1,6 +1,6 @@ Package: dpkg Version: 1.15.5.6 -Revision: 9 +Revision: 10 GCC: 4.0 BuildDepends: fink (>= 0.24.12), libgettext8-dev, gettext-tools Conflicts: dpkg-bootstrap @@ -14,7 +14,7 @@ Source-MD5: 4dcb0de9af234d16a62272bcc61b8873 PatchFile: %n.patch -PatchFile-MD5: b0dfb31a0a73e6e63bf64474e25732c7 +PatchFile-MD5: a7bf2b200013c6bd100bb7d5a18055bb PatchScript: << cd %b/..; sed 's|@PREFIX@|%p|g' < %{PatchFile} | patch -p0 ------------------------------------------------------------------------------ Simplify data backup and recovery for your virtual environment with vRanger. Installation's a snap, and flexible recovery options mean your data is safe, secure and there when you need it. Discover what all the cheering's about. Get your free trial download today. http://p.sf.net/sfu/quest-dev2dev2 _______________________________________________ Fink-commits mailing list Fink-commits@lists.sourceforge.net http://news.gmane.org/gmane.os.apple.fink.cvs