diff options
author | sbd <sbd@pkgsrc.org> | 2012-01-28 01:52:48 +0000 |
---|---|---|
committer | sbd <sbd@pkgsrc.org> | 2012-01-28 01:52:48 +0000 |
commit | 82d02a0f072dc420160792b3377c409d788beacc (patch) | |
tree | 17233ecce1ae47df80a393e8e7bbe24140988ace /archivers | |
parent | f10b7a7b4bb9f42228da47fd061b7ec530dc9d11 (diff) | |
download | pkgsrc-82d02a0f072dc420160792b3377c409d788beacc.tar.gz |
Add a workaround for a problem with gcc transparent_union attribute that
causes the wait() prototype to be wrong.
Also linux's struct stat dosn't have st_flags.
Diffstat (limited to 'archivers')
-rw-r--r-- | archivers/archangel/distinfo | 4 | ||||
-rw-r--r-- | archivers/archangel/patches/patch-ad | 30 |
2 files changed, 23 insertions, 11 deletions
diff --git a/archivers/archangel/distinfo b/archivers/archangel/distinfo index 1e09344a279..5bf1b9a4290 100644 --- a/archivers/archangel/distinfo +++ b/archivers/archangel/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.8 2006/10/01 21:00:20 rillig Exp $ +$NetBSD: distinfo,v 1.9 2012/01/28 01:52:48 sbd Exp $ SHA1 (archangel-20050730.tar.gz) = 966948ebac01a71732e93afd72fe5c4a21ba1ed8 RMD160 (archangel-20050730.tar.gz) = 16b5f1d7dae8d45b22d0e371a90e0673c5e58caa @@ -6,5 +6,5 @@ Size (archangel-20050730.tar.gz) = 673307 bytes SHA1 (patch-aa) = cc5369ee02b35a0f4c21bed18802a3919f89bc63 SHA1 (patch-ab) = 580fac24f5c2ee698ea58dce3b75bc4301db75bf SHA1 (patch-ac) = f7cd2a68ae6349e9ce2570ee269c70d7dd565c8f -SHA1 (patch-ad) = 576ba595b35fba2a0eb2ef840cf544b3d2a88856 +SHA1 (patch-ad) = 7d4ec3b88e2453d81c041ec37859c804b36a0090 SHA1 (patch-ae) = 21e2e651af0d828813b26cd036b7583a5dd3eebe diff --git a/archivers/archangel/patches/patch-ad b/archivers/archangel/patches/patch-ad index b13709feec2..446aa54bdd9 100644 --- a/archivers/archangel/patches/patch-ad +++ b/archivers/archangel/patches/patch-ad @@ -1,7 +1,7 @@ -$NetBSD: patch-ad,v 1.2 2006/10/01 21:00:20 rillig Exp $ +$NetBSD: patch-ad,v 1.3 2012/01/28 01:52:49 sbd Exp $ ---- aa.c.orig 2005-08-01 00:20:23.000000000 +0200 -+++ aa.c 2006-08-30 17:56:16.285256480 +0200 +--- aa.c.orig 2005-07-31 22:20:23.000000000 +0000 ++++ aa.c @@ -48,6 +48,9 @@ #include <sys/endian.h> #endif @@ -12,7 +12,19 @@ $NetBSD: patch-ad,v 1.2 2006/10/01 21:00:20 rillig Exp $ #include <ctype.h> -@@ -534,7 +537,7 @@ readfile(aa_t *aa, aaent_t *aep, char *n +@@ -221,7 +224,10 @@ asystem(aa_t *aa, const char *file, int + (void) close(fdv[0]); + (void) write(fdv[1], aa->phrase, strlen(aa->phrase)); + (void) write(fdv[1], "\n", 1); +- (void) wait(&status); ++#if !defined(__GLIBC__) || !defined(__USE_BSD) ++#define __WAIT_STATUS int * ++#endif ++ (void) wait((__WAIT_STATUS)&status); + (void) close(fdv[1]); + break; + } +@@ -534,7 +540,7 @@ readfile(aa_t *aa, aaent_t *aep, char *n #ifdef HAVE_SETXATTR /* set the external attributes */ static int @@ -21,7 +33,7 @@ $NetBSD: patch-ad,v 1.2 2006/10/01 21:00:20 rillig Exp $ { char *ap; char *eq; -@@ -549,7 +552,11 @@ ext_attr_set(aa_t *aa, aaent_t *aep, cha +@@ -549,7 +555,11 @@ ext_attr_set(aa_t *aa, aaent_t *aep, cha warn("WARNING: malformed attribute (%s) for \"%s\"", ap, name); } else { *eq = 0x0; @@ -33,7 +45,7 @@ $NetBSD: patch-ad,v 1.2 2006/10/01 21:00:20 rillig Exp $ warn("WARNING: can't setxattr (%s) for \"%s\"", ap, name); } *eq = '='; -@@ -605,7 +612,11 @@ extractfile(aa_t *aa, aaent_t *aep, char +@@ -605,7 +615,11 @@ extractfile(aa_t *aa, aaent_t *aep, char warn("extractfile: can't open \"%s\" mode %x", name, mode); return 0; } @@ -45,7 +57,7 @@ $NetBSD: patch-ad,v 1.2 2006/10/01 21:00:20 rillig Exp $ warn("extractfile: can't set access/modification time for \"%s\"", name); } if (aep->sub.xattrlen > 0) { -@@ -927,9 +938,17 @@ ext_attr_get(aa_t *aa, aaent_t *aep, cha +@@ -927,9 +941,17 @@ ext_attr_get(aa_t *aa, aaent_t *aep, cha int cc; int vc; @@ -63,11 +75,11 @@ $NetBSD: patch-ad,v 1.2 2006/10/01 21:00:20 rillig Exp $ warnx("file \"%s\" attribute \"%s\" is too long, skipping...", path, key); } else { ac += snprintf(&attrs[ac], sizeof(attrs) - ac, "%s=%s\n", key, val); -@@ -982,7 +1001,11 @@ addent(aa_t *aa, char *name, int namelen +@@ -982,7 +1004,11 @@ addent(aa_t *aa, char *name, int namelen #endif a.sub.size = sp->st_size; a.sub.blocks = sp->st_blocks; -+#if defined(__sun) ++#if defined(__sun) || defined(__linux) + a.sub.flags = 0; +#else a.sub.flags = sp->st_flags; |