summaryrefslogtreecommitdiff
path: root/core/tar
diff options
context:
space:
mode:
authorMichał Masłowski <mtjm@mtjm.eu>2012-10-21 23:56:44 +0200
committerMichał Masłowski <mtjm@mtjm.eu>2012-10-21 23:56:44 +0200
commit7e9d319e9575e68d86463b792425fcdba0f195d2 (patch)
tree8cd47511f55275a65d61b9fb0ed9d84d23bc09f6 /core/tar
parent02de600478bc393832a0707be7ea4b6c304d9e02 (diff)
Fix the gnulib gets error with glibc 2.16 in core packages.
Diffstat (limited to 'core/tar')
-rw-r--r--core/tar/PKGBUILD7
-rw-r--r--core/tar/gnulib-no-gets.patch16
2 files changed, 21 insertions, 2 deletions
diff --git a/core/tar/PKGBUILD b/core/tar/PKGBUILD
index dfbc772cf..17ae0414c 100644
--- a/core/tar/PKGBUILD
+++ b/core/tar/PKGBUILD
@@ -14,14 +14,17 @@ depends=('glibc' 'sh')
options=('!emptydirs')
install=tar.install
source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig}
- tar.1)
+ tar.1
+ gnulib-no-gets.patch)
md5sums=('0ced6f20b9fa1bea588005b5ad4b52c1'
'6618d5fe7785e138c27d7d6a24e998b2'
- 'e97e7343f4e23724b4c48bca2f033e38')
+ 'e97e7343f4e23724b4c48bca2f033e38'
+ '4408365a66887d65f4c8d1f416fb9d9f')
build() {
cd ${srcdir}/$pkgname-$pkgver
+ patch -p1 -i "$srcdir/gnulib-no-gets.patch"
./configure --prefix=/usr --libexecdir=/usr/lib/tar --bindir=/bin
make
}
diff --git a/core/tar/gnulib-no-gets.patch b/core/tar/gnulib-no-gets.patch
new file mode 100644
index 000000000..b26e3c0bb
--- /dev/null
+++ b/core/tar/gnulib-no-gets.patch
@@ -0,0 +1,16 @@
+diff -ru tar-1.26.orig/gnu/stdio.in.h tar-1.26/gnu/stdio.in.h
+--- tar-1.26.orig/gnu/stdio.in.h 2012-10-21 22:03:53.410910902 +0200
++++ tar-1.26/gnu/stdio.in.h 2012-10-21 22:04:07.945278072 +0200
+@@ -160,12 +160,6 @@
+ "use gnulib module fflush for portable POSIX compliance");
+ #endif
+
+-/* It is very rare that the developer ever has full control of stdin,
+- so any use of gets warrants an unconditional warning. Assume it is
+- always declared, since it is required by C89. */
+-#undef gets
+-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
+-
+ #if @GNULIB_FOPEN@
+ # if @REPLACE_FOPEN@
+ # if !(defined __cplusplus && defined GNULIB_NAMESPACE)