summaryrefslogtreecommitdiff
path: root/archivers/archangel
diff options
context:
space:
mode:
authorminskim <minskim>2005-10-31 05:11:41 +0000
committerminskim <minskim>2005-10-31 05:11:41 +0000
commit5da9b41cbb6f2d45b00eb52af74d63d232567d80 (patch)
tree090326319cfdf4c50411fb55b5d2eaf8dfd92221 /archivers/archangel
parente24d503f07ac1b5e28659de46540f019e9424c00 (diff)
downloadpkgsrc-5da9b41cbb6f2d45b00eb52af74d63d232567d80.tar.gz
Make this package build on platforms with setxattr(2) (e.g., Linux and
Darwin).
Diffstat (limited to 'archivers/archangel')
-rw-r--r--archivers/archangel/distinfo6
-rw-r--r--archivers/archangel/patches/patch-aa13
-rw-r--r--archivers/archangel/patches/patch-ab14
-rw-r--r--archivers/archangel/patches/patch-ac14
-rw-r--r--archivers/archangel/patches/patch-ad53
5 files changed, 99 insertions, 1 deletions
diff --git a/archivers/archangel/distinfo b/archivers/archangel/distinfo
index 16a128a82a3..9b8ac317136 100644
--- a/archivers/archangel/distinfo
+++ b/archivers/archangel/distinfo
@@ -1,5 +1,9 @@
-$NetBSD: distinfo,v 1.5 2005/07/31 22:31:04 agc Exp $
+$NetBSD: distinfo,v 1.6 2005/10/31 05:11:41 minskim Exp $
SHA1 (archangel-20050730.tar.gz) = 966948ebac01a71732e93afd72fe5c4a21ba1ed8
RMD160 (archangel-20050730.tar.gz) = 16b5f1d7dae8d45b22d0e371a90e0673c5e58caa
Size (archangel-20050730.tar.gz) = 673307 bytes
+SHA1 (patch-aa) = cc5369ee02b35a0f4c21bed18802a3919f89bc63
+SHA1 (patch-ab) = 580fac24f5c2ee698ea58dce3b75bc4301db75bf
+SHA1 (patch-ac) = f7cd2a68ae6349e9ce2570ee269c70d7dd565c8f
+SHA1 (patch-ad) = 8cfb116a12ec927f00d2059d5e9b59e1e2d564c3
diff --git a/archivers/archangel/patches/patch-aa b/archivers/archangel/patches/patch-aa
new file mode 100644
index 00000000000..ec752b2bac5
--- /dev/null
+++ b/archivers/archangel/patches/patch-aa
@@ -0,0 +1,13 @@
+$NetBSD: patch-aa,v 1.1 2005/10/31 05:11:41 minskim Exp $
+
+--- configure.ac.orig 2005-07-31 15:23:51.000000000 -0700
++++ configure.ac
+@@ -26,7 +26,7 @@ AC_SUBST(AUTOHEADER)
+
+ dnl Checks for header files.
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS([sys/bitypes.h sys/param.h sys/endian.h sys/wait.h machine/endian.h])
++AC_CHECK_HEADERS([sys/bitypes.h sys/param.h sys/endian.h sys/wait.h machine/endian.h sys/xattr.h])
+ AC_CHECK_HEADERS([bzlib.h dirent.h err.h errno.h fcntl.h fnmatch.h grp.h inttypes.h locale.h pwd.h regex.h stdint.h string.h zlib.h])
+
+ dnl Checks for struct members
diff --git a/archivers/archangel/patches/patch-ab b/archivers/archangel/patches/patch-ab
new file mode 100644
index 00000000000..086c961e417
--- /dev/null
+++ b/archivers/archangel/patches/patch-ab
@@ -0,0 +1,14 @@
+$NetBSD: patch-ab,v 1.1 2005/10/31 05:11:41 minskim Exp $
+
+--- config.h.in.orig 2005-10-30 20:52:01.000000000 -0800
++++ config.h.in
+@@ -136,6 +136,9 @@
+ /* Define to 1 if you have the <sys/wait.h> header file. */
+ #undef HAVE_SYS_WAIT_H
+
++/* Define to 1 if you have the <sys/xattr.h> header file. */
++#undef HAVE_SYS_XATTR_H
++
+ /* Define to 1 if the system has the type `uint16_t'. */
+ #undef HAVE_UINT16_T
+
diff --git a/archivers/archangel/patches/patch-ac b/archivers/archangel/patches/patch-ac
new file mode 100644
index 00000000000..35b2d7e7c49
--- /dev/null
+++ b/archivers/archangel/patches/patch-ac
@@ -0,0 +1,14 @@
+$NetBSD: patch-ac,v 1.1 2005/10/31 05:11:41 minskim Exp $
+
+--- configure.orig 2005-07-31 15:23:59.000000000 -0700
++++ configure
+@@ -3157,7 +3157,8 @@ done
+
+
+
+-for ac_header in sys/bitypes.h sys/param.h sys/endian.h sys/wait.h machine/endian.h
++
++for ac_header in sys/bitypes.h sys/param.h sys/endian.h sys/wait.h machine/endian.h sys/xattr.h
+ do
+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ if eval "test \"\${$as_ac_Header+set}\" = set"; then
diff --git a/archivers/archangel/patches/patch-ad b/archivers/archangel/patches/patch-ad
new file mode 100644
index 00000000000..4717080f85b
--- /dev/null
+++ b/archivers/archangel/patches/patch-ad
@@ -0,0 +1,53 @@
+$NetBSD: patch-ad,v 1.1 2005/10/31 05:11:41 minskim Exp $
+
+--- aa.c.orig 2005-07-31 15:20:23.000000000 -0700
++++ aa.c
+@@ -48,6 +48,9 @@
+ #include <sys/endian.h>
+ #endif
+
++#ifdef HAVE_SYS_XATTR_H
++#include <sys/xattr.h>
++#endif
+
+ #include <ctype.h>
+
+@@ -534,7 +537,7 @@ readfile(aa_t *aa, aaent_t *aep, char *n
+ #ifdef HAVE_SETXATTR
+ /* set the external attributes */
+ static int
+-ext_attr_set(aa_t *aa, aaent_t *aep, char *name);
++ext_attr_set(aa_t *aa, aaent_t *aep, char *name)
+ {
+ char *ap;
+ char *eq;
+@@ -549,7 +552,11 @@ ext_attr_set(aa_t *aa, aaent_t *aep, cha
+ warn("WARNING: malformed attribute (%s) for \"%s\"", ap, name);
+ } else {
+ *eq = 0x0;
++#ifdef __APPLE__
++ if (setxattr(name, ap, eq + 1, (int)(nl - eq) - 1, 0, XATTR_CREATE) < 0) {
++#else
+ if (setxattr(name, ap, eq + 1, (int)(nl - eq) - 1, XATTR_CREATE) < 0) {
++#endif
+ warn("WARNING: can't setxattr (%s) for \"%s\"", ap, name);
+ }
+ *eq = '=';
+@@ -927,9 +934,17 @@ ext_attr_get(aa_t *aa, aaent_t *aep, cha
+ int cc;
+ int vc;
+
++#ifdef __APPLE__
++ if ((cc = listxattr(path, keys, sizeof(keys), 0)) > 0) {
++#else
+ if ((cc = listxattr(path, keys, sizeof(keys))) > 0) {
++#endif
+ for (ac = 0, key = keys ; (int)(key - keys) < cc ; key += strlen(key)) {
++#ifdef __APPLE__
++ if ((vc = getxattr(path, key, val, sizeof(val), 0, 0)) < 0) {
++#else
+ if ((vc = getxattr(path, key, val, sizeof(val))) < 0) {
++#endif
+ warnx("file \"%s\" attribute \"%s\" is too long, skipping...", path, key);
+ } else {
+ ac += snprintf(&attrs[ac], sizeof(attrs) - ac, "%s=%s\n", key, val);