PSARC 2015/524 GNU coreutils 8.24
authorRich Burridge <rich.burridge@oracle.com>
Tue, 08 Dec 2015 09:52:14 -0800
changeset 5169 c5d3147d411a
parent 5168 6c7bce5c3955
child 5170 970e0f411b42
PSARC 2015/524 GNU coreutils 8.24 22307528 Upgrade GNU coreutils to version 8.24
components/coreutils/Makefile
components/coreutils/coreutils.license
components/coreutils/coreutils.p5m
components/coreutils/patches/configure.ac.patch
components/coreutils/patches/df.c.patch
components/coreutils/patches/fix-tests.patch
components/coreutils/test/results-64.master
--- a/components/coreutils/Makefile	Tue Dec 08 07:15:50 2015 -0800
+++ b/components/coreutils/Makefile	Tue Dec 08 09:52:14 2015 -0800
@@ -23,16 +23,16 @@
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=		coreutils
-COMPONENT_VERSION=	8.23
+COMPONENT_VERSION=	8.24
 COMPONENT_PROJECT_URL=	http://www.gnu.org/software/coreutils/
 COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
 COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.xz
 COMPONENT_ARCHIVE_HASH=	\
-    sha256:ec43ca5bcfc62242accb46b7f121f6b684ee21ecd7d075059bf650ff9e37b82d
+    sha256:a2d75286a4b9ef3a13039c2da3868a61be4ee9f17d8ae380a35a97e506972170
 COMPONENT_ARCHIVE_URL=	http://ftp.gnu.org/gnu/coreutils/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=	utility/gnu-coreutils
 
-TPNO=			18521
+TPNO=			25903
 
 include $(WS_MAKE_RULES)/prep.mk
 include $(WS_MAKE_RULES)/configure.mk
--- a/components/coreutils/coreutils.license	Tue Dec 08 07:15:50 2015 -0800
+++ b/components/coreutils/coreutils.license	Tue Dec 08 09:52:14 2015 -0800
@@ -2,7 +2,7 @@
 
 Version 3, 29 June 2007
 
-Copyright © 2007 Free Software Foundation, Inc.
+Copyright © 2007 Free Software Foundation, Inc. <http://fsf.org/>
 Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
 Preamble
 The GNU General Public License is a free, copyleft license for software and other kinds of works.
@@ -121,7 +121,7 @@
 
 
 Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
-
+    <http://fsf.org/>
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.
 
--- a/components/coreutils/coreutils.p5m	Tue Dec 08 07:15:50 2015 -0800
+++ b/components/coreutils/coreutils.p5m	Tue Dec 08 09:52:14 2015 -0800
@@ -322,6 +322,9 @@
 file path=usr/gnu/share/locale/sl/LC_MESSAGES/coreutils.mo
 link path=usr/gnu/share/locale/sl/LC_TIME/coreutils.mo \
     target=../LC_MESSAGES/coreutils.mo
+file path=usr/gnu/share/locale/sr/LC_MESSAGES/coreutils.mo
+link path=usr/gnu/share/locale/sr/LC_TIME/coreutils.mo \
+    target=../LC_MESSAGES/coreutils.mo
 file path=usr/gnu/share/locale/sv/LC_MESSAGES/coreutils.mo
 link path=usr/gnu/share/locale/sv/LC_TIME/coreutils.mo \
     target=../LC_MESSAGES/coreutils.mo
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/coreutils/patches/configure.ac.patch	Tue Dec 08 09:52:14 2015 -0800
@@ -0,0 +1,68 @@
+From c536d89fc497f90464de61c5b4207d103dfbad08 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <[email protected]>
+Date: Thu, 3 Dec 2015 13:55:44 -0800
+Subject: [PATCH] build: port to Studio C on Solaris 12
+
+Reported by Rich Burridge in: http://bugs.gnu.org/22087
+* configure.ac (HAVE_UT_HOST, HAVE_C_LINE, stdbuf):
+Pacify picky compilers that complain about unreachable statements.
+---
+ configure.ac | 21 ++++++++++++++-------
+ 1 file changed, 14 insertions(+), 7 deletions(-)
+
+diff --git configure.ac configure.ac
+index 66c8cbe..a5c4e41 100644
+--- configure.ac
++++ configure.ac
[email protected]@ -354,7 +354,9 @@ coreutils_DUMMY_1
+ AC_MSG_CHECKING([ut_host in struct utmp])
+ AC_CACHE_VAL([su_cv_func_ut_host_in_utmp],
+ [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
+-#include <utmp.h>]], [[struct utmp ut; return !sizeof ut.ut_host;]])],
++                                   #include <utmp.h>
++                                   struct utmp ut;
++                                   int s = sizeof ut.ut_host;]])],
+   [su_cv_func_ut_host_in_utmp=yes],
+   [su_cv_func_ut_host_in_utmp=no])])
+ AC_MSG_RESULT([$su_cv_func_ut_host_in_utmp])
[email protected]@ -367,7 +369,9 @@ if test -z "$have_ut_host"; then
+   AC_MSG_CHECKING([ut_host in struct utmpx])
+   AC_CACHE_VAL([su_cv_func_ut_host_in_utmpx],
+   [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
+-#include <utmpx.h>]], [[struct utmpx ut; return !sizeof ut.ut_host;]])],
++                                     #include <utmpx.h>
++                                     struct utmpx ut;
++                                     int s = sizeof ut.ut_host;]])],
+     [su_cv_func_ut_host_in_utmpx=yes],
+     [su_cv_func_ut_host_in_utmpx=no])])
+   AC_MSG_RESULT([$su_cv_func_ut_host_in_utmpx])
[email protected]@ -404,10 +408,12 @@ yes
+   AC_MSG_CHECKING([c_line in struct termios])
+   AC_CACHE_VAL([su_cv_sys_c_line_in_termios],
+   [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#if TERMIOS_NEEDS_XOPEN_SOURCE
+-#define _XOPEN_SOURCE
+-#endif
+-#include <sys/types.h>
+-#include <termios.h>]], [[struct termios t; return !sizeof t.c_line;]])],
++                                      #define _XOPEN_SOURCE
++                                     #endif
++                                     #include <sys/types.h>
++                                     #include <termios.h>
++                                     struct termios t;
++                                     int s = sizeof t.c_line;]])],
+     [su_cv_sys_c_line_in_termios=yes],
+     [su_cv_sys_c_line_in_termios=no])])
+   AC_MSG_RESULT([$su_cv_sys_c_line_in_termios])
[email protected]@ -475,7 +481,8 @@ AC_LINK_IFELSE(
+     {
+       stdbuf = 1;
+     }]],[[
+-    return !(stdbuf == 1);]])
++    if (stdbuf != 1)
++      return 1;]])
+   ],
+   [stdbuf_supported=yes])
+ AC_MSG_RESULT([$stdbuf_supported])
+-- 
+2.1.0
+
--- a/components/coreutils/patches/df.c.patch	Tue Dec 08 07:15:50 2015 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-From: Pádraig Brady <[email protected]>
-Date: Mon, 18 Aug 2014 16:59:26 +0000 (+0100)
-Subject: df: improve mount point selection with inaccurate mount list
-X-Git-Url: http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commitdiff_plain;h=ed1a495b
-
-df: improve mount point selection with inaccurate mount list
-
-v8.23 has a test failure on Fedora rawhide build servers
-in tests/df/skip-duplicate.sh.  This was due to no '/'
-entry being output by df.  That was due to an inaccurate
-/proc/mounts on the build environment as stat(/mnt/point)
-identified all these /proc/mounts entries as having the
-same device id:
-
-  /                    rootfs
-  /                    /dev/md1
-  /dev                 devtmpfs
-  /run                 tmpfs
-  /boot                /dev/md0
-  /proc/filesystems    /dev/md1
-
-Since the device name on the right changes for a given id,
-that causes the entries to be continually replaced, thus
-resulting in no '/' entry.  I'm guessing this is due to
-the mock environment bind mounting unneeded or sensitive
-items to a dummy file on the host / (/dev/md1) though
-have not looked into those details.
-
-So rather than relying on an accurate /proc/mounts,
-the attached patch takes a more conservative replacement
-approach and only swaps a new device entry when the
-mount point matches.  That should handle all practical
-cases while also avoiding this situation.
-
-* src/df.c (filter_mount_list): Only replace entries with
-different device names when the mount point also matches.
----
-
-diff --git a/src/df.c b/src/df.c
-index 3ef5d33..e907b94 100644
---- src/df.c
-+++ src/df.c
[email protected]@ -640,13 +640,18 @@ filter_mount_list (bool devices_only)
- 
-           if (devlist)
-             {
--              /* ...let the shorter mountdir win.  */
-+                  /* let "real" devices with '/' in the name win.  */
-               if ((strchr (me->me_devname, '/')
-                    && ! strchr (devlist->me->me_devname, '/'))
-+                  /* let a shorter mountdir win.  */
-                   || (strlen (devlist->me->me_mountdir)
-                       > strlen (me->me_mountdir))
--                  /* or one overmounted on a different device.  */
--                  || ! STREQ (devlist->me->me_devname, me->me_devname))
-+                  /* let an entry overmounted on a different device win...  */
-+                  || (! STREQ (devlist->me->me_devname, me->me_devname)
-+                      /* ... but only when matching an exsiting mount point, to
-+                      avoid problematic replacement when given inaccurate mount
-+                      lists, seen with some chroot environments for example.  */
-+                      && STREQ (me->me_mountdir, devlist->me->me_mountdir)))
-                 {
-                   /* Discard mount entry for existing device.  */
-                   discard_me = devlist->me;
--- a/components/coreutils/patches/fix-tests.patch	Tue Dec 08 07:15:50 2015 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-Fix two tests that are currently failing with GNU coreutils version 8.23.0
-
-1/ test-getlogin - this is a known problem. See:
-   http://www.linuxfromscratch.org/pipermail/lfs-dev/2012-April/066264.html
-   with a suggested "fix" at:
-   http://www.linuxfromscratch.org/pipermail/lfs-dev/2012-April/066266.html
-
-2/ test-localename - this has been sent upstream.
-
---- gnulib-tests/test-getlogin.c.orig	2015-01-29 07:19:29.435897383 -0800
-+++ gnulib-tests/test-getlogin.c	2015-01-29 07:22:44.106221453 -0800
[email protected]@ -41,7 +41,7 @@
-   char *buf;
- 
-   /* Test value.  */
--  buf = getlogin ();
-+  buf = getlogin (); return 0;
-   if (buf == NULL)
-     {
-       if (errno == ENOENT)
---- gnulib-tests/localename.c.orig	2015-01-29 06:41:11.417038720 -0800
-+++ gnulib-tests/localename.c	2015-01-29 06:41:18.590919339 -0800
[email protected]@ -2644,6 +2644,9 @@
-             return "";
-           }
-         return querylocale (mask, thread_locale);
-+#  elif defined(sun) || defined(__sun) || defined(__sun__)
-+        extern char * __getlocalename_l(int, locale_t);
-+        return __getlocalename_l (category, thread_locale);
- #  endif
-       }
-   }
--- a/components/coreutils/test/results-64.master	Tue Dec 08 07:15:50 2015 -0800
+++ b/components/coreutils/test/results-64.master	Tue Dec 08 09:52:14 2015 -0800
@@ -1,5 +1,6 @@
 PASS: tests/misc/help-version.sh
 SKIP: tests/tail-2/inotify-race.sh
+SKIP: tests/tail-2/inotify-race2.sh
 PASS: tests/misc/invalid-opt.pl
 SKIP: tests/rm/ext3-perf.sh
 PASS: tests/rm/cycle.sh
@@ -10,7 +11,10 @@
 PASS: tests/tail-2/inotify-hash-abuse2.sh
 PASS: tests/tail-2/F-vs-missing.sh
 PASS: tests/tail-2/F-vs-rename.sh
+PASS: tests/tail-2/F-headers.sh
+PASS: tests/tail-2/descriptor-vs-rename.sh
 SKIP: tests/tail-2/inotify-rotate.sh
+SKIP: tests/tail-2/inotify-rotate-resources.sh
 PASS: tests/chmod/no-x.sh
 PASS: tests/chgrp/basic.sh
 PASS: tests/rm/dangling-symlink.sh
@@ -29,12 +33,11 @@
 PASS: tests/rm/f-1.sh
 PASS: tests/rm/fail-eacces.sh
 PASS: tests/rm/fail-eperm.xpl
-SKIP: tests/tail-2/assert.sh
+PASS: tests/tail-2/assert.sh
 SKIP: tests/rm/hash.sh
 PASS: tests/rm/i-1.sh
 PASS: tests/rm/i-never.sh
 PASS: tests/rm/i-no-r.sh
-PASS: tests/tail-2/infloop-1.sh
 PASS: tests/rm/ignorable.sh
 PASS: tests/rm/inaccessible.sh
 PASS: tests/rm/interactive-always.sh
@@ -72,6 +75,7 @@
 PASS: tests/misc/test.pl
 PASS: tests/misc/seq.pl
 SKIP: tests/misc/seq-long-double.sh
+PASS: tests/misc/seq-precision.sh
 PASS: tests/misc/head.pl
 PASS: tests/misc/head-elide-tail.pl
 SKIP: tests/tail-2/tail-n0f.sh
@@ -96,9 +100,11 @@
 PASS: tests/misc/wc.pl
 PASS: tests/misc/wc-files0-from.pl
 PASS: tests/misc/wc-files0.sh
-PASS: tests/misc/wc-parallel.sh
+SKIP: tests/misc/wc-parallel.sh
+PASS: tests/misc/wc-proc.sh
 SKIP: tests/misc/cat-proc.sh
 PASS: tests/misc/cat-buf.sh
+PASS: tests/misc/cat-self.sh
 PASS: tests/misc/base64.pl
 PASS: tests/misc/basename.pl
 PASS: tests/misc/close-stdout.sh
@@ -115,6 +121,7 @@
 PASS: tests/misc/expand.pl
 PASS: tests/misc/expr.pl
 PASS: tests/misc/factor.pl
+PASS: tests/misc/factor-parallel.sh
 PASS: tests/misc/false-status.sh
 PASS: tests/misc/fold.pl
 PASS: tests/misc/groups-dash.sh
@@ -125,7 +132,7 @@
 PASS: tests/misc/md5sum.pl
 PASS: tests/misc/md5sum-bsd.sh
 PASS: tests/misc/md5sum-newline.pl
-PASS: tests/misc/md5sum-parallel.sh
+SKIP: tests/misc/md5sum-parallel.sh
 PASS: tests/misc/mknod.sh
 PASS: tests/misc/nice.sh
 PASS: tests/misc/nice-fail.sh
@@ -135,6 +142,7 @@
 PASS: tests/misc/nproc-positive.sh
 PASS: tests/misc/numfmt.pl
 PASS: tests/misc/od-N.sh
+PASS: tests/misc/od-j.sh
 PASS: tests/misc/od-multiple-t.sh
 PASS: tests/misc/od-x8.sh
 PASS: tests/misc/paste.pl
@@ -156,9 +164,9 @@
 PASS: tests/misc/sha384sum.pl
 PASS: tests/misc/sha512sum.pl
 PASS: tests/misc/shred-exact.sh
-PASS: tests/misc/shred-negative.sh
 PASS: tests/misc/shred-passes.sh
 PASS: tests/misc/shred-remove.sh
+PASS: tests/misc/shred-size.sh
 PASS: tests/misc/shuf.sh
 SKIP: tests/misc/shuf-reservoir.sh
 PASS: tests/misc/sort.pl
@@ -194,6 +202,7 @@
 PASS: tests/split/line-bytes.sh
 PASS: tests/split/l-chunk.sh
 PASS: tests/split/r-chunk.sh
+PASS: tests/split/record-sep.sh
 PASS: tests/split/numeric.sh
 PASS: tests/split/guard-input.sh
 PASS: tests/misc/stat-birthtime.sh
@@ -210,12 +219,12 @@
 PASS: tests/misc/stty-row-col.sh
 PASS: tests/misc/sum.pl
 PASS: tests/misc/sum-sysv.sh
+PASS: tests/misc/sync.sh
 PASS: tests/misc/tac.pl
 SKIP: tests/misc/tac-continue.sh
 PASS: tests/misc/tac-2-nonseekable.sh
 PASS: tests/misc/tail.pl
 PASS: tests/misc/tee.sh
-PASS: tests/misc/tee-dash.sh
 PASS: tests/misc/test-diag.pl
 PASS: tests/misc/timeout.sh
 PASS: tests/misc/timeout-blocked.pl
@@ -236,9 +245,12 @@
 PASS: tests/misc/uniq.pl
 PASS: tests/misc/uniq-perf.sh
 SKIP: tests/misc/xattr.sh
+PASS: tests/misc/yes.sh
 PASS: tests/tail-2/wait.sh
 PASS: tests/tail-2/retry.sh
 PASS: tests/tail-2/symlink.sh
+PASS: tests/tail-2/tail-c.sh
+PASS: tests/tail-2/truncate.sh
 PASS: tests/chmod/c-option.sh
 PASS: tests/chmod/equal-x.sh
 PASS: tests/chmod/equals.sh
@@ -267,6 +279,7 @@
 PASS: tests/cp/dir-rm-dest.sh
 PASS: tests/cp/dir-slash.sh
 PASS: tests/cp/dir-vs-file.sh
+PASS: tests/cp/duplicate-sources.sh
 PASS: tests/cp/existing-perm-dir.sh
 PASS: tests/cp/existing-perm-race.sh
 PASS: tests/cp/fail-perm.sh
@@ -329,6 +342,7 @@
 PASS: tests/dd/stderr.sh
 PASS: tests/dd/unblock.pl
 PASS: tests/dd/unblock-sync.sh
+PASS: tests/dd/stats.sh
 PASS: tests/df/total-verify.sh
 SKIP: tests/du/2g.sh
 PASS: tests/du/8gb.sh
@@ -390,6 +404,7 @@
 PASS: tests/ls/file-type.sh
 PASS: tests/ls/follow-slink.sh
 SKIP: tests/ls/getxattr-speedup.sh
+PASS: tests/ls/hex-option.sh
 PASS: tests/ls/infloop.sh
 PASS: tests/ls/inode.sh
 PASS: tests/ls/m-option.sh
@@ -440,7 +455,6 @@
 PASS: tests/mv/hard-3.sh
 PASS: tests/mv/hard-4.sh
 PASS: tests/mv/hard-link-1.sh
-PASS: tests/mv/hard-verbose.sh
 PASS: tests/mv/i-1.pl
 PASS: tests/mv/i-2.sh
 PASS: tests/mv/i-3.sh
@@ -474,7 +488,7 @@
 PASS: tests/rmdir/fail-perm.sh
 PASS: tests/rmdir/ignore.sh
 PASS: tests/rmdir/t-slash.sh
-SKIP: tests/tail-2/assert-2.sh
+PASS: tests/tail-2/assert-2.sh
 SKIP: tests/tail-2/big-4gb.sh
 PASS: tests/tail-2/flush-initial.sh
 PASS: tests/tail-2/follow-name.sh
@@ -507,6 +521,7 @@
 SKIP: tests/df/problematic-chars.sh
 SKIP: tests/df/over-mount-device.sh
 SKIP: tests/du/bind-mount-dir-cycle.sh
+SKIP: tests/du/bind-mount-dir-cycle-v2.sh
 SKIP: tests/install/install-C-root.sh
 SKIP: tests/ls/capability.sh
 SKIP: tests/ls/nameless-uid.sh
@@ -515,6 +530,7 @@
 SKIP: tests/misc/selinux.sh
 SKIP: tests/misc/truncate-owned-by-other.sh
 SKIP: tests/mkdir/writable-under-readonly.sh
+SKIP: tests/mv/hardlink-case.sh
 SKIP: tests/mv/sticky-to-xpart.sh
 SKIP: tests/rm/fail-2eperm.sh
 SKIP: tests/rm/no-give-up.sh
@@ -559,9 +575,9 @@
 SKIP: tests/factor/t34.sh
 SKIP: tests/factor/t35.sh
 SKIP: tests/factor/t36.sh
-# TOTAL: 563
-# PASS:  428
-# SKIP:  135
+# TOTAL: 579
+# PASS:  440
+# SKIP:  139
 # XFAIL: 0
 # FAIL:  0
 # XPASS: 0