Update of /cvsroot/fink/experimental/thesin/finkinfo
In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv21613

Added Files:
        apt.info apt.patch fink-archive-keyring.info jetring.info 
Log Message:
New Apt and friends, requires new dpkg fork


--- NEW FILE: jetring.info ---
Package: jetring
Version: 0.20
Revision: 1.1

Source: mirror:debian:pool/main/j/%n/%n_%v.tar.gz
Source-MD5: 9b3eee52e834caea9c8f21996f973c6b
SourceDirectory: %n

BuildDepends: <<
  dpkg-dev (>= 1.9.0)
<<

Depends: <<
  coreutils,
  gnupg2
<<

PatchScript: <<
  perl -pi -e 's,/usr,,' Makefile
  perl -pi -e 's,readlink -f,greadlink -f,g' jetring-accept jetring-build 
jetring-explode
  perl -pi -e 's,sha1sum,gsha1sum,g' jetring-accept jetring-checksum 
jetring-explode 
  perl -pi -e 's,sha256sum,gsha256sum,g' jetring-accept jetring-checksum 
jetring-explode
  perl -pi -e 's,\$type\.,"g"\.\$type\.,g' jetring-checksum
  perl -pi -e 's,gpg,gpg2,g' jetring-accept jetring-apply jetring-build 
jetring-diff jetring-explode jetring-gen jetring-review jetring-signindex 
  perl -pi -e 's,\.gpg2,\.gpg,g' jetring-accept jetring-apply jetring-build 
jetring-diff jetring-explode jetring-gen jetring-review jetring-signindex 
<<

CompileScript: <<
  make build
<<

InstallScript: <<
  make install DESTDIR=%i

  install -d -m755 %i/share/man/man1
  install -d -m755 %i/share/man/man7

  install -m644 *.1 %i/share/man/man1
  install -m644 *.7 %i/share/man/man7
<<

DocFiles: README sample.changeset debian/changelog GPL example:examples

Description: GPG keyring maintenance using changesets
DescDetail: <<
jetring is a collection of tools that allow for gpg keyrings to be maintained
using changesets. It was developed with the Debian keyring in mind, and aims
to solve the problem that a gpg keyring is a binary blob that's hard for
multiple people to collaboratively edit.
.
With jetring, changesets can be submitted, reviewed to see exactly what they
will do, applied, and used to build a keyring. The origin of every change
made to the keyring is available for auditing, and gpg signatures can be used
to further secure things.
<<

License: GPL
Maintainer: Fink Core Group <fink-c...@lists.sourceforge.net>
Homepage: http://kitenet.net/~joey/code/jetring/

--- NEW FILE: apt.patch ---
diff -ruN apt-0.9.8.2.orig/apt-pkg/contrib/macros.h 
apt-0.9.8.2/apt-pkg/contrib/macros.h
--- apt-0.9.8.2.orig/apt-pkg/contrib/macros.h   2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/apt-pkg/contrib/macros.h        2013-06-18 11:55:07.000000000 
-0600
@@ -57,7 +57,9 @@
 // some nice optional GNUC features
 #if __GNUC__ >= 3
        #define __must_check    __attribute__ ((warn_unused_result))
+ #ifndef __APPLE__
        #define __deprecated    __attribute__ ((deprecated))
+ #endif
        #define __attrib_const  __attribute__ ((__const__))
        /* likely() and unlikely() can be used to mark boolean expressions
           as (not) likely true which will help the compiler to optimise */
diff -ruN apt-0.9.8.2.orig/apt-pkg/contrib/strutl.h 
apt-0.9.8.2/apt-pkg/contrib/strutl.h
--- apt-0.9.8.2.orig/apt-pkg/contrib/strutl.h   2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/apt-pkg/contrib/strutl.h        2013-06-17 15:56:40.000000000 
-0600
@@ -150,4 +150,292 @@
 unsigned long RegexChoice(RxChoiceList *Rxs,const char **ListBegin,
                      const char **ListEnd);
 
+#if defined(__APPLE__)
+inline char *strchrnul( const char *s, int c )
+{
+       for (; *s != c && *s != '\0'; ++s)
+               ;
+       return (char *)s;
+}
+
+inline void *
+rawmemchr (const void *s, int c_in)
+{
+  /* On 32-bit hardware, choosing longword to be a 32-bit unsigned
+     long instead of a 64-bit uintmax_t tends to give better
+     performance.  On 64-bit hardware, unsigned long is generally 64
+     bits already.  Change this typedef to experiment with
+     performance.  */
+  typedef unsigned long int longword;
+
+  const unsigned char *char_ptr;
+  const longword *longword_ptr;
+  longword repeated_one;
+  longword repeated_c;
+  unsigned char c;
+
+  c = (unsigned char) c_in;
+
+  /* Handle the first few bytes by reading one byte at a time.
+     Do this until CHAR_PTR is aligned on a longword boundary.  */
+  for (char_ptr = (const unsigned char *) s;
+       (size_t) char_ptr % sizeof (longword) != 0;
+       ++char_ptr)
+    if (*char_ptr == c)
+      return (void *) char_ptr;
+
+  longword_ptr = (const longword *) char_ptr;
+
+  /* All these elucidatory comments refer to 4-byte longwords,
+     but the theory applies equally well to any size longwords.  */
+
+  /* Compute auxiliary longword values:
+     repeated_one is a value which has a 1 in every byte.
+     repeated_c has c in every byte.  */
+  repeated_one = 0x01010101;
+  repeated_c = c | (c << 8);
+  repeated_c |= repeated_c << 16;
+  if (0xffffffffU < (longword) -1)
+    {
+      repeated_one |= repeated_one << 31 << 1;
+      repeated_c |= repeated_c << 31 << 1;
+      if (8 < sizeof (longword))
+        {
+          size_t i;
+
+          for (i = 64; i < sizeof (longword) * 8; i *= 2)
+            {
+              repeated_one |= repeated_one << i;
+              repeated_c |= repeated_c << i;
+            }
+        }
+    }
+
+  /* Instead of the traditional loop which tests each byte, we will
+     test a longword at a time.  The tricky part is testing if *any of
+     the four* bytes in the longword in question are equal to NUL or
+     c.  We first use an xor with repeated_c.  This reduces the task
+     to testing whether *any of the four* bytes in longword1 is zero.
+
+     We compute tmp =
+       ((longword1 - repeated_one) & ~longword1) & (repeated_one << 7).
+     That is, we perform the following operations:
+       1. Subtract repeated_one.
+       2. & ~longword1.
+       3. & a mask consisting of 0x80 in every byte.
+     Consider what happens in each byte:
+       - If a byte of longword1 is zero, step 1 and 2 transform it into 0xff,
+         and step 3 transforms it into 0x80.  A carry can also be propagated
+         to more significant bytes.
+       - If a byte of longword1 is nonzero, let its lowest 1 bit be at
+         position k (0 <= k <= 7); so the lowest k bits are 0.  After step 1,
+         the byte ends in a single bit of value 0 and k bits of value 1.
+         After step 2, the result is just k bits of value 1: 2^k - 1.  After
+         step 3, the result is 0.  And no carry is produced.
+     So, if longword1 has only non-zero bytes, tmp is zero.
+     Whereas if longword1 has a zero byte, call j the position of the least
+     significant zero byte.  Then the result has a zero at positions 0, ...,
+     j-1 and a 0x80 at position j.  We cannot predict the result at the more
+     significant bytes (positions j+1..3), but it does not matter since we
+     already have a non-zero bit at position 8*j+7.
+
+     The test whether any byte in longword1 is zero is equivalent
+     to testing whether tmp is nonzero.
+
+     This test can read beyond the end of a string, depending on where
+     C_IN is encountered.  However, this is considered safe since the
+     initialization phase ensured that the read will be aligned,
+     therefore, the read will not cross page boundaries and will not
+     cause a fault.  */
+
+  while (1)
+    {
+      longword longword1 = *longword_ptr ^ repeated_c;
+
+      if ((((longword1 - repeated_one) & ~longword1)
+           & (repeated_one << 7)) != 0)
+        break;
+      longword_ptr++;
+    }
+
+  char_ptr = (const unsigned char *) longword_ptr;
+
+  /* At this point, we know that one of the sizeof (longword) bytes
+     starting at char_ptr is == c.  On little-endian machines, we
+     could determine the first such byte without any further memory
+     accesses, just by looking at the tmp result from the last loop
+     iteration.  But this does not work on big-endian machines.
+     Choose code that works in both cases.  */
+
+  char_ptr = (unsigned char *) longword_ptr;
+  while (*char_ptr != c)
+    char_ptr++;
+  return (void *) char_ptr;
+}
+
+#if defined _LIBC
+# include <memcopy.h>
+#else
+# include <config.h>
+# define reg_char char
+#endif
+
+#include <limits.h>
+
+#undef __memrchr
+#undef memrchr
+
+#ifndef weak_alias
+# define __memrchr memrchr
+#endif
+
+/* Search no more than N bytes of S for C.  */
+inline void *
+__memrchr (void const *s, int c_in, size_t n)
+{
+  const unsigned char *char_ptr;
+  const unsigned long int *longword_ptr;
+  unsigned long int longword, magic_bits, charmask;
+  unsigned reg_char c;
+  int i;
+
+  c = (unsigned char) c_in;
+
+  /* Handle the last few characters by reading one character at a time.
+     Do this until CHAR_PTR is aligned on a longword boundary.  */
+  for (char_ptr = (const unsigned char *) s + n;
+       n > 0 && (size_t) char_ptr % sizeof longword != 0;
+       --n)
+    if (*--char_ptr == c)
+      return (void *) char_ptr;
+
+  /* All these elucidatory comments refer to 4-byte longwords,
+     but the theory applies equally well to any size longwords.  */
+
+  longword_ptr = (const unsigned long int *) char_ptr;
+
+  /* Bits 31, 24, 16, and 8 of this number are zero.  Call these bits
+     the "holes."  Note that there is a hole just to the left of
+     each byte, with an extra at the end:
+
+     bits:  01111110 11111110 11111110 11111111
+     bytes: AAAAAAAA BBBBBBBB CCCCCCCC DDDDDDDD
+
+     The 1-bits make sure that carries propagate to the next 0-bit.
+     The 0-bits provide holes for carries to fall into.  */
+
+  /* Set MAGIC_BITS to be this pattern of 1 and 0 bits.
+     Set CHARMASK to be a longword, each of whose bytes is C.  */
+
+  magic_bits = 0xfefefefe;
+  charmask = c | (c << 8);
+  charmask |= charmask << 16;
+#if 0xffffffffU < ULONG_MAX
+  magic_bits |= magic_bits << 32;
+  charmask |= charmask << 32;
+  if (8 < sizeof longword)
+    for (i = 64; i < sizeof longword * 8; i *= 2)
+      {
+       magic_bits |= magic_bits << i;
+       charmask |= charmask << i;
+      }
+#endif
+  magic_bits = (ULONG_MAX >> 1) & (magic_bits | 1);
+
+  /* Instead of the traditional loop which tests each character,
+     we will test a longword at a time.  The tricky part is testing
+     if *any of the four* bytes in the longword in question are zero.  */
+  while (n >= sizeof longword)
+    {
+      /* We tentatively exit the loop if adding MAGIC_BITS to
+        LONGWORD fails to change any of the hole bits of LONGWORD.
+
+        1) Is this safe?  Will it catch all the zero bytes?
+        Suppose there is a byte with all zeros.  Any carry bits
+        propagating from its left will fall into the hole at its
+        least significant bit and stop.  Since there will be no
+        carry from its most significant bit, the LSB of the
+        byte to the left will be unchanged, and the zero will be
+        detected.
+
+        2) Is this worthwhile?  Will it ignore everything except
+        zero bytes?  Suppose every byte of LONGWORD has a bit set
+        somewhere.  There will be a carry into bit 8.  If bit 8
+        is set, this will carry into bit 16.  If bit 8 is clear,
+        one of bits 9-15 must be set, so there will be a carry
+        into bit 16.  Similarly, there will be a carry into bit
+        24.  If one of bits 24-30 is set, there will be a carry
+        into bit 31, so all of the hole bits will be changed.
+
+        The one misfire occurs when bits 24-30 are clear and bit
+        31 is set; in this case, the hole at bit 31 is not
+        changed.  If we had access to the processor carry flag,
+        we could close this loophole by putting the fourth hole
+        at bit 32!
+
+        So it ignores everything except 128's, when they're aligned
+        properly.
+
+        3) But wait!  Aren't we looking for C, not zero?
+        Good point.  So what we do is XOR LONGWORD with a longword,
+        each of whose bytes is C.  This turns each byte that is C
+        into a zero.  */
+
+      longword = *--longword_ptr ^ charmask;
+
+      /* Add MAGIC_BITS to LONGWORD.  */
+      if ((((longword + magic_bits)
+
+           /* Set those bits that were unchanged by the addition.  */
+           ^ ~longword)
+
+          /* Look at only the hole bits.  If any of the hole bits
+             are unchanged, most likely one of the bytes was a
+             zero.  */
+          & ~magic_bits) != 0)
+       {
+         /* Which of the bytes was C?  If none of them were, it was
+            a misfire; continue the search.  */
+
+         const unsigned char *cp = (const unsigned char *) longword_ptr;
+
+         if (8 < sizeof longword)
+           for (i = sizeof longword - 1; 8 <= i; i--)
+             if (cp[i] == c)
+               return (void *) &cp[i];
+         if (7 < sizeof longword && cp[7] == c)
+           return (void *) &cp[7];
+         if (6 < sizeof longword && cp[6] == c)
+           return (void *) &cp[6];
+         if (5 < sizeof longword && cp[5] == c)
+           return (void *) &cp[5];
+         if (4 < sizeof longword && cp[4] == c)
+           return (void *) &cp[4];
+         if (cp[3] == c)
+           return (void *) &cp[3];
+         if (cp[2] == c)
+           return (void *) &cp[2];
+         if (cp[1] == c)
+           return (void *) &cp[1];
+         if (cp[0] == c)
+           return (void *) cp;
+       }
+
+      n -= sizeof longword;
+    }
+
+  char_ptr = (const unsigned char *) longword_ptr;
+
+  while (n-- > 0)
+    {
+      if (*--char_ptr == c)
+       return (void *) char_ptr;
+    }
+
+  return 0;
+}
+#ifdef weak_alias
+weak_alias (__memrchr, memrchr)
+#endif
+#endif // __APPLE__
 #endif
diff -ruN apt-0.9.8.2.orig/apt-pkg/deb/dpkgpm.cc 
apt-0.9.8.2/apt-pkg/deb/dpkgpm.cc
--- apt-0.9.8.2.orig/apt-pkg/deb/dpkgpm.cc      2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/apt-pkg/deb/dpkgpm.cc   2013-06-17 15:28:30.000000000 -0600
@@ -41,7 +41,13 @@
 #include <termios.h>
 #include <unistd.h>
 #include <sys/ioctl.h>
-#include <pty.h>
+#ifndef __APPLE__
+  #include <pty.h>
+#else
+  #define sighandler_t sig_t
+  #include <util.h>
+#endif
+
 
 #include <apti18n.h>
                                                                        /*}}}*/
diff -ruN apt-0.9.8.2.orig/buildlib/environment.mak.in 
apt-0.9.8.2/buildlib/environment.mak.in
--- apt-0.9.8.2.orig/buildlib/environment.mak.in        2013-06-06 
11:25:59.000000000 -0600
+++ apt-0.9.8.2/buildlib/environment.mak.in     2013-06-18 11:57:16.000000000 
-0600
@@ -13,7 +13,7 @@
 NUM_PROCS = @NUM_PROCS@
 
 # Linker stuff
-PICFLAGS+= -fPIC -DPIC
+PICFLAGS+= -fno-common -fPIC -DPIC
 LFLAGS+= @LDFLAGS@
 LEFLAGS+= 
 SOCKETLIBS:= @SOCKETLIBS@
@@ -61,11 +61,13 @@
 
 # Shared library things
 HOST_OS = @host_os@
-ifneq ($(words $(filter gnu% linux-gnu% kfreebsd-gnu% %-gnu,$(HOST_OS))),0)
-   SONAME_MAGIC=-Wl,-soname -Wl,
-   LFLAGS_SO=
-else
-   # Do not know how to create shared libraries here.
-   ONLYSTATICLIBS = yes
-endif
+#ifneq ($(words $(filter gnu% linux-gnu% kfreebsd-gnu% %-gnu,$(HOST_OS))),0)
+#   SONAME_MAGIC=-Wl,-soname -Wl,
+#   LFLAGS_SO=
+#else
+#   # Do not know how to create shared libraries here.
+#   ONLYSTATICLIBS = yes
+#endif
+SONAME_MAGIC=-install_name @FINKPREFIX@/lib/
+LFLAGS_SO=-dynamiclib
        
diff -ruN apt-0.9.8.2.orig/buildlib/library.mak apt-0.9.8.2/buildlib/library.mak
--- apt-0.9.8.2.orig/buildlib/library.mak       2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/buildlib/library.mak    2013-06-17 21:44:28.000000000 -0600
@@ -16,11 +16,11 @@
 # See defaults.mak for information about LOCAL
 
 # Some local definitions
-LOCAL := lib$(LIBRARY).so.$(MAJOR).$(MINOR)
+LOCAL := lib$(LIBRARY)$(LIBEXT).$(MAJOR).$(MINOR).dylib
 $(LOCAL)-OBJS := $(addprefix $(OBJ)/,$(addsuffix .opic,$(notdir $(basename 
$(SOURCE)))))
 $(LOCAL)-DEP := $(addprefix $(DEP)/,$(addsuffix .opic.d,$(notdir $(basename 
$(SOURCE)))))
 $(LOCAL)-HEADERS := $(addprefix $(INCLUDE)/,$(HEADERS))
-$(LOCAL)-SONAME := lib$(LIBRARY).so.$(MAJOR)
+$(LOCAL)-SONAME := lib$(LIBRARY)$(LIBEXT).$(MAJOR).dylib
 $(LOCAL)-SLIBS := $(SLIBS)
 $(LOCAL)-LIBRARY := $(LIBRARY)
 
@@ -29,7 +29,7 @@
 
 # Install the command hooks
 headers: $($(LOCAL)-HEADERS)
-library: $(LIB)/lib$(LIBRARY).so $(LIB)/lib$(LIBRARY).so.$(MAJOR)
+library: $(LIB)/lib$(LIBRARY).dylib 
$(LIB)/lib$(LIBRARY)$(LIBEXT).$(MAJOR).dylib
 clean: clean/$(LOCAL)
 veryclean: veryclean/$(LOCAL)
 
@@ -41,21 +41,23 @@
 clean/$(LOCAL):
        -rm -f $($(@F)-OBJS) $($(@F)-DEP)
 veryclean/$(LOCAL): clean/$(LOCAL)
-       -rm -f $($(@F)-HEADERS) $(LIB)/lib$($(@F)-LIBRARY)*.so*
+       -rm -f $($(@F)-HEADERS) $(LIB)/lib$($(@F)-LIBRARY)*.dylib
 
 # Build rules for the two symlinks
-.PHONY: $(LIB)/lib$(LIBRARY).so.$(MAJOR) $(LIB)/lib$(LIBRARY).so
-$(LIB)/lib$(LIBRARY).so.$(MAJOR): $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR)
+.PHONY: $(LIB)/lib$(LIBRARY)$(LIBEXT).$(MAJOR).dylib $(LIB)/lib$(LIBRARY).dylib
+$(LIB)/lib$(LIBRARY)$(LIBEXT).$(MAJOR).dylib: 
$(LIB)/lib$(LIBRARY)$(LIBEXT).$(MAJOR).$(MINOR).dylib
        ln -sf $(<F) $@
-$(LIB)/lib$(LIBRARY).so: $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR)
+$(LIB)/lib$(LIBRARY).dylib: 
$(LIB)/lib$(LIBRARY)$(LIBEXT).$(MAJOR).$(MINOR).dylib
        ln -sf $(<F) $@
 
 # The binary build rule
-$(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR): $($(LOCAL)-HEADERS) $($(LOCAL)-OBJS)
-       -rm -f $(LIB)/lib$($(@F)-LIBRARY)*.so* 2> /dev/null
+$(LIB)/lib$(LIBRARY)$(LIBEXT).$(MAJOR).$(MINOR).dylib: $($(LOCAL)-HEADERS) 
$($(LOCAL)-OBJS)
+       -rm -f $(LIB)/lib$($(@F)-LIBRARY)*.dylib 2> /dev/null
        echo Building shared library $@
        $(CXX) $(CXXFLAGS) $(LDFLAGS) $(PICFLAGS) $(LFLAGS) $(LFLAGS_SO)\
-          -o $@ $(SONAME_MAGIC)$($(@F)-SONAME) -shared \
+          -o $@ $(SONAME_MAGIC)$($(@F)-SONAME) \
+          -compatibility_version $(MAJOR).$(MINOR) \
+          -current_version $(MAJOR).$(MINOR) \
           $(filter %.opic,$^) \
           $($(@F)-SLIBS) 
 
diff -ruN apt-0.9.8.2.orig/cmdline/apt-get.cc apt-0.9.8.2/cmdline/apt-get.cc
--- apt-0.9.8.2.orig/cmdline/apt-get.cc 2013-06-06 11:25:59.000000000 -0600
+++ apt-0.9.8.2/cmdline/apt-get.cc      2013-06-17 16:03:14.000000000 -0600
@@ -59,7 +59,11 @@
 #include <termios.h>
 #include <sys/ioctl.h>
 #include <sys/stat.h>
-#include <sys/statfs.h>
+#ifndef __APPLE__
+ #include <sys/statfs.h>
+#else
+ #define statfs statvfs
+#endif
 #include <sys/statvfs.h>
 #include <signal.h>
 #include <unistd.h>
diff -ruN apt-0.9.8.2.orig/doc/manpage-style.xsl 
apt-0.9.8.2/doc/manpage-style.xsl
--- apt-0.9.8.2.orig/doc/manpage-style.xsl      2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/doc/manpage-style.xsl   2013-06-17 16:24:16.000000000 -0600
@@ -2,7 +2,7 @@
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
  version="1.0">
 
-<xsl:import 
href="/usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl" />
+<xsl:import href="@FINKPREFIX@/share/xml/xsl/docbook-xsl/manpages/docbook.xsl" 
/>
 
 <xsl:param name="man.output.encoding" select="'UTF-8'" />
 <!-- LANGUAGE -->
diff -ruN apt-0.9.8.2.orig/ftparchive/contents.cc 
apt-0.9.8.2/ftparchive/contents.cc
--- apt-0.9.8.2.orig/ftparchive/contents.cc     2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/ftparchive/contents.cc  2013-06-17 22:24:55.000000000 -0600
@@ -42,7 +42,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <malloc.h>
+#ifndef __APPLE__
+ #include <malloc.h>
+#endif
 
 #include "contents.h"
 
diff -ruN apt-0.9.8.2.orig/test/libapt/run-tests 
apt-0.9.8.2/test/libapt/run-tests
--- apt-0.9.8.2.orig/test/libapt/run-tests      2013-06-06 11:25:59.000000000 
-0600
+++ apt-0.9.8.2/test/libapt/run-tests   2013-06-18 10:42:53.000000000 -0600
@@ -1,26 +1,18 @@
 #!/bin/sh
 set -e
 
-DIR=$(readlink -f $(dirname $0))
+DIR=$(pwd)
 echo "Compiling the tests …"
 (cd $DIR && make)
 echo "Running all testcases …"
-LDPATH="$DIR/../../build/bin"
+LDPATH="$DIR/../../bin"
 EXT="_libapt_test"
 EXIT_CODE=0
 
-# detect if output is on a terminal (colorful) or better not
-if expr match "$(readlink -f /proc/$$/fd/1)" '/dev/pts/[0-9]\+' > /dev/null; 
then
        COLHIGH='\033[1;35m'
        COLRESET='\033[0m'
        TESTOKAY='\033[1;32mOKAY\033[0m'
        TESTFAIL='\033[1;31mFAILED\033[0m'
-else
-       COLHIGH=''
-       COLRESET=''
-       TESTOKAY='OK'
-       TESTFAIL='###FAILED###'
-fi
 
 for testapp in $(ls ${LDPATH}/*$EXT)
 do
@@ -30,7 +22,7 @@
 
        if [ $name = "GetListOfFilesInDir${EXT}" ]; then
                # TODO: very-low: move env creation to the actual test-app
-               tmppath=$(mktemp -d)
+               tmppath=$(/usr/bin/mktemp -d -t tmp)
                touch "${tmppath}/anormalfile" \
                        "${tmppath}/01yet-anothernormalfile" \
                        "${tmppath}/anormalapt.conf" \
@@ -61,7 +53,8 @@
                ln -s "${tmppath}/anormalfile" "${tmppath}/linkedfile.list"
                ln -s "${tmppath}/non-existing-file" 
"${tmppath}/brokenlink.list"
        elif [ $name = "getLanguages${EXT}" ]; then
-               tmppath=$(mktemp -d)
+               continue
+               tmppath=$(/usr/bin/mktemp -d -t tmp)
                touch 
"${tmppath}/ftp.de.debian.org_debian_dists_sid_main_i18n_Translation-tr" \
                        
"${tmppath}/ftp.de.debian.org_debian_dists_sid_main_i18n_Translation-pt" \
                        
"${tmppath}/ftp.de.debian.org_debian_dists_sid_main_i18n_Translation-se~" \
@@ -69,14 +62,14 @@
                        
"${tmppath}/ftp.de.debian.org_debian_dists_sid_main_i18n_Translation-ast_DE" \
                        
"${tmppath}/ftp.de.debian.org_debian_dists_sid_main_i18n_Translation-tlh%5fDE"
        elif [ $name = "HashSums${EXT}" ]; then
-               TMP="$(readlink -f "./${0}")"
+               TMP="$(pwd)/${0}"
                echo -n "Testing with ${NAME} "
-               LD_LIBRARY_PATH=${LDPATH} ${testapp} $TMP $(md5sum $TMP | cut 
-d' ' -f 1) $(sha1sum $TMP | cut -d' ' -f 1) $(sha256sum $TMP | cut -d' ' -f 1) 
$(sha512sum $TMP | cut -d' ' -f 1) && echo "$TESTOKAY" || echo "$TESTFAIL"
+               DYLD_LIBRARY_PATH=${LDPATH} ${testapp} $TMP $(md5sum $TMP | cut 
-d' ' -f 1) $(gsha1sum $TMP | cut -d' ' -f 1) $(gsha256sum $TMP | cut -d' ' -f 
1) $(gsha512sum $TMP | cut -d' ' -f 1) && echo "$TESTOKAY" || echo "$TESTFAIL"
                continue
        elif [ $name = "CompareVersion${EXT}" ]; then
                tmppath="${DIR}/versions.lst"
        elif [ $name = "CdromFindPackages${EXT}" ]; then
-               tmppath=$(mktemp -d)
+               tmppath=$(/usr/bin/mktemp -d -t tmp)
                mkdir -p "${tmppath}/.disk" "${tmppath}/pool" \
                        "${tmppath}/dists/stable/main/binary-i386" \
                        "${tmppath}/dists/stable/main/source" \
@@ -107,7 +100,7 @@
        fi
 
        echo -n "Testing with ${NAME} "
-       if LD_LIBRARY_PATH=${LDPATH} ${testapp} ${tmppath} ; then
+       if DYLD_LIBRARY_PATH=${LDPATH} ${testapp} ${tmppath} ; then
                echo "$TESTOKAY"
        else
                echo "$TESTFAIL"

--- NEW FILE: apt.info ---
Package: apt
Version: 0.9.8.2
Revision: 1.1
GCC: 4.0

Source: mirror:debian:pool/main/a/%n/%n_%v.tar.gz
Source-MD5: 956bb906224a5662111d353ab11a0347
SourceDirectory: %n-%v

BuildDepends: <<
  fink (>= 0.24.12),
  dpkg-dev (>= 1.15.8),
  db60-aes,
  libgettext8-dev,
  libcurl4 (>= 7.19.4-1),
  bzip2-dev
<<

Depends: <<
  fink-archive-keyring,
  gnupg2,
  lib%N-pkg4.12-shlibs (= %v-%r)
<<

Suggests: <<
  %N-doc,
  aptitude | synaptic | wajig,
  dpkg-dev,
  apt-py,
  xv
<<

PatchFile: %n.patch
PatchFile-MD5: bc5df423d75d41ef303c8ecbba725dbf
PatchScript: <<
# darwin specific changes
sed -e 's|@FINKPREFIX@|%p|g' < %{PatchFile} | patch -p1

echo "x86_64\tx86_64" >> %b/buildlib/archtable

# Remove po4a and make sure it can't be found if it's installed
# this is to keep fink policy happy since it has to build the same
# everytime on all systems
perl -pi -e 's,po4a,notpo4a,g' configure

# fix paths
for i in %b/po/*.po %b/po/*.pot %b/doc/po/*.po %b/doc/po/*.pot %b/doc/*.[13578] 
%b/doc/*.ent %b/doc/*.sgml %b/doc/*.xmli 
%b/doc/examples/apt-https-method-example.conf %b/doc/examples/configure-index 
%b/debian/apt.logrotate %b/apt-pkg/deb/debsystem.cc %b/apt-pkg/deb/dpkgpm.cc 
%b/apt-pkg/init.cc %b/apt-pkg/acquire-item.cc %b/apt-pkg/aptconfiguration.cc 
%b/apt-pkg/contrib/gpgv.cc %b/cmdline/apt-get.cc %b/cmdline/apt-key; do \
  perl -pi -e 's,/usr/,%p/,g' $i; \
  perl -pi -e 's,/var/,%p/var/,g' $i; \
  perl -pi -e 's,/etc/,%p/etc/,g' $i; \
  perl -pi -e 's,amd64,x86_64,g' $i; \
done 
perl -pi -e 's;"Dir","/";"Dir","%p/";g' %b/apt-pkg/init.cc

# Move GNU mktemp to BSD mktemp
perl -pi -e 's,mktemp,/usr/bin/mktemp -t tmp,g' %b/cmdline/apt-key

# fix for gpg2
perl -pi -e 's,GPG_CMD="gpg,GPG_CMD="gpg2,g' %b/cmdline/apt-key
perl -pi -e 's,which gpg,which gpg2,g' %b/cmdline/apt-key
perl -pi -e 's,debian-,fink-,g' %b/cmdline/apt-key

# Use db6
perl -pi -e 's,db.h,db6/db.h,g' %b/ftparchive/cachedb.h

# fix case insensitive FS
perl -pi -e 's,makefile:,makefile.wrap:,g' configure
perl -pi -e 's,make -s dirs,make -f makefile.wrap -s dirs,g' configure

# Fix missing links in tarball
rm -rf %b/buildlib/config.guess %b/buildlib/config.sub
ln -s %p/lib/fink/update/config.guess %b/buildlib/config.guess
ln -s %p/lib/fink/update/config.sub %b/buildlib/config.sub
<<

NoSetCPPFLAGS: true
NoSetLDFLAGS: true
SetLDFLAGS: -L%b/bin -L%p/lib -lbz2 -liconv -lz
SetCXXFLAGS: -O2 -I%b/include -I%p/include -DEMULATE_MMAP -D__USE_MISC 
-fconstant-cfstrings -DHAVE_SOCKLEN_T=1 -Wno-mismatched-tags 
-Wno-unused-private-field -Wno-sizeof-pointer-memaccess -Wno-uninitialized 
-Wno-non-literal-null-conversion -Wno-overloaded-virtual
ConfigureParams: <<
  --with-libiconv-prefix=%p \
  --with-libintl-prefix=%p
<<
CompileScript: <<
  ./configure %c
  make -f makefile.wrap binary
  cd doc && make -f makefile doc
<<
InfoTest: <<
  TestDepends: coreutils
  TestScript: <<
    make test || exit 2
  <<
<<
InstallScript: <<
mkdir -p %b/examples/%N-utils/examples
cp %b/doc/examples/%N-ftparchive.conf %b/examples/%N-utils/examples/

mkdir -p %b/examples/%N/examples
cp %b/doc/examples/%N.conf %b/examples/%N/examples/
cp %b/doc/examples/%N-https-method-example.conf %b/examples/%N/examples/
cp %b/doc/examples/configure-index %b/examples/%N/examples/
cp %b/doc/examples/sources.list %b/examples/%N/examples/

install -d -m755 %i/lib/apt/methods
install -d -m755 %i/lib/apt/solvers
install -d -m755 %i/bin
install -d -m755 %i/lib/apt/methods
install -d -m755 %i/lib/apt/solvers
install -d -m755 %i/lib/dpkg/methods/apt
install -d -m755 %i/include/apt-pkg
install -d -m755 %i/etc/apt
install -d -m755 %i/etc/apt/apt.conf.d
install -d -m755 %i/etc/apt/preferences.d
install -d -m755 %i/etc/apt/sources.list.d
install -d -m755 %i/etc/apt/trusted.gpg.d
install -d -m755 %i/etc/cron.daily
install -d -m755 %i/etc/logrotate.d
install -d -m755 %i/var/cache/apt/archives/partial
install -d -m755 %i/var/lib/apt/lists/partial
install -d -m755 %i/var/lib/apt/mirrors/partial
install -d -m755 %i/var/lib/apt/periodic
install -d -m755 %i/var/log/apt
install -d -m755 %i/share/bug/apt
install -d -m755 %i/share/man/man1
install -d -m755 %i/share/man/man5
install -d -m755 %i/share/man/man8

install -m755 bin/apt-* %i/bin/
mv %i/bin/apt-dump-solver %i/lib/apt/solvers/dump
mv %i/bin/apt-internal-solver %i/lib/apt/solvers/apt
install -m755 bin/methods/* %i/lib/apt/methods/
cp bin/methods/https %i/lib/apt/methods
cp scripts/dselect/* %i/lib/dpkg/methods/apt/

cp debian/apt.conf.autoremove %i/etc/apt/apt.conf.d/01autoremove
cp debian/apt.bug-script %i/share/bug/apt/script
cp debian/apt.cron.daily %i/etc/cron.daily/apt
cp debian/apt.logrotate %i/etc/logrotate.d/apt

install -m644 bin/libapt-pkg.4.12.0.dylib %i/lib/
cd %i/lib/ && ln -s libapt-pkg.4.12.0.dylib libapt-pkg.4.12.dylib && ln -s 
libapt-pkg.4.12.0.dylib libapt-pkg.dylib
install -m 644 bin/libapt-inst.1.5.0.dylib %i/lib/
cd %i/lib/ && ln -s libapt-inst.1.5.0.dylib libapt-inst.1.5.dylib && ln -s 
libapt-inst.1.5.0.dylib libapt-inst.dylib
 
cp include/apt-pkg/*.h %i/include/apt-pkg/

mkdir -p %b/locale/lib%N-pkg
cd %b/locale; \
for i in */LC_MESSAGES/lib%N-pkg*.mo; do \
  mkdir -p dirname %b/locale/lib%N-pkg/$i; \
  mv $i %b/locale/lib%N-pkg/$i; \
done

mkdir -p %b/locale/lib%N-inst
cd %b/locale; \
for i in */LC_MESSAGES/lib%N-inst*.mo; do \
  mkdir -p dirname %b/locale/lib%N-inst/$i; \
  mv $i %b/locale/lib%N-inst/$i; \
done

mkdir -p %b/locale/%N-utils
cd %b/locale; \
for i in */LC_MESSAGES/%N-utils*.mo; do \
  mkdir -p dirname %b/locale/%N-utils/$i; \
  mv $i %b/locale/%N-utils/$i; \
done

cp -R locale %i/share/

cp doc/*.1 %i/share/man/man1/
cp doc/*.5 %i/share/man/man5/
cp doc/*.8 %i/share/man/man8/
<<

PreInstScript: <<
set -e

# dpkg does this for us while we are upgrading..
#if [ "$1" = "upgrade" -a -L %p/var/state/apt -a -e %p/var/lib/apt -a ! -L 
%p/var/state/apt ] && dpkg --compare-versions "$2" ">=" "0.4.10"; then
#  rm %p/var/state/apt
#fi

if [ "$1" = "upgrade" -o "$1" = "install" -a "$2" != "" ]; then
  if [ ! -e %p/var/lib/apt -a -e %p/var/state/apt ]; then
    # upgrading from %p/var/state/apt using apt.
    # it's probably running now so we want to ensure %p/var/state/apt
    # is still valid afterwards. and since we're upgrading

    if [ -x /usr/bin/perl -a -d %p/var/state/apt -a ! -L %p/var/state/apt ] &&
      perl -e 'exit 1 if ((stat("%p/var/lib"))[0] != 
(stat("%p/var/state/apt"))[0])'
    then
      # same fs, we can mv it
      mv %p/var/state/apt %p/var/lib/apt
      ln -s ../lib/apt %p/var/state/apt
      # note that this symlink (/var/state/apt) will be removed when
      # dpkg finishes unpacking the apt we're about to install; this is okay
    else
      # scary, let's just symlink it and hope
      ln -s %p/var/state/apt %p/var/lib/apt
    fi
  fi
  touch %p/var/lib/apt/lists/partial/.delete-me-later || true
fi
<<
PostInstScript: <<
set -e

# summary of how this script can be called:
#        * <postinst> `configure' <most-recently-configured-version>
#        * <old-postinst> `abort-upgrade' <new version>
#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
#          <new-version>
#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
#          <failed-install-package> <version> `removing'
#          <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package

case "$1" in
    configure)
        SECRING='%p/etc/apt/secring.gpg'
        # test if secring is an empty normal file
        if test -f $SECRING -a ! -s $SECRING; then
                rm -f $SECRING
        fi
        apt-key update

        # ensure tighter permissons on the logs, see LP: #975199
        if dpkg --compare-versions "$2" lt-nl 0.9.7.7; then
            # ensure permissions are right
            chmod -f 0640 %p/var/log/apt/term.log* || true
        fi

    ;;

    abort-upgrade|abort-remove|abort-deconfigure)

    ;;

    *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 1
    ;;
esac
<<
PostRmScript: <<
set -e

case "$1" in
       remove)
                ;;
       purge)
                rm -rf %p/var/cache/apt
                rm -rf %p/var/lib/apt
esac
<<

DocFiles: COPYING COPYING.GPL debian/changelog examples/%N/examples debian/NEWS
ConfFiles: <<
  %p/etc/apt/apt.conf.d/01autoremove
  %p/etc/cron.daily/apt
  %p/etc/logrotate.d/apt
<<
Description: Advanced front-end for dpkg
DescDetail: <<
This package provides commandline tools for searching and
managing as well as querying information about packages
as a low-level access to all features of the libapt-pkg library.
.
These include:
 * apt-get for retrieval of packages and information about them
   from authenticated sources and for installation, upgrade and
   removal of packages together with their dependencies
 * apt-cache for querying available information about installed
   as well as installable packages
 * apt-cdrom to use removable media as a source for packages
 * apt-config as an interface to the configuration settings
 * apt-key as an interface to manage authentication keys
<<

SplitOff: <<
  Package: lib%N-pkg4.12-shlibs
  Depends: <<
    bzip2-shlibs
  <<
  Files: <<
    lib/libapt-pkg.*.dylib
    share/locale/libapt-pkg:share/locale
  <<
  Shlibs: <<
    %p/lib/libapt-pkg.4.12.dylib 4.12.0 libapt-pkg4.12-shlibs (>= 0.9.8.2-1)
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog
  Description: Apt runtime library
  DescDetail: <<
This library provides the common functionality for searching and
managing packages as well as information about packages.
Higher-level package managers can depend upon this library.
.
This includes:
 * retrieval of information about packages from multiple sources
 * retrieval of packages and all dependent packages
   needed to satisfy a request either through an internal
   solver or by interfacing with an external one
 * authenticating the sources and validating the retrieved data
 * installation and removal of packages in the system
 * providing different transports to retrieve data over cdrom, ftp,
   http, rsh as well as an interface to add more transports like
   https (apt-transport-https) and debtorrent (apt-transport-debtorrent).
  <<
<< 

SplitOff2: <<
  Package: lib%N-inst1.5-shlibs
  Depends: <<
    lib%N-pkg4.12-shlibs (= %v-%r)
  <<
  Files: <<
    lib/libapt-inst.*.dylib
    share/locale/libapt-inst:share/locale
  <<
  Shlibs: <<
    %p/lib/libapt-inst.1.5.dylib 1.5.0 libapt-inst1.5-shlibs (>= 0.9.8.2-1)
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog
  Description: Deb package format runtime library
  DescDetail: <<
This library provides methods to query and extract information
from deb packages. This includes the control data and the package
file content.
  <<
<<

SplitOff3: <<
  Package: %N-doc
  Files: <<
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog 
doc/external-dependency-solver-protocol.txt README.MultiArch 
README.progress-reporting doc/guide.sgml doc/offline.sgml
  Description: Documentation for APT
  DescDetail: <<
This package contains the user guide and offline guide for various
APT tools which are provided in a html and a text-only version.
  <<
<<

SplitOff4: <<
  Package: lib%N-pkg-dev
  BuildDependsOnly: true
  Depends: <<
    lib%N-inst1.5-shlibs (= %v-%r),
    lib%N-pkg4.12-shlibs (= %v-%r)
  <<
  Files: <<
    include
    lib/libapt-inst.dylib
    lib/libapt-pkg.dylib
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog
  Description: Devel files for APT's libapt-pkg and libapt-inst
  DescDetail: <<
This package contains the header files and libraries for
developing with APT's libapt-pkg Debian package manipulation
library and the libapt-inst deb/tar/ar library.
  <<
<<

SplitOff5: <<
  Package: lib%N-pkg-doc
  Files: <<
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog doc/libapt-pkg2_to_3.txt 
doc/style.txt build/doc/doxygen/html doc/design.sgml doc/dpkg-tech.sgml 
doc/files.sgml doc/method.sgml
  Description: Documentation for APT development
  DescDetail: <<
This package contains documentation for development of the APT
Debian package manipulation program and its libraries.
.
This includes the source code documentation generated by doxygen
in html format.
  <<
<<

SplitOff6: <<
  Package: %N-transport-https
  Depends: <<
    lib%N-pkg4.12-shlibs (= %v-%r),
    libcurl4-shlibs
  <<
  Files: <<
    lib/apt/methods/https
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog 
debian/apt-transport-https.README
  Description: Https download transport for APT
  DescDetail: <<
This package enables the usage of 'deb https://foo distro main' lines
in the %p/etc/apt/sources.list so that all package managers using the
libapt-pkg library can access metadata and packages available in sources
accessible over https (Hypertext Transfer Protocol Secure).
.
This transport supports server as well as client authentication
with certificates.
  <<
<<

SplitOff7: <<
  Package: %N-utils
  Depends: <<
    lib%N-inst1.5-shlibs (= %v-%r),
    lib%N-pkg4.12-shlibs (= %v-%r),
    db60-aes-shlibs
  <<
  Suggests: <<
    xz
  <<
  Files: <<
    bin/apt-extracttemplates
    bin/apt-ftparchive
    bin/apt-sortpkgs
    lib/apt/solvers
    share/man/man1
    share/locale/%n:share/locale
  <<
  DocFiles: COPYING COPYING.GPL debian/changelog examples/%N-utils/examples
  Description: APT related utility programs
  DescDetail: <<
This package contains some less used commandline utilities related
to package managment with APT.
.
 * apt-extracttemplates is used by debconf to prompt for configuration
   questions before installation.
 * apt-ftparchive is used to create Packages and other index files
   needed to publish an archive of debian packages
 * apt-sortpkgs is a Packages/Sources file normalizer.
  <<
<<

License: GPL
Maintainer: Fink Core Group <fink-c...@lists.sourceforge.net>
Homepage: http://packages.qa.debian.org/a/apt.html

--- NEW FILE: fink-archive-keyring.info ---
Package: fink-archive-keyring
Version: 2012.4
Revision: 1.1

Source: 
mirror:debian:pool/main/d/debian-archive-keyring/debian-archive-keyring_%v.tar.gz
Source-MD5: 51f36e24f778c4fdfbd1da734c798799
SourceDirectory: debian-archive-keyring-%v

BuildDepends: <<
  jetring
<<

Depends: <<
  gnupg2
<<

PatchScript: <<
  perl -pi -e 's,/usr,,' Makefile
  perl -pi -e 's,gpg \$\{GPG_OPTIONS\},gpg2 \$\{GPG_OPTIONS\},' Makefile
  perl -pi -e 's,debian-,fink-,g' Makefile

  mv keyrings/debian-archive-keyring.gpg.asc 
keyrings/fink-archive-keyring.gpg.asc
  mv keyrings/debian-archive-removed-keys.gpg.asc 
keyrings/fink-archive-removed-keys.gpg.asc
<<

CompileScript: true

InstallScript: <<
  make install DESTDIR=%i
<<

PostInstScript: <<
set -e

if [ "$1" = 'configure' -a -n "$2" ]; then
        # remove keys from the trusted.gpg file as they are now shipped in 
fragment files in trusted.gpg.d
        if dpkg --compare-versions "$2" 'lt' "2012.1" && which gpg > /dev/null 
&& which apt-key > /dev/null; then
                TRUSTEDFILE='%p/etc/apt/trusted.gpg'
                eval $(apt-config shell TRUSTEDFILE Apt::GPGV::TrustedKeyring)
                eval $(apt-config shell TRUSTEDFILE Dir::Etc::Trusted/f)
                if [ -e "$TRUSTEDFILE" ]; then
                        for KEY in F42584E6 55BE302B 6D849617 B98321F9 473041FA 
46925553 65FFB764; do
                                apt-key --keyring "$TRUSTEDFILE" del $KEY > 
/dev/null 2>&1 || :
                        done
                fi
        fi
fi
<<

PostRmScript: <<
set -e

if [ "$1" = "purge" ]
then
  # Remove the symlink
  rm -f %p/etc/apt/trusted.gpg.d/fink-archive-keyring.gpg
fi
<<

DocFiles: README debian/changelog debian/copyright

Description: GnuPG archive keys of the Fink archive
DescDetail: <<
The Fink project digitally signs its Release files. This package
contains the archive keys used for that.
<<

License: GPL
Maintainer: Fink Core Group <fink-c...@lists.sourceforge.net>
Homepage: http://fink.sourceforge.net/


------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Fink-commits mailing list
Fink-commits@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.cvs

Reply via email to