Hi Jan, I'm getting a build failure at the compile stage for gzip which is caused by a naming conflict with glibc's futimens () function:
In file included from ./sys/stat.h:27, from ./fcntl.h:26, from /home/neil/gub/target/tools/src/gzip-1.3.12/lib/utimens.c:29: ///usr/include/sys/stat.h:370: error: conflicting types for ‘futimens’ /home/neil/gub/target/tools/src/gzip-1.3.12/lib/utimens.h:2: error: previous declaration of ‘futimens’ was here /home/neil/gub/target/tools/src/gzip-1.3.12/lib/utimens.c: In function ‘utimens’: /home/neil/gub/target/tools/src/gzip-1.3.12/lib/utimens.c:188: warning: passing argument 2 of ‘futimens’ from incompatible pointer type /home/neil/gub/target/tools/src/gzip-1.3.12/lib/utimens.c:188: error: too many arguments to function ‘futimens’ make[2]: *** [utimens.o] Error 1 make[2]: Leaving directory `/home/neil/gub/target/tools/build/gzip-1.3.12/lib' make[1]: *** [all] Error 2 make[1]: Leaving directory `/home/neil/gub/target/tools/build/gzip-1.3.12/lib' make: *** [all-recursive] Error 1 I've attached a patch which renames gzip's version. Regards, Neil
From 902730e6d37a16a822a0d5fc7d7bf353e3066662 Mon Sep 17 00:00:00 2001 From: Neil Puttock <n.putt...@gmail.com> Date: Fri, 21 Aug 2009 00:37:08 +0100 Subject: [PATCH] gzip: rename futimens () to prevent glibc conflict. --- gub/specs/gzip.py | 1 + patches/gzip-1.3.12-glibc-compat.patch | 36 ++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 0 deletions(-) create mode 100644 patches/gzip-1.3.12-glibc-compat.patch diff --git a/gub/specs/gzip.py b/gub/specs/gzip.py index b0d870e..49abd2c 100644 --- a/gub/specs/gzip.py +++ b/gub/specs/gzip.py @@ -4,3 +4,4 @@ if 'BOOTSTRAP' in os.environ.keys (): from gub import target as tools class Gzip__tools (tools.AutoBuild): source = 'http://ftp.gnu.org/pub/gnu/gzip/gzip-1.3.12.tar.gz' + patches = ['gzip-1.3.12-glibc-compat.patch'] diff --git a/patches/gzip-1.3.12-glibc-compat.patch b/patches/gzip-1.3.12-glibc-compat.patch new file mode 100644 index 0000000..37d9ddb --- /dev/null +++ b/patches/gzip-1.3.12-glibc-compat.patch @@ -0,0 +1,36 @@ +--- gzip-1.3.12/gzip.c 2007-03-20 05:09:51.000000000 +0000 ++++ gzip-1.3.12/gzip.c 2009-08-21 00:13:55.000000000 +0100 +@@ -1637,7 +1637,7 @@ + } + } + +- if (futimens (ofd, ofname, timespec) != 0) ++ if (gz_futimens (ofd, ofname, timespec) != 0) + { + int e = errno; + WARN ((stderr, "%s: ", program_name)); +--- gzip-1.3.12/lib/utimens.c 2007-01-18 08:33:34.000000000 +0000 ++++ gzip-1.3.12/lib/utimens.c 2009-08-21 00:13:55.000000000 +0100 +@@ -75,7 +75,7 @@ + Return 0 on success, -1 (setting errno) on failure. */ + + int +-futimens (int fd ATTRIBUTE_UNUSED, ++gz_futimens (int fd ATTRIBUTE_UNUSED, + char const *file, struct timespec const timespec[2]) + { + /* Some Linux-based NFS clients are buggy, and mishandle time stamps +@@ -185,5 +185,5 @@ + int + utimens (char const *file, struct timespec const timespec[2]) + { +- return futimens (-1, file, timespec); ++ return gz_futimens (-1, file, timespec); + } +--- gzip-1.3.12/lib/utimens.h 2007-02-23 18:25:21.000000000 +0000 ++++ gzip-1.3.12/lib/utimens.h 2009-08-21 00:13:55.000000000 +0100 +@@ -1,3 +1,3 @@ + #include <time.h> +-int futimens (int, char const *, struct timespec const [2]); ++int gz_futimens (int, char const *, struct timespec const [2]); + int utimens (char const *, struct timespec const [2]); -- 1.6.0.4
_______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel