<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[142883] trunk/dports/sysutils/dpkg</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/142883">142883</a></dd>
<dt>Author</dt> <dd>mojca@macports.org</dd>
<dt>Date</dt> <dd>2015-11-25 15:13:17 -0800 (Wed, 25 Nov 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>dpgk: upgrade to 1.18.3 with a major rewrite ([new] maintainers, closes #39018)</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportssysutilsdpkgPortfile">trunk/dports/sysutils/dpkg/Portfile</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkdportssysutilsdpkgfilespatchscripts_Dpkg_Source_Archivepmdiff">trunk/dports/sysutils/dpkg/files/patch-scripts_Dpkg_Source_Archive.pm.diff</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li>trunk/dports/sysutils/dpkg/files/bsd/</li>
<li><a href="#trunkdportssysutilsdpkgfilesncursesdiff">trunk/dports/sysutils/dpkg/files/ncurses.diff</a></li>
<li><a href="#trunkdportssysutilsdpkgfilespatchlib_dpkgh">trunk/dports/sysutils/dpkg/files/patch-lib_dpkg.h</a></li>
<li><a href="#trunkdportssysutilsdpkgfilespatchlib_tarfnc">trunk/dports/sysutils/dpkg/files/patch-lib_tarfn.c</a></li>
<li><a href="#trunkdportssysutilsdpkgfilespatchmain_archivesc">trunk/dports/sysutils/dpkg/files/patch-main_archives.c</a></li>
<li><a href="#trunkdportssysutilsdpkgfilespatchmain_removec">trunk/dports/sysutils/dpkg/files/patch-main_remove.c</a></li>
<li><a href="#trunkdportssysutilsdpkgfilespatchscriptsMakefile">trunk/dports/sysutils/dpkg/files/patch-scripts-Makefile</a></li>
<li><a href="#trunkdportssysutilsdpkgfilespatchutils_startstopdaemonc">trunk/dports/sysutils/dpkg/files/patch-utils_start-stop-daemon.c</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportssysutilsdpkgPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/sysutils/dpkg/Portfile (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/Portfile        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/Portfile        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -2,71 +2,85 @@
</span><span class="cx"> # $Id$
</span><span class="cx"> 
</span><span class="cx"> PortSystem          1.0
</span><ins>+PortGroup           perl5 1.0
</ins><span class="cx"> 
</span><span class="cx"> name                dpkg
</span><del>-version             1.14.29
-revision            4
-platforms           darwin freebsd
</del><ins>+version             1.18.3
+platforms           darwin
</ins><span class="cx"> categories          sysutils archivers
</span><span class="cx"> license             GPL-2+
</span><del>-maintainers         nomaintainer
</del><ins>+maintainers         gwmail.gwu.edu:egall gmail.com:xeron.oskom openmaintainer
</ins><span class="cx"> description         Debian package maintenance system
</span><del>-long_description    ${description}
</del><ins>+long_description    ${name} is the basis of the ${description}.
+
</ins><span class="cx"> homepage            http://wiki.debian.org/Teams/Dpkg
</span><ins>+master_sites        debian:d/${name}/
+distname            ${name}_${version}
+worksrcdir          ${name}-${version}
</ins><span class="cx"> 
</span><del>-master_sites        debian:d/dpkg/
</del><ins>+use_xz              yes
+extract.asroot      yes
</ins><span class="cx"> 
</span><del>-checksums           md5 4326172a959b5b6484b4bc126e9f628d \
-                    sha1 15a35dd96dac6a99f24844b2eff85f8fad37ab06
</del><ins>+checksums           rmd160  baffcdf3bb72ad535d6aacbcee88202488e4612a \
+                    sha256  a40ffe38d7f36d858a752189a306433cfc52c7d15d7b98f61d9f9dd49e0e4807
</ins><span class="cx"> 
</span><ins>+perl5.branches      5.22
+
+depends_build-append \
+                    port:pkgconfig \
+                    port:flex
+
</ins><span class="cx"> # Use MacPorts versions explicitly
</span><del>-depends_lib         port:gettext \
</del><ins>+depends_lib-append  port:bzip2 \
+                    port:coreutils \
+                    port:gettext \
+                    port:gnutar \
+                    port:gzip \
</ins><span class="cx">                     port:libiconv \
</span><del>-                    port:perl5 \
-                    port:coreutils \
-                    port:bzip2 \
</del><ins>+                    port:ncurses \
+                    port:perl${perl5.major} \
+                    port:xz \
</ins><span class="cx">                     port:zlib
</span><span class="cx"> 
</span><del>-depends_run         bin:gnutar:gnutar \
-                    bin:lzma:xz
</del><ins>+depends_run-append  port:debianutils
</ins><span class="cx"> 
</span><del>-distname            ${name}_${version}
-worksrcdir          ${name}-${version}
-
-patchfiles          patch-lib_tarfn.c \
-                    patch-main_remove.c \
-                    patch-main_archives.c \
-                    patch-scripts-Makefile \
-                    patch-lib_dpkg.h \
-                    ncurses.diff
-
-configure.env       PERL=${prefix}/bin/perl5
-configure.args      --with-libintl-prefix=${prefix} \
</del><ins>+configure.perl      ${perl5.bin}
+configure.pkg_config \
+                    ${prefix}/bin/pkg-config
+configure.env-append \
+                    TAR=${prefix}/bin/gnutar
+configure.args-append \
+                    --with-libintl-prefix=${prefix} \
</ins><span class="cx">                     --with-libiconv-prefix=${prefix} \
</span><del>-                    --with-admindir=${prefix}/var/db/dpkg \
</del><ins>+                    --with-admindir=${prefix}/var/db/${name} \
+                    --with-logdir=${prefix}/var/log \
</ins><span class="cx">                     --mandir=${prefix}/share/man \
</span><ins>+                    --with-zlib \
</ins><span class="cx">                     --with-bz2 \
</span><del>-                    --with-zlib \
-                    --without-sgml-doc \
-                    --disable-linker-optimisations
</del><ins>+                    --with-liblzma \
+                    --disable-linker-optimisations \
+                    --disable-silent-rules \
+                    --disable-start-stop-daemon
</ins><span class="cx"> 
</span><ins>+compiler.blacklist-append cc gcc-3.3 gcc-4.0 apple-gcc-4.0
+
</ins><span class="cx"> build.type          gnu
</span><span class="cx"> 
</span><del>-set vardpkg         ${destroot}${prefix}/var/db/dpkg
-destroot.keepdirs   ${vardpkg} ${vardpkg}/updates ${vardpkg}/info
</del><ins>+set vardpkg         ${destroot}${prefix}/var/db/${name}
+destroot.keepdirs-append \
+                    ${vardpkg} \
+                    ${vardpkg}/updates \
+                    ${vardpkg}/info \
+                    ${destroot}${prefix}/var/log \
+                    ${destroot}${prefix}/etc/${name}
</ins><span class="cx"> 
</span><del>-post-patch {
-    set scripts ${worksrcpath}/scripts
-    reinplace s|/etc/dpkg/|${prefix}/etc/dpkg/| \
-            ${scripts}/dpkg-shlibdeps.pl \
-            ${scripts}/dpkg-source.pl
</del><ins>+patchfiles-append   patch-scripts_Dpkg_Source_Archive.pm.diff
</ins><span class="cx"> 
</span><del>-    reinplace s|/etc/alternatives|${prefix}/etc/alternatives|g \
-            ${scripts}/update-alternatives.pl
-}
</del><ins>+use_autoreconf      yes
+autoreconf.args     -fvi --warnings=all
</ins><span class="cx"> 
</span><span class="cx"> pre-destroot {
</span><del>-    file mkdir ${destroot}${prefix}/share/doc/dpkg
</del><ins>+    file mkdir ${destroot}${prefix}/share/doc/${name}
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> post-destroot {
</span><span class="lines">@@ -76,18 +90,51 @@
</span><span class="cx">     system &quot;touch ${vardpkg}/available ${vardpkg}/status&quot;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-platform darwin {
-    depends_build-append    bin:gnumake:gmake
-    patchfiles-append       patch-utils_start-stop-daemon.c \
-                            bsd/patch-main_help.c
-}
</del><ins>+# This variant sometimes hangs while building...
+variant docs description &quot;Build documentation (warning: building documentation takes a long time)&quot; {
+    depends_build-append    port:doxygen \
+                            path:bin/dot:graphviz \
+                            port:fontconfig \
+                            port:freefont-ttf
</ins><span class="cx"> 
</span><del>-platform freebsd {
-    depends_build-append    bin:gmake:gmake
-    patchfiles-append       patch-utils_start-stop-daemon.c \
-                            bsd/patch-main_help.c
</del><ins>+    set docdir              ${prefix}/share/doc/${name}
+    configure.args-append   --docdir=${docdir} \
+                            --htmldir=${docdir}/html \
+                            --dvidir=${docdir}/dvi \
+                            --pdfdir=${docdir}/pdf \
+                            --psdir=${docdir}/ps
+
+    build.target-append     doc
+
+    pre-build {
+        elevateToRoot &quot;doxygen&quot;
+        system -W ${worksrcpath}/doc &quot;${prefix}/bin/doxygen -u&quot;
+    }
+
+    post-build {
+        system -W ${worksrcpath}/doc &quot;${prefix}/bin/doxygen&quot;
+        dropPrivileges
+        set destroot_docdir ${destroot}${prefix}/share/doc/${name}
+        xinstall -d ${destroot_docdir}
+        copy ${worksrcpath}/doc/doc ${destroot_docdir}
+        copy ${worksrcpath}/doc/html ${destroot_docdir}
+        foreach docfile {coding-style.txt triggers.txt README.feature-removal-schedule frontend.txt README.api} {
+            xinstall -m 644 ${worksrcpath}/doc/${docfile} ${destroot_docdir}
+        }
+    }
</ins><span class="cx"> }
</span><span class="cx"> 
</span><ins>+# Tests currently fail, this needs to be fixed eventually:
+test.run            yes
+test.target         check
+
+#pre-test {
+#    elevateToRoot &quot;test&quot;
+#}
+#post-test {
+#    dropPrivileges
+#}
+
</ins><span class="cx"> livecheck.type      regex
</span><del>-livecheck.url       http://ftp.debian.org/debian/pool/main/d/dpkg/
</del><ins>+livecheck.url       http://ftp.debian.org/debian/pool/main/d/${name}/
</ins><span class="cx"> livecheck.regex     &quot;${name}_(\\d+\\.\\d+(\\.\\d+)*)&quot;
</span></span></pre></div>
<a id="trunkdportssysutilsdpkgfilesncursesdiff"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/ncurses.diff (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/ncurses.diff        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/ncurses.diff        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,33 +0,0 @@
</span><del>---- dselect/Makefile.in.orig        2010-03-09 07:32:20.000000000 +1100
-+++ dselect/Makefile.in        2011-03-11 12:01:25.000000000 +1100
-@@ -640,7 +640,7 @@

- curkeys.$(OBJEXT): curkeys.h
- curkeys.h: $(srcdir)/keyoverride $(srcdir)/mkcurkeys.pl
--        cursesfile=`echo '#include &lt;ncursesw/curses.h&gt;' | \
-+        cursesfile=`echo '#include &lt;curses.h&gt;' | \
-                 $(CC) -E - | grep 'curses.h' | head -n 1 | \
-                 sed -e 's/^[^&quot;]*&quot;//; s/&quot;.*$$//'`; \
-         if [ &quot;$$cursesfile&quot; = &quot;&quot; ]; then \
---- dselect/dselect.h.orig        2010-03-09 07:27:35.000000000 +1100
-+++ dselect/dselect.h        2011-03-11 12:01:43.000000000 +1100
-@@ -28,7 +28,7 @@

- #include &lt;signal.h&gt;
- #undef ERR
--#include &lt;ncursesw/curses.h&gt;
-+#include &lt;curses.h&gt;

- struct helpmenuentry {
-   char key;
---- dselect/main.cc.orig        2010-03-09 07:27:35.000000000 +1100
-+++ dselect/main.cc        2011-03-11 12:01:36.000000000 +1100
-@@ -37,7 +37,7 @@ extern &quot;C&quot; {
- #include &lt;ctype.h&gt;
- #include &lt;assert.h&gt;

--#include &lt;ncursesw/term.h&gt;
-+#include &lt;term.h&gt;

- extern &quot;C&quot; {
- #include &lt;dpkg.h&gt;
</del></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchlib_dpkgh"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/patch-lib_dpkg.h (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-lib_dpkg.h        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/patch-lib_dpkg.h        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,11 +0,0 @@
</span><del>---- ./lib/dpkg.h.orig        2010-03-08 21:27:35.000000000 +0100
-+++ ./lib/dpkg.h        2011-04-07 09:51:21.000000000 +0200
-@@ -147,7 +147,7 @@
- #define DPKG                &quot;dpkg&quot;
- #define DEBSIGVERIFY        &quot;/usr/bin/debsig-verify&quot;

--#define TAR                &quot;tar&quot;
-+#define TAR                &quot;gnutar&quot;
- #define GZIP                &quot;gzip&quot;
- #define BZIP2                &quot;bzip2&quot;
- #define LZMA                &quot;lzma&quot;
</del></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchlib_tarfnc"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/patch-lib_tarfn.c (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-lib_tarfn.c        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/patch-lib_tarfn.c        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,74 +0,0 @@
</span><del>---- lib/tarfn.c.orig        Wed Jan 26 18:31:15 2005
-+++ lib/tarfn.c        Wed Jan 26 19:26:19 2005
-@@ -18,6 +18,9 @@

- #include &quot;strnlen.h&quot;

-+static const char ustarMagic[] = { 'u', 's', 't', 'a', 'r', '\0', '0', '0', '\0' };
-+static const char gnutarMagic[] = { 'u', 's', 't', 'a', 'r', ' ', ' ', '\0' };
-+
- struct TarHeader {
-         char Name[100];
-         char Mode[8];
-@@ -28,11 +31,12 @@
-         char Checksum[8];
-         char LinkFlag;
-         char LinkName[100];
--        char MagicNumber[8];
-+        char MagicNumber[8]; /* POSIX: &quot;ustar\000&quot;, GNU: &quot;ustar  \0&quot; (blank blank null) */
-         char UserName[32];
-         char GroupName[32];
-         char MajorDevice[8];
-         char MinorDevice[8];
-+        char Prefix[155]; /* POSIX ustar header */
- };
- typedef struct TarHeader        TarHeader;

-@@ -78,6 +82,10 @@
-         struct passwd *                passwd = NULL;
-         struct group *                group = NULL;
-         unsigned int                i;
-+        char                        *prefix, *name, *file;
-+        size_t                        prefixLen;
-+        size_t                        nameLen;
-+        size_t                        fileLen;
-         long                        sum;
-         long                        checksum;

-@@ -86,7 +94,35 @@
-         if ( *h-&gt;GroupName )
-                 group = getgrnam(h-&gt;GroupName);

--        d-&gt;Name = StoC(h-&gt;Name, sizeof(h-&gt;Name));
-+        /*
-+         * Is this a ustar archive entry?
-+         * Is Prefix in use?
-+         */
-+        if ((memcmp(h-&gt;MagicNumber, ustarMagic, sizeof(h-&gt;MagicNumber)) == 0) &amp;&amp;  h-&gt;Prefix[0]) {
-+                prefixLen = strnlen(h-&gt;Prefix, sizeof(h-&gt;Prefix));
-+
-+                prefix = StoC(h-&gt;Prefix, prefixLen);
-+                if (h-&gt;Prefix[prefixLen - 1] != '/') {
-+                        prefixLen++; /* Space for '/' */
-+                         /* The rest of the code doesn't care if malloc fails, so we won't either */
-+                        prefix = realloc(prefix, prefixLen + 1); /* prefix + \0 */
-+                        prefix[prefixLen - 1] = '/';
-+                        prefix[prefixLen] = '\0';
-+                }
-+
-+                nameLen = strnlen(h-&gt;Name, sizeof(h-&gt;Name));
-+                name = StoC(h-&gt;Name, nameLen);
-+
-+                file = realloc(prefix, prefixLen + nameLen + 1); /* prefix + name + \0 */
-+                strcat(file, name);
-+
-+                free(name);
-+
-+                d-&gt;Name = file;
-+        } else {
-+                d-&gt;Name = StoC(h-&gt;Name, sizeof(h-&gt;Name));
-+        }
-+
-         d-&gt;LinkName = StoC(h-&gt;LinkName, sizeof(h-&gt;LinkName));
-         d-&gt;Mode = (mode_t)OtoL(h-&gt;Mode, sizeof(h-&gt;Mode));
-         d-&gt;Size = (size_t)OtoL(h-&gt;Size, sizeof(h-&gt;Size));
</del></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchmain_archivesc"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/patch-main_archives.c (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-main_archives.c        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/patch-main_archives.c        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,38 +0,0 @@
</span><del>---- src/archives.c.orig        Thu Nov 11 20:10:03 2004
-+++ src/archives.c        Fri Dec 17 17:34:55 2004
-@@ -373,6 +373,7 @@
-   static struct varbuf conffderefn, hardlinkfn, symlinkfn;
-   static int fd;
-   const char *usename;
-+  char *s = NULL;

-   struct conffile *conff;
-   struct tarcontext *tc= (struct tarcontext*)ti-&gt;UserData;
-@@ -423,7 +424,15 @@
-     }
-   }

--  usename= namenodetouse(nifd-&gt;namenode,tc-&gt;pkg)-&gt;name + 1; /* Skip the leading `/' */
-+  usename= namenodetouse(nifd-&gt;namenode,tc-&gt;pkg)-&gt;name; /* Skip the leading `/' */
-+  if (*usename == '.' &amp;&amp; *usename + 1 == '/') {
-+        usename += 1; /* Skip the leading `.' */
-+  } else if (*usename != '/') {
-+        s = malloc(strlen(usename) + 2); /* 1 for NULL, one for `/' we're going to add */
-+        strcpy(s + 1, usename);
-+        *s = '/';
-+        usename = s;
-+  }

-   if (nifd-&gt;namenode-&gt;flags &amp; fnnf_new_conff) {
-     /* If it's a conffile we have to extract it next to the installed
-@@ -435,6 +444,10 @@
-   }
-   
-   setupfnamevbs(usename);
-+
-+  if (s != NULL) {
-+        free(s);
-+  }

-   statr= lstat(fnamevb.buf,&amp;stab);
-   if (statr) {
</del></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchmain_removec"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/patch-main_remove.c (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-main_remove.c        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/patch-main_remove.c        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,42 +0,0 @@
</span><del>---- src/remove.c.orig        Fri Dec 10 15:48:16 2004
-+++ src/remove.c        Fri Dec 10 15:51:29 2004
-@@ -266,7 +266,18 @@
-         push_leftover(&amp;leftover,namenode);
-         continue;
-       }
--      if (errno != ENOTDIR) ohshite(_(&quot;cannot remove `%.250s'&quot;),fnvb.buf);
-+      if (errno != ENOTDIR) {
-+        /* XXX Hack:
-+         * dpkg includes /. in the packing list.
-+         * rmdir(&quot;/.&quot;) will return EINVAL. dpkg will
-+         * only attempt to remove /. when uninstalling
-+         * the last package on the system, which is why
-+         * Debian has never run into this issue. */
-+        if (errno == EINVAL &amp;&amp; strcmp(fnvb.buf, &quot;/.&quot;) == 0)
-+              continue;
-+        else
-+              ohshite(_(&quot;cannot remove `%.250s'&quot;),fnvb.buf);
-+      }
-       debug(dbg_eachfiledetail, &quot;removal_bulk unlinking `%s'&quot;, fnvb.buf);
-       {
-         /*
-@@ -383,7 +394,18 @@
-       push_leftover(&amp;leftover,namenode);
-       continue;
-     }
--    if (errno != ENOTDIR) ohshite(_(&quot;cannot remove `%.250s'&quot;),fnvb.buf);
-+    if (errno != ENOTDIR) {
-+        /* XXX Hack:
-+         * dpkg includes /. in the packing list.
-+         * rmdir(&quot;/.&quot;) will return EINVAL. dpkg will
-+         * only attempt to remove /. when uninstalling
-+         * the last package on the system, which is why
-+         * Debian has never run into this issue. */
-+        if (errno == EINVAL &amp;&amp; strcmp(fnvb.buf, &quot;/.&quot;) == 0)
-+              continue;
-+        else
-+              ohshite(_(&quot;cannot remove `%.250s'&quot;),fnvb.buf);
-+    }

-     push_leftover(&amp;leftover,namenode);
-     continue;
</del></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchscriptsMakefile"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/patch-scripts-Makefile (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-scripts-Makefile        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/patch-scripts-Makefile        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,22 +0,0 @@
</span><del>---- scripts/Makefile.am.orig        2010-03-08 21:27:35.000000000 +0100
-+++ scripts/Makefile.am        2011-01-03 10:15:37.000000000 +0100
-@@ -123,7 +123,7 @@ nobase_dist_perllib_DATA = \
-         Dpkg/Source/Patch.pm \
-         Dpkg.pm

--do_perl_subst = sed -e &quot;s:^\#![:space:]*/usr/bin/perl:\#!$(PERL):&quot; \
-+do_perl_subst = sed -e &quot;s:^\#![[:space:]]*/usr/bin/perl:\#!$(PERL):&quot; \
-                     -e &quot;s:\$$dpkglibdir[[:space:]]*=[[:space:]]*['\&quot;][^'\&quot;]*['\&quot;]:\$$dpkglibdir=\&quot;$(pkglibdir)\&quot;:&quot; \
-                     -e &quot;s:\$$pkgdatadir[[:space:]]*=[[:space:]]*['\&quot;][^'\&quot;]*['\&quot;]:\$$pkgdatadir=\&quot;$(pkgdatadir)\&quot;:&quot; \
-                     -e &quot;s:\$$admindir[[:space:]]*=[[:space:]]*['\&quot;][^'\&quot;]*['\&quot;]:\$$admindir=\&quot;$(admindir)\&quot;:&quot; \
---- scripts/Makefile.in.orig        2010-03-08 21:32:20.000000000 +0100
-+++ scripts/Makefile.in        2011-01-03 10:15:50.000000000 +0100
-@@ -330,7 +330,7 @@ nobase_dist_perllib_DATA = \
-         Dpkg/Source/Patch.pm \
-         Dpkg.pm

--do_perl_subst = sed -e &quot;s:^\#![:space:]*/usr/bin/perl:\#!$(PERL):&quot; \
-+do_perl_subst = sed -e &quot;s:^\#![[:space:]]*/usr/bin/perl:\#!$(PERL):&quot; \
-                     -e &quot;s:\$$dpkglibdir[[:space:]]*=[[:space:]]*['\&quot;][^'\&quot;]*['\&quot;]:\$$dpkglibdir=\&quot;$(pkglibdir)\&quot;:&quot; \
-                     -e &quot;s:\$$pkgdatadir[[:space:]]*=[[:space:]]*['\&quot;][^'\&quot;]*['\&quot;]:\$$pkgdatadir=\&quot;$(pkgdatadir)\&quot;:&quot; \
-                     -e &quot;s:\$$admindir[[:space:]]*=[[:space:]]*['\&quot;][^'\&quot;]*['\&quot;]:\$$admindir=\&quot;$(admindir)\&quot;:&quot; \
</del></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchscripts_Dpkg_Source_Archivepmdiff"></a>
<div class="addfile"><h4>Added: trunk/dports/sysutils/dpkg/files/patch-scripts_Dpkg_Source_Archive.pm.diff (0 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-scripts_Dpkg_Source_Archive.pm.diff                                (rev 0)
+++ trunk/dports/sysutils/dpkg/files/patch-scripts_Dpkg_Source_Archive.pm.diff        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+--- scripts/Dpkg/Source/Archive.pm.orig        2015-11-19 21:10:57.000000000 -0800
++++ scripts/Dpkg/Source/Archive.pm        2015-11-19 21:18:41.000000000 -0800
+@@ -48,7 +48,7 @@
+     $spawn_opts{from_pipe} = \*$self-&gt;{tar_input};
+     # Call tar creation process
+     $spawn_opts{delete_env} = [ 'TAR_OPTIONS' ];
+-    $spawn_opts{exec} = [ 'tar', '-cf', '-', '--format=gnu', '--null',
++    $spawn_opts{exec} = [ 'gnutar', '-cf', '-', '--format=gnu', '--null',
+                           '--numeric-owner', '--owner=0', '--group=0',
+                           @{$opts{options}}, '-T', '-' ];
+     *$self-&gt;{pid} = spawn(%spawn_opts);
+@@ -90,7 +90,7 @@
+     my $self = shift;

+     close(*$self-&gt;{tar_input}) or syserr(g_('close on tar input'));
+-    wait_child(*$self-&gt;{pid}, cmdline =&gt; 'tar -cf -');
++    wait_child(*$self-&gt;{pid}, cmdline =&gt; 'gnutar -cf -');
+     delete *$self-&gt;{pid};
+     delete *$self-&gt;{tar_input};
+     delete *$self-&gt;{cwd};
+@@ -126,7 +126,7 @@

+     # Call tar extraction process
+     $spawn_opts{delete_env} = [ 'TAR_OPTIONS' ];
+-    $spawn_opts{exec} = [ 'tar', '-xf', '-', '--no-same-permissions',
++    $spawn_opts{exec} = [ 'gnutar', '-xf', '-', '--no-same-permissions',
+                           '--no-same-owner', @{$opts{options}} ];
+     spawn(%spawn_opts);
+     $self-&gt;close();
</ins></span></pre></div>
<a id="trunkdportssysutilsdpkgfilespatchutils_startstopdaemonc"></a>
<div class="delfile"><h4>Deleted: trunk/dports/sysutils/dpkg/files/patch-utils_start-stop-daemon.c (142882 => 142883)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/sysutils/dpkg/files/patch-utils_start-stop-daemon.c        2015-11-25 20:55:11 UTC (rev 142882)
+++ trunk/dports/sysutils/dpkg/files/patch-utils_start-stop-daemon.c        2015-11-25 23:13:17 UTC (rev 142883)
</span><span class="lines">@@ -1,127 +0,0 @@
</span><del>---- utils/start-stop-daemon.c.orig        Thu Nov 11 12:10:04 2004
-+++ utils/start-stop-daemon.c        Mon Dec 13 16:02:18 2004
-@@ -38,6 +38,8 @@
- #  define OSFreeBSD
- #elif defined(__NetBSD__)
- #  define OSNetBSD
-+#elif defined(__APPLE__)
-+#  define OSDarwin
- #else
- #  error Unknown architecture - cannot build start-stop-daemon
- #endif
-@@ -49,7 +51,8 @@
- #include &lt;ps.h&gt;
- #endif

--#if defined(OSOpenBSD) || defined(OSFreeBSD) || defined(OSNetBSD)
-+#if defined(OSOpenBSD) || defined(OSFreeBSD) || defined(OSNetBSD) || defined(OSDarwin)
-+#include &lt;sys/time.h&gt;
- #include &lt;sys/param.h&gt;
- #include &lt;sys/proc.h&gt;
- #include &lt;sys/stat.h&gt;
-@@ -804,7 +807,7 @@
- #if defined(OSLinux) || defined(OShpux)
-         if (execname &amp;&amp; !pid_is_exec(pid, &amp;exec_stat))
-                 return;
--#elif defined(OSHURD) || defined(OSFreeBSD) || defined(OSNetBSD)
-+#elif defined(OSHURD) || defined(OSFreeBSD) || defined(OSNetBSD) || defined(OSDarwin)
-         /* Let's try this to see if it works */
-         if (execname &amp;&amp; !pid_is_cmd(pid, execname))
-                 return;
-@@ -882,6 +882,7 @@
- }
- #endif /* OSHURD */

-+#if defined(OSOpenBSD) || defined(OSFreeBSD) || defined(OSNetBSD)
- #ifdef HAVE_KVM_H
- static int
- pid_is_cmd(pid_t pid, const char *name)
-@@ -974,6 +975,7 @@
- {
-         /* Nothing to do */
- }
-+#endif
- #endif /* OSOpenBSD */

- #if defined(OShpux)
-@@ -975,6 +954,80 @@
-         /* Nothing to do */
- }
- #endif /* OSOpenBSD */
-+
-+#if defined(OSDarwin)
-+#include &lt;sys/sysctl.h&gt;
-+int
-+pid_is_user(pid_t pid, uid_t uid)
-+{
-+        int mib[4];
-+        size_t size;
-+        struct kinfo_proc ki;
-+
-+        size = sizeof(ki);
-+        mib[0] = CTL_KERN;
-+        mib[1] = KERN_PROC;
-+        mib[2] = KERN_PROC_PID;
-+        mib[3] = pid;
-+        if (sysctl(mib, 4, &amp;ki, &amp;size, NULL, 0) &lt; 0)
-+                errx(1, &quot;%s&quot;, &quot;Failure calling sysctl&quot;);
-+        return (uid == ki.kp_eproc.e_pcred.p_ruid);
-+}
-+
-+static int
-+pid_is_cmd(pid_t pid, const char *name)
-+{
-+        int mib[4];
-+        size_t size;
-+        struct kinfo_proc ki;
-+
-+        size = sizeof(ki);
-+        mib[0] = CTL_KERN;
-+        mib[1] = KERN_PROC;
-+        mib[2] = KERN_PROC_PID;
-+        mib[3] = pid;
-+        if (sysctl(mib, 4, &amp;ki, &amp;size, NULL, 0) &lt; 0)
-+                errx(1, &quot;%s&quot;, &quot;Failure calling sysctl&quot;);
-+        return (!strncmp(name, ki.kp_proc.p_comm, MAXCOMLEN));
-+}
-+
-+static void
-+do_procinit(void)
-+{
-+        int mib[3];
-+        size_t size;
-+        int nprocs, ret, i;
-+        struct kinfo_proc *procs = NULL, *newprocs;
-+        
-+        mib[0] = CTL_KERN;
-+        mib[1] = KERN_PROC;
-+        mib[2] = KERN_PROC_ALL;
-+        ret = sysctl(mib, 3, NULL, &amp;size, NULL, 0);
-+        /* Allocate enough memory for entire process table */
-+        do {
-+                size += size / 10;
-+                newprocs = realloc(procs, size);
-+                if (newprocs == NULL) {
-+                        if (procs)
-+                                free(procs);
-+                        errx(1, &quot;%s&quot;, &quot;Could not reallocate memory&quot;);
-+                }
-+                procs = newprocs;
-+                ret = sysctl(mib, 3, procs, &amp;size, NULL, 0);
-+        } while (ret &gt;= 0 &amp;&amp; errno == ENOMEM);
-+
-+        if (ret &lt; 0)
-+                errx(1, &quot;%s&quot;, &quot;Failure calling sysctl&quot;);
-+
-+        /* Verify size of proc structure */
-+        if (size % sizeof(struct kinfo_proc) != 0)
-+                errx(1, &quot;%s&quot;, &quot;proc size mismatch, userland out of sync with kernel&quot;);
-+        nprocs = size / sizeof(struct kinfo_proc);
-+        for (i = 0; i &lt; nprocs; i++) {
-+                check(procs[i].kp_proc.p_pid);
-+        }
-+}
-+#endif /* OSDarwin */

- #if defined(OShpux)
- static int
</del></span></pre>
</div>
</div>

</body>
</html>