summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch45
-rw-r--r--meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch53
-rw-r--r--meta/packages/gzip/gzip_1.3.12.bb39
3 files changed, 137 insertions, 0 deletions
diff --git a/meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch b/meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch
new file mode 100644
index 000000000..8308865a2
--- /dev/null
+++ b/meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch
@@ -0,0 +1,45 @@
+gzip uses gnulib, whose header conflict with glibc. This patch rename some function to avoid conflict.
+
+Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
+Index: gzip-1.3.12/gzip.c
+===================================================================
+--- gzip-1.3.12.orig/gzip.c 2010-08-13 10:29:38.000000000 +0800
++++ gzip-1.3.12/gzip.c 2010-08-13 10:29:44.000000000 +0800
+@@ -1637,7 +1637,7 @@
+ }
+ }
+
+- if (futimens (ofd, ofname, timespec) != 0)
++ if (futimens_gnulib (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 2010-08-13 10:33:47.000000000 +0800
++++ gzip-1.3.12/lib/utimens.c 2010-08-13 10:34:02.000000000 +0800
+@@ -75,7 +75,7 @@
+ Return 0 on success, -1 (setting errno) on failure. */
+
+ int
+-futimens (int fd ATTRIBUTE_UNUSED,
++futimens_gnulib (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 futimens_gnulib (-1, file, timespec);
+ }
+Index: gzip-1.3.12/lib/utimens.h
+===================================================================
+--- gzip-1.3.12.orig/lib/utimens.h 2010-08-13 10:14:57.000000000 +0800
++++ gzip-1.3.12/lib/utimens.h 2010-08-13 10:21:45.000000000 +0800
+@@ -1,3 +1,3 @@
+ #include <time.h>
+-int futimens (int, char const *, struct timespec const [2]);
++int futimens_gnulib (int, char const *, struct timespec const [2]);
+ int utimens (char const *, struct timespec const [2]);
diff --git a/meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch b/meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch
new file mode 100644
index 000000000..927377286
--- /dev/null
+++ b/meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch
@@ -0,0 +1,53 @@
+remove AC_USE_SYSTEM_EXTENSIONS to fix the autoconf error "AC_REQUIRE: circular
+dependency of AC_GNU_SOURCE"
+
+Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
+Index: gzip-1.3.12/m4/extensions.m4
+===================================================================
+--- gzip-1.3.12.orig/m4/extensions.m4 2010-08-16 14:18:16.000000000 +0800
++++ gzip-1.3.12/m4/extensions.m4 2010-08-16 14:21:54.000000000 +0800
+@@ -12,44 +12,6 @@
+ # enough in this area it's likely we'll need to redefine
+ # AC_USE_SYSTEM_EXTENSIONS for quite some time.
+
+-# AC_USE_SYSTEM_EXTENSIONS
+-# ------------------------
+-# Enable extensions on systems that normally disable them,
+-# typically due to standards-conformance issues.
+-AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS],
+-[
+- AC_BEFORE([$0], [AC_COMPILE_IFELSE])
+- AC_BEFORE([$0], [AC_RUN_IFELSE])
+-
+- AC_REQUIRE([AC_GNU_SOURCE])
+- AC_REQUIRE([AC_AIX])
+- AC_REQUIRE([AC_MINIX])
+-
+- AH_VERBATIM([__EXTENSIONS__],
+-[/* Enable extensions on Solaris. */
+-#ifndef __EXTENSIONS__
+-# undef __EXTENSIONS__
+-#endif
+-#ifndef _POSIX_PTHREAD_SEMANTICS
+-# undef _POSIX_PTHREAD_SEMANTICS
+-#endif
+-#ifndef _TANDEM_SOURCE
+-# undef _TANDEM_SOURCE
+-#endif])
+- AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__],
+- [ac_cv_safe_to_define___extensions__],
+- [AC_COMPILE_IFELSE(
+- [AC_LANG_PROGRAM([
+-# define __EXTENSIONS__ 1
+- AC_INCLUDES_DEFAULT])],
+- [ac_cv_safe_to_define___extensions__=yes],
+- [ac_cv_safe_to_define___extensions__=no])])
+- test $ac_cv_safe_to_define___extensions__ = yes &&
+- AC_DEFINE([__EXTENSIONS__])
+- AC_DEFINE([_POSIX_PTHREAD_SEMANTICS])
+- AC_DEFINE([_TANDEM_SOURCE])
+-])
+-
+ # gl_USE_SYSTEM_EXTENSIONS
+ # ------------------------
+ # Enable extensions on systems that normally disable them,
diff --git a/meta/packages/gzip/gzip_1.3.12.bb b/meta/packages/gzip/gzip_1.3.12.bb
new file mode 100644
index 000000000..c111e2e24
--- /dev/null
+++ b/meta/packages/gzip/gzip_1.3.12.bb
@@ -0,0 +1,39 @@
+DESCRIPTION = "Standard GNU compressor"
+HOMEPAGE = "http://www.gnu.org/software/gzip"
+SECTION = "base"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
+ file://gzip.h;endline=22;md5=c0934ad1900d927f86556153d4c76d23 \
+ file://lzw.h;endline=19;md5=c273e09a02edd9801cc74d39683049e9 "
+
+SRC_URI = "${GNU_MIRROR}/gzip/gzip-${PV}.tar.gz \
+ file://m4-extensions-fix.patch;patch=1 \
+ file://dup-def-fix.patch;patch=1"
+
+PR = "r0"
+
+inherit autotools
+
+do_install () {
+ autotools_do_install
+ # move files into /bin (FHS)
+ install -d ${D}${base_bindir}
+ mv ${D}${bindir}/gunzip ${D}${base_bindir}/gunzip.${PN}
+ mv ${D}${bindir}/gzip ${D}${base_bindir}/gzip.${PN}
+ mv ${D}${bindir}/zcat ${D}${base_bindir}/zcat.${PN}
+}
+
+pkg_postinst_${PN} () {
+ update-alternatives --install ${base_bindir}/gunzip gunzip gunzip.${PN} 100
+ update-alternatives --install ${base_bindir}/gzip gzip gzip.${PN} 100
+ update-alternatives --install ${base_bindir}/zcat zcat zcat.${PN} 100
+}
+
+pkg_prerm_${PN} () {
+ update-alternatives --remove gunzip gunzip.${PN}
+ update-alternatives --remove gzip gzip.${PN}
+ update-alternatives --remove zcat zcat.${PN}
+}
+
+BBCLASSEXTEND = "native"