diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 8844fe9c57c..5be34ad5f31 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -10,16 +10,14 @@ assert selinuxSupport -> libselinux != null && libsepol != null; with { inherit (stdenv.lib) optional optionals optionalString optionalAttrs; }; let - self = stdenv.mkDerivation (rec { - name = "coreutils-8.21"; + self = stdenv.mkDerivation rec { + name = "coreutils-8.23"; src = fetchurl { url = "mirror://gnu/coreutils/${name}.tar.xz"; - sha256 = "064f512185iysqqcvhnhaf3bfmzrvcgs7n405qsyp99zmfyl9amd"; + sha256 = "0bdq6yggyl7nkc2pbl6pxhhyx15nyqhz3ds6rfn448n6rxdwlhzc"; }; - patches = [ ./help2man.patch ]; - nativeBuildInputs = [ perl ]; buildInputs = [ gmp ] ++ optional aclSupport acl @@ -64,6 +62,8 @@ let NIX_LDFLAGS = optionalString selinuxSupport "-lsepol"; + makeFlags = optionalString stdenv.isDarwin "CFLAGS=-D_FORTIFY_SOURCE=0"; + meta = { homepage = http://www.gnu.org/software/coreutils/; description = "The basic file, shell and text manipulation utilities of the GNU operating system"; @@ -77,11 +77,9 @@ let license = stdenv.lib.licenses.gpl3Plus; - maintainers = [ ]; + maintainers = [ stdenv.lib.maintainers.eelco ]; }; - } // optionalAttrs stdenv.isDarwin { - makeFlags = "CFLAGS=-D_FORTIFY_SOURCE=0"; - }); + }; in self // stdenv.lib.optionalAttrs (stdenv.system == "armv7l-linux" || stdenv.isSunOS) { diff --git a/pkgs/tools/misc/coreutils/gets-undeclared.patch b/pkgs/tools/misc/coreutils/gets-undeclared.patch deleted file mode 100644 index b6cdc77caa8..00000000000 --- a/pkgs/tools/misc/coreutils/gets-undeclared.patch +++ /dev/null @@ -1,71 +0,0 @@ -This patch is needed to allow builds with newer versions of -the GNU libc (2.16+). - - -commit 66712c23388e93e5c518ebc8515140fa0c807348 -Author: Eric Blake -Date: Thu Mar 29 13:30:41 2012 -0600 - - 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. - - * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets - support. - * modules/stdio (Makefile.am): Likewise. - * lib/stdio-read.c (gets): Likewise. - * tests/test-stdio-c++.cc: Likewise. - * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment. - * lib/stdio.in.h (gets): Make warning occur in more places. - * doc/posix-functions/gets.texi (gets): Update documentation. - Reported by Christer Solskogen. - - Signed-off-by: Eric Blake - -diff --git a/lib/stdio.in.h b/lib/stdio.in.h -index aa7b599..c377b6e 100644 ---- a/lib/stdio.in.h -+++ b/lib/stdio.in.h -@@ -698,22 +698,11 @@ _GL_WARN_ON_USE (getline, "getline is unportable - " - # endif - #endif - --#if @GNULIB_GETS@ --# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ --# if !(defined __cplusplus && defined GNULIB_NAMESPACE) --# undef gets --# define gets rpl_gets --# endif --_GL_FUNCDECL_RPL (gets, char *, (char *s) _GL_ARG_NONNULL ((1))); --_GL_CXXALIAS_RPL (gets, char *, (char *s)); --# else --_GL_CXXALIAS_SYS (gets, char *, (char *s)); --# undef gets --# endif --_GL_CXXALIASWARN (gets); - /* 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. */ -+ so any use of gets warrants an unconditional warning; besides, C11 -+ removed it. */ -+#undef gets -+#if HAVE_RAW_DECL_GETS - _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); - #endif - -@@ -1053,9 +1042,9 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - " - # endif - #endif - --/* Some people would argue that sprintf should be handled like gets -- (for example, OpenBSD issues a link warning for both functions), -- since both can cause security holes due to buffer overruns. -+/* Some people would argue that all sprintf uses should be warned about -+ (for example, OpenBSD issues a link warning for it), -+ since it can cause security holes due to buffer overruns. - However, we believe that sprintf can be used safely, and is more - efficient than snprintf in those safe cases; and as proof of our - belief, we use sprintf in several gnulib modules. So this header diff --git a/pkgs/tools/misc/coreutils/help2man.patch b/pkgs/tools/misc/coreutils/help2man.patch deleted file mode 100644 index 9f3cbaa40ff..00000000000 --- a/pkgs/tools/misc/coreutils/help2man.patch +++ /dev/null @@ -1,40 +0,0 @@ -Although the above man pages depend on src/md5sum.c as a shared -source, the build of the man pages directly requires their own -executables to exist. - -* man/local.mk (man/sha1sum.1): Change the dependency from -'src/md5sum' to 'src/sha1sum'. -(man/sha224sum.1): s/md5sum/sha224sum/ -(man/sha256sum.1): s/md5sum/sha256sum/ -(man/sha384sum.1): s/md5sum/sha384sum/ -(man/sha512sum.1): s/md5sum/sha512sum/ - -Reported by Pádraig Brady in -http://lists.gnu.org/archive/html/coreutils/2013-11/msg00006.html ---- - man/local.mk | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/man/local.mk b/man/local.mk -index 266b780..45dbcb9 100644 ---- a/man/local.mk -+++ b/man/local.mk -@@ -131,11 +131,11 @@ man/rm.1: src/rm - man/rmdir.1: src/rmdir - man/runcon.1: src/runcon - man/seq.1: src/seq --man/sha1sum.1: src/md5sum --man/sha224sum.1: src/md5sum --man/sha256sum.1: src/md5sum --man/sha384sum.1: src/md5sum --man/sha512sum.1: src/md5sum -+man/sha1sum.1: src/sha1sum -+man/sha224sum.1: src/sha224sum -+man/sha256sum.1: src/sha256sum -+man/sha384sum.1: src/sha384sum -+man/sha512sum.1: src/sha512sum - man/shred.1: src/shred - man/shuf.1: src/shuf - man/sleep.1: src/sleep --- -1.8.3.1