summary refs log tree commit diff
path: root/pkgs/tools/archivers/cpio
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2013-03-20 23:01:36 +0100
committerVladimír Čunát <vcunat@gmail.com>2013-03-20 23:01:36 +0100
commit32a503a5d34d22987d4c2a723a0155da543043bb (patch)
tree1ab274b1b26bbb3f52fcf846a32fe166437681fa /pkgs/tools/archivers/cpio
parent111c8db50038341b09c8561f750c6d56e46de869 (diff)
downloadnixlib-32a503a5d34d22987d4c2a723a0155da543043bb.tar
nixlib-32a503a5d34d22987d4c2a723a0155da543043bb.tar.gz
nixlib-32a503a5d34d22987d4c2a723a0155da543043bb.tar.bz2
nixlib-32a503a5d34d22987d4c2a723a0155da543043bb.tar.lz
nixlib-32a503a5d34d22987d4c2a723a0155da543043bb.tar.xz
nixlib-32a503a5d34d22987d4c2a723a0155da543043bb.tar.zst
nixlib-32a503a5d34d22987d4c2a723a0155da543043bb.zip
cpio: fix build without gets
Diffstat (limited to 'pkgs/tools/archivers/cpio')
-rw-r--r--pkgs/tools/archivers/cpio/default.nix4
-rw-r--r--pkgs/tools/archivers/cpio/no-gets.patch24
2 files changed, 27 insertions, 1 deletions
diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix
index 919484fa915e..ec873507c85e 100644
--- a/pkgs/tools/archivers/cpio/default.nix
+++ b/pkgs/tools/archivers/cpio/default.nix
@@ -2,12 +2,14 @@
 
 stdenv.mkDerivation {
   name = "cpio-2.11";
-  
+
   src = fetchurl {
     url = mirror://gnu/cpio/cpio-2.11.tar.bz2;
     sha256 = "bb820bfd96e74fc6ce43104f06fe733178517e7f5d1cdee553773e8eff7d5bbd";
   };
 
+  patches = [ ./no-gets.patch ];
+
   meta = {
     homepage = http://www.gnu.org/software/cpio/;
     description = "A program to create or extract from cpio archives";
diff --git a/pkgs/tools/archivers/cpio/no-gets.patch b/pkgs/tools/archivers/cpio/no-gets.patch
new file mode 100644
index 000000000000..f7a9be324df4
--- /dev/null
+++ b/pkgs/tools/archivers/cpio/no-gets.patch
@@ -0,0 +1,24 @@
+https://bugs.gentoo.org/424974
+
+hack until gzip pulls a newer gnulib version
+
+From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001
+From: Eric Blake <eblake@redhat.com>
+Date: Thu, 29 Mar 2012 13:30:41 -0600
+Subject: [PATCH] stdio: don't assume gets any more
+
+Gnulib intentionally does not have a gets module, and now that C11
+and glibc have dropped it, we should be more proactive about warning
+any user on a platform that still has a declaration of this dangerous
+interface.
+
+--- a/gnu/stdio.in.h
++++ b/gnu/stdio.in.h
+@@ -125,7 +125,6 @@
+    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@