Commit 27c667c7 authored by Thomas Petazzoni's avatar Thomas Petazzoni
Browse files

gzip: add patch to fix glibc build

Recent glibc versions introduced a futimens() function, that gzip
already implemented. So waiting for a proper usage of this function in
gzip, we rename the gzip internal function to gz_futimens().

Patch inspired by
http://lists.pld-linux.org/mailman/pipermail/pld-cvs-commit/Week-of-Mon-20070514/155476.html



Fixes bug #537

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 5b72dda6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -78,6 +78,7 @@
	#509: Bump sqlite package to 3.6.16
	#523: pciutils broken with external toolchain
	#533: Update gamin to 0.1.10 to fix compilation
	#537: Fix gzip build with recent glibc

2009.05, Released June 1st, 2009:

+48 −0
Original line number Diff line number Diff line
---
 gzip.c        |    2 +-
 lib/utimens.c |    4 ++--
 lib/utimens.h |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

Index: gzip-1.3.12/gzip.c
===================================================================
--- gzip-1.3.12.orig/gzip.c
+++ gzip-1.3.12/gzip.c
@@ -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));
Index: gzip-1.3.12/lib/utimens.c
===================================================================
--- gzip-1.3.12.orig/lib/utimens.c
+++ gzip-1.3.12/lib/utimens.c
@@ -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);
 }
Index: gzip-1.3.12/lib/utimens.h
===================================================================
--- gzip-1.3.12.orig/lib/utimens.h
+++ gzip-1.3.12/lib/utimens.h
@@ -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 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ gzip-source: $(DL_DIR)/$(GZIP_SOURCE)

$(GZIP_DIR)/.unpacked: $(DL_DIR)/$(GZIP_SOURCE)
	$(GZIP_CAT) $(DL_DIR)/$(GZIP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
	toolchain/patch-kernel.sh $(GZIP_DIR) package/gzip gzip\*.patch
	touch $(GZIP_DIR)/.unpacked

$(GZIP_DIR)/.configured: $(GZIP_DIR)/.unpacked