new upstream release 8.27

This commit is contained in:
Kamil Dudka 2017-03-09 09:57:09 +01:00
parent bc25708240
commit 7a7c1a231c
13 changed files with 163 additions and 415 deletions

View File

@ -4,16 +4,16 @@ Date: Fri, 17 Jun 2016 16:58:18 +0200
Subject: [PATCH] downstream changes to default DIR_COLORS
---
DIR_COLORS | 44 ++++----
DIR_COLORS.256color | 294 +++++++++++++++++++++++-------------------------
DIR_COLORS.lightbgcolor | 207 +++++++++++++++++-----------------
3 files changed, 271 insertions(+), 274 deletions(-)
DIR_COLORS | 41 ++++---
DIR_COLORS.256color | 302 ++++++++++++++++++++++++------------------------
DIR_COLORS.lightbgcolor | 215 +++++++++++++++++-----------------
3 files changed, 286 insertions(+), 272 deletions(-)
diff --git a/DIR_COLORS b/DIR_COLORS
index d2ea453..27af9d7 100644
--- a/DIR_COLORS
+++ b/DIR_COLORS
@@ -1,12 +1,18 @@
@@ -1,6 +1,10 @@
# Configuration file for dircolors, a utility to help you set the
# LS_COLORS environment variable used by GNU ls with the --color option.
@ -21,20 +21,20 @@ index d2ea453..27af9d7 100644
+# You can copy this file to .dir_colors in your $HOME directory to override
+# the system defaults.
+
# Copyright (C) 1996-2016 Free Software Foundation, Inc.
# Copyright (C) 1996-2017 Free Software Foundation, Inc.
# Copying and distribution of this file, with or without modification,
# are permitted provided the copyright notice and this notice are preserved.
@@ -8,6 +12,9 @@
# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
# slackware version of dircolors) are recognized but ignored.
-# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
-# slackware version of dircolors) are recognized but ignored.
+# The keywords OPTIONS and EIGHTBIT (honored by the slackware version of
+# dircolors) are recognized but ignored. For compatibility reasons, the
+# pattern "^COLOR.*none" is recognized as a way to disable colorization.
+# See https://bugzilla.redhat.com/1349579 for details.
+# For compatibility, the pattern "^COLOR.*none" is recognized as a way to
+# disable colorization. See https://bugzilla.redhat.com/1349579 for details.
+
# Below are TERM entries, which can be a glob patterns, to match
# against the TERM environment variable to determine if it is colorizable.
@@ -56,7 +62,7 @@ DOOR 01;35 # door
TERM Eterm
@@ -56,7 +63,7 @@ DOOR 01;35 # door
BLK 40;33;01 # block device driver
CHR 40;33;01 # character device driver
ORPHAN 40;31;01 # symlink to nonexistent file, or non-stat'able file ...
@ -43,7 +43,7 @@ index d2ea453..27af9d7 100644
SETUID 37;41 # file that is setuid (u+s)
SETGID 30;43 # file that is setgid (g+s)
CAPABILITY 30;41 # file with capability
@@ -181,21 +187,21 @@ EXEC 01;32
@@ -185,21 +192,21 @@ EXEC 01;32
.ogx 01;35
# audio formats
@ -72,7 +72,7 @@ index d2ea453..27af9d7 100644
+.ra 01;36
+.wav 01;36
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
# https://wiki.xiph.org/MIME_Types_and_File_Extensions
-.oga 00;36
-.opus 00;36
-.spx 00;36
@ -85,26 +85,23 @@ diff --git a/DIR_COLORS.256color b/DIR_COLORS.256color
index d2ea453..74c34ba 100644
--- a/DIR_COLORS.256color
+++ b/DIR_COLORS.256color
@@ -1,39 +1,22 @@
-# Configuration file for dircolors, a utility to help you set the
-# LS_COLORS environment variable used by GNU ls with the --color option.
@@ -1,3 +1,9 @@
+# Configuration file for the 256color ls utility
+
+# This file goes in the /etc directory, and must be world readable.
+# You can copy this file to .dir_colors in your $HOME directory to override
+# the system defaults.
+
# Configuration file for dircolors, a utility to help you set the
# LS_COLORS environment variable used by GNU ls with the --color option.
# Copyright (C) 1996-2016 Free Software Foundation, Inc.
# Copying and distribution of this file, with or without modification,
# are permitted provided the copyright notice and this notice are preserved.
-# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
-# slackware version of dircolors) are recognized but ignored.
+# The keywords OPTIONS and EIGHTBIT (honored by the slackware version of
+# dircolors) are recognized but ignored. For compatibility reasons, the
+# pattern "^COLOR.*none" is recognized as a way to disable colorization.
+# See https://bugzilla.redhat.com/1349579 for details.
@@ -8,32 +14,13 @@
# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
# slackware version of dircolors) are recognized but ignored.
+# For compatibility, the pattern "^COLOR.*none" is recognized as a way to
+# disable colorization. See https://bugzilla.redhat.com/1349579 for details.
+
# Below are TERM entries, which can be a glob patterns, to match
# against the TERM environment variable to determine if it is colorizable.
-TERM Eterm
@ -136,7 +133,7 @@ index d2ea453..74c34ba 100644
# Below are the color init strings for the basic file types. A color init
# string consists of one or more of the following numeric codes:
@@ -43,29 +26,40 @@ TERM xterm*
@@ -43,29 +30,40 @@ TERM xterm*
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
@ -193,7 +190,7 @@ index d2ea453..74c34ba 100644
# List any file extensions like '.gz' or '.tar' that you would like ls
# to colorize below. Put the extension, a space, and the color init string.
@@ -83,119 +77,115 @@ EXEC 01;32
@@ -83,123 +81,123 @@ EXEC 01;32
#.csh 01;32
# archives or compressed (bright red)
@ -240,6 +237,10 @@ index d2ea453..74c34ba 100644
-.7z 01;31
-.rz 01;31
-.cab 01;31
-.wim 01;31
-.swm 01;31
-.dwm 01;31
-.esd 01;31
+.tar 38;5;9
+.tgz 38;5;9
+.arc 38;5;9
@ -262,6 +263,8 @@ index d2ea453..74c34ba 100644
+.lz 38;5;9
+.lzo 38;5;9
+.xz 38;5;9
+.zst 38;5;9
+.tzst 38;5;9
+.bz2 38;5;9
+.bz 38;5;9
+.tbz 38;5;9
@ -281,6 +284,10 @@ index d2ea453..74c34ba 100644
+.7z 38;5;9
+.rz 38;5;9
+.cab 38;5;9
+.wim 38;5;9
+.swm 38;5;9
+.dwm 38;5;9
+.esd 38;5;9
# image formats
-.jpg 01;35
@ -332,6 +339,8 @@ index d2ea453..74c34ba 100644
-.emf 01;35
+.jpg 38;5;13
+.jpeg 38;5;13
+.mjpg 38;5;13
+.mjpeg 38;5;13
+.gif 38;5;13
+.bmp 38;5;13
+.pbm 38;5;13
@ -376,7 +385,7 @@ index d2ea453..74c34ba 100644
+.cgm 38;5;13
+.emf 38;5;13
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
# https://wiki.xiph.org/MIME_Types_and_File_Extensions
-.ogv 01;35
-.ogx 01;35
+.ogv 38;5;13
@ -408,7 +417,7 @@ index d2ea453..74c34ba 100644
+.ra 38;5;45
+.wav 38;5;45
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
# https://wiki.xiph.org/MIME_Types_and_File_Extensions
-.oga 00;36
-.opus 00;36
-.spx 00;36
@ -421,29 +430,27 @@ diff --git a/DIR_COLORS.lightbgcolor b/DIR_COLORS.lightbgcolor
index d2ea453..95d6879 100644
--- a/DIR_COLORS.lightbgcolor
+++ b/DIR_COLORS.lightbgcolor
@@ -1,12 +1,17 @@
-# Configuration file for dircolors, a utility to help you set the
-# LS_COLORS environment variable used by GNU ls with the --color option.
@@ -1,3 +1,9 @@
+# Configuration file for the color ls utility - modified for lighter backgrounds
+
+# This file goes in the /etc directory, and must be world readable.
+# You can copy this file to .dir_colors in your $HOME directory to override
+# the system defaults.
+
# Configuration file for dircolors, a utility to help you set the
# LS_COLORS environment variable used by GNU ls with the --color option.
# Copyright (C) 1996-2016 Free Software Foundation, Inc.
# Copying and distribution of this file, with or without modification,
# are permitted provided the copyright notice and this notice are preserved.
-# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
-# slackware version of dircolors) are recognized but ignored.
+# The keywords OPTIONS and EIGHTBIT (honored by the slackware version of
+# dircolors) are recognized but ignored. For compatibility reasons, the
+# pattern "^COLOR.*none" is recognized as a way to disable colorization.
+# See https://bugzilla.redhat.com/1349579 for details.
@@ -8,6 +14,9 @@
# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
# slackware version of dircolors) are recognized but ignored.
+# For compatibility, the pattern "^COLOR.*none" is recognized as a way to
+# disable colorization. See https://bugzilla.redhat.com/1349579 for details.
+
# Below are TERM entries, which can be a glob patterns, to match
# against the TERM environment variable to determine if it is colorizable.
@@ -46,17 +51,17 @@ TERM xterm*
TERM Eterm
@@ -46,17 +55,17 @@ TERM xterm*
#NORMAL 00 # no color code at all
#FILE 00 # regular file: use no color at all
RESET 0 # reset to "normal" color
@ -466,7 +473,7 @@ index d2ea453..95d6879 100644
SETUID 37;41 # file that is setuid (u+s)
SETGID 30;43 # file that is setgid (g+s)
CAPABILITY 30;41 # file with capability
@@ -65,7 +70,7 @@ OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
@@ -65,7 +74,7 @@ OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable
# This is for files with execute permission:
@ -475,7 +482,7 @@ index d2ea453..95d6879 100644
# List any file extensions like '.gz' or '.tar' that you would like ls
# to colorize below. Put the extension, a space, and the color init string.
@@ -82,103 +87,99 @@ EXEC 01;32
@@ -82,107 +91,107 @@ EXEC 01;32
#.sh 01;32
#.csh 01;32
@ -523,6 +530,10 @@ index d2ea453..95d6879 100644
-.7z 01;31
-.rz 01;31
-.cab 01;31
-.wim 01;31
-.swm 01;31
-.dwm 01;31
-.esd 01;31
+# archives or compressed (red)
+.tar 00;31
+.tgz 00;31
@ -546,6 +557,8 @@ index d2ea453..95d6879 100644
+.lz 00;31
+.lzo 00;31
+.xz 00;31
+.zst 00;31
+.tzst 00;31
+.bz2 00;31
+.bz 00;31
+.tbz 00;31
@ -565,6 +578,10 @@ index d2ea453..95d6879 100644
+.7z 00;31
+.rz 00;31
+.cab 00;31
+.wim 00;31
+.swm 00;31
+.dwm 00;31
+.esd 00;31
# image formats
-.jpg 01;35
@ -616,6 +633,8 @@ index d2ea453..95d6879 100644
-.emf 01;35
+.jpg 00;35
+.jpeg 00;35
+.mjpg 00;35
+.mjpeg 00;35
+.gif 00;35
+.bmp 00;35
+.pbm 00;35
@ -660,7 +679,7 @@ index d2ea453..95d6879 100644
+.cgm 00;35
+.emf 00;35
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
# https://wiki.xiph.org/MIME_Types_and_File_Extensions
-.ogv 01;35
-.ogx 01;35
+.ogv 00;35

View File

@ -1,82 +0,0 @@
From 12284825dcc5d9485ebaa78aedd93f450bad7b73 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
Date: Fri, 20 Jan 2017 12:40:35 +0000
Subject: [PATCH 1/2] date: fix TZ= regression
On 17/03/16 17:38, Paul Eggert wrote:
> On 03/16/2016 08:51 PM, Assaf Gordon wrote:
>> I suspect it has something to do with this commit:
>> commit 037e3b9847feb46cf6b58d99ce960d3987faaf52
>
> You're right, and thanks for that detailed bug report. I installed the
> attached patch, which fixed the bug for me.
This introduced a bug unfortunately due to the side effects of
parse_datetime().
parse_datetime resets the TZ env variable but doesn't call tzset().
Hence using the wrong timezone for output.
Previously localtime() called tzset() implicitly.
Perhaps we should call tzset() in parse_datetime() if needed?
I'm not sure as to whether this undoes the fix for bug 23035?
Anyway this avoids the issue on GNU/Linux.
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
---
src/date.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/date.c b/src/date.c
index 619a72b..2b3d890 100644
--- a/src/date.c
+++ b/src/date.c
@@ -571,6 +571,8 @@ show_date (const char *format, struct timespec when, timezone_t tz)
{
struct tm tm;
+ tzset ();
+
if (localtime_rz (tz, &when.tv_sec, &tm))
{
if (format == rfc_2822_format)
--
2.7.4
From 3c082157634bd4fbc79c26e9c56abb4da79e9a2d Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Fri, 20 Jan 2017 18:24:02 -0800
Subject: [PATCH 2/2] date: test for TZ= regression
Problem reported by Paul Wise for Debian, in:
https://bugs.debian.org/851934
This is fallout from the fix for GNU Bug#23035.
* tests/misc/date.pl: Test the fix.
Upstream-commit: b14be5085cd1aefd473a000456b21270e6070711
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
---
tests/misc/date-debug.sh | 4 ++--
tests/misc/date.pl | 6 ++++++
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/tests/misc/date.pl b/tests/misc/date.pl
index 7e45e98..be8b39e 100755
--- a/tests/misc/date.pl
+++ b/tests/misc/date.pl
@@ -291,6 +291,12 @@ my @Tests =
{ERR => "date: invalid date 'TZ=\"\"\"'\n"},
{EXIT => 1},
],
+
+ # https://bugs.debian.org/851934#10
+ ['cross-TZ-mishandled', "-d 'TZ=\"EST5\" 1970-01-01 00:00'",
+ {ENV => 'TZ=PST8'},
+ {OUT => 'Wed Dec 31 21:00:00 PST 1969'},
+ ],
);
# Repeat the cross-dst test, using Jan 1, 2005 and every interval from 1..364.
--
2.7.4

View File

@ -1,211 +1,7 @@
From 4f6cb65ce4d643aca0c6bf7db2e8b32c0d08eb89 Mon Sep 17 00:00:00 2001
From: Bruno Haible <bruno@clisp.org>
Date: Sat, 24 Dec 2016 18:21:59 +0100
Subject: [PATCH 1/2] lock test: Fix performance problem on multi-core
machines.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* tests/test-lock.c (USE_VOLATILE): New macro.
(struct atomic_int): New type.
(init_atomic_int, get_atomic_int_value, set_atomic_int_value): New
functions.
(lock_checker_done, rwlock_checker_done, reclock_checker_done): Define
as 'struct atomic_int'.
(lock_checker_thread, test_lock, rwlock_checker_thread, test_rwlock,
reclock_checker_thread, test_recursive_lock): Use the new functions.
Reported by Eric Blake in
https://www.redhat.com/archives/libvir-list/2012-March/msg00854.html
and by Pádraig Brady in
http://lists.gnu.org/archive/html/bug-gnulib/2016-12/msg00117.html.
Upstream-commit: 480d374e596a0ee3fed168ab42cd84c313ad3c89
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
---
gnulib-tests/test-lock.c | 79 ++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 67 insertions(+), 12 deletions(-)
diff --git a/gnulib-tests/test-lock.c b/gnulib-tests/test-lock.c
index cb734b4..aa6de27 100644
--- a/gnulib-tests/test-lock.c
+++ b/gnulib-tests/test-lock.c
@@ -50,6 +50,13 @@
Uncomment this to see if the operating system has a fair scheduler. */
#define EXPLICIT_YIELD 1
+/* Whether to use 'volatile' on some variables that communicate information
+ between threads. If set to 0, a lock is used to protect these variables.
+ If set to 1, 'volatile' is used; this is theoretically equivalent but can
+ lead to much slower execution (e.g. 30x slower total run time on a 40-core
+ machine. */
+#define USE_VOLATILE 0
+
/* Whether to print debugging messages. */
#define ENABLE_DEBUGGING 0
@@ -103,6 +110,51 @@
# define yield()
#endif
+#if USE_VOLATILE
+struct atomic_int {
+ volatile int value;
+};
+static void
+init_atomic_int (struct atomic_int *ai)
+{
+}
+static int
+get_atomic_int_value (struct atomic_int *ai)
+{
+ return ai->value;
+}
+static void
+set_atomic_int_value (struct atomic_int *ai, int new_value)
+{
+ ai->value = new_value;
+}
+#else
+struct atomic_int {
+ gl_lock_define (, lock)
+ int value;
+};
+static void
+init_atomic_int (struct atomic_int *ai)
+{
+ gl_lock_init (ai->lock);
+}
+static int
+get_atomic_int_value (struct atomic_int *ai)
+{
+ gl_lock_lock (ai->lock);
+ int ret = ai->value;
+ gl_lock_unlock (ai->lock);
+ return ret;
+}
+static void
+set_atomic_int_value (struct atomic_int *ai, int new_value)
+{
+ gl_lock_lock (ai->lock);
+ ai->value = new_value;
+ gl_lock_unlock (ai->lock);
+}
+#endif
+
#define ACCOUNT_COUNT 4
static int account[ACCOUNT_COUNT];
@@ -170,12 +222,12 @@ lock_mutator_thread (void *arg)
return NULL;
}
-static volatile int lock_checker_done;
+static struct atomic_int lock_checker_done;
static void *
lock_checker_thread (void *arg)
{
- while (!lock_checker_done)
+ while (get_atomic_int_value (&lock_checker_done) == 0)
{
dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ());
gl_lock_lock (my_lock);
@@ -200,7 +252,8 @@ test_lock (void)
/* Initialization. */
for (i = 0; i < ACCOUNT_COUNT; i++)
account[i] = 1000;
- lock_checker_done = 0;
+ init_atomic_int (&lock_checker_done);
+ set_atomic_int_value (&lock_checker_done, 0);
/* Spawn the threads. */
checkerthread = gl_thread_create (lock_checker_thread, NULL);
@@ -210,7 +263,7 @@ test_lock (void)
/* Wait for the threads to terminate. */
for (i = 0; i < THREAD_COUNT; i++)
gl_thread_join (threads[i], NULL);
- lock_checker_done = 1;
+ set_atomic_int_value (&lock_checker_done, 1);
gl_thread_join (checkerthread, NULL);
check_accounts ();
}
@@ -254,12 +307,12 @@ rwlock_mutator_thread (void *arg)
return NULL;
}
-static volatile int rwlock_checker_done;
+static struct atomic_int rwlock_checker_done;
static void *
rwlock_checker_thread (void *arg)
{
- while (!rwlock_checker_done)
+ while (get_atomic_int_value (&rwlock_checker_done) == 0)
{
dbgprintf ("Checker %p before check rdlock\n", gl_thread_self_pointer ());
gl_rwlock_rdlock (my_rwlock);
@@ -284,7 +337,8 @@ test_rwlock (void)
/* Initialization. */
for (i = 0; i < ACCOUNT_COUNT; i++)
account[i] = 1000;
- rwlock_checker_done = 0;
+ init_atomic_int (&rwlock_checker_done);
+ set_atomic_int_value (&rwlock_checker_done, 0);
/* Spawn the threads. */
for (i = 0; i < THREAD_COUNT; i++)
@@ -295,7 +349,7 @@ test_rwlock (void)
/* Wait for the threads to terminate. */
for (i = 0; i < THREAD_COUNT; i++)
gl_thread_join (threads[i], NULL);
- rwlock_checker_done = 1;
+ set_atomic_int_value (&rwlock_checker_done, 1);
for (i = 0; i < THREAD_COUNT; i++)
gl_thread_join (checkerthreads[i], NULL);
check_accounts ();
@@ -356,12 +410,12 @@ reclock_mutator_thread (void *arg)
return NULL;
}
-static volatile int reclock_checker_done;
+static struct atomic_int reclock_checker_done;
static void *
reclock_checker_thread (void *arg)
{
- while (!reclock_checker_done)
+ while (get_atomic_int_value (&reclock_checker_done) == 0)
{
dbgprintf ("Checker %p before check lock\n", gl_thread_self_pointer ());
gl_recursive_lock_lock (my_reclock);
@@ -386,7 +440,8 @@ test_recursive_lock (void)
/* Initialization. */
for (i = 0; i < ACCOUNT_COUNT; i++)
account[i] = 1000;
- reclock_checker_done = 0;
+ init_atomic_int (&reclock_checker_done);
+ set_atomic_int_value (&reclock_checker_done, 0);
/* Spawn the threads. */
checkerthread = gl_thread_create (reclock_checker_thread, NULL);
@@ -396,7 +451,7 @@ test_recursive_lock (void)
/* Wait for the threads to terminate. */
for (i = 0; i < THREAD_COUNT; i++)
gl_thread_join (threads[i], NULL);
- reclock_checker_done = 1;
+ set_atomic_int_value (&reclock_checker_done, 1);
gl_thread_join (checkerthread, NULL);
check_accounts ();
}
--
2.7.4
From 0d04ee8ddedb2bf33d64f148f246a3b7ec4fef21 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Mon, 23 Jan 2017 12:35:41 +0100
Subject: [PATCH 2/2] test-lock: disable the rwlock test
Subject: [PATCH] test-lock: disable the rwlock test
It hangs indefinitely if the system rwlock implementation does not
prevent writer starvation (and glibc does not implement it).

View File

@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJYPyRpAAoJEN9v2XEwYDfZ0I4P/3oaPYXMPEOKuDDpEcLumn26
gYIMQc1jIMbBNQe120gQmNPkRr5dTKt5Bap9qYkCj0pI/6VxVIWDo0xrOLYZi7AN
Xgr0kX2qLDFEH+EHkC1BpsAdpsgwfvLmVWPHS62CNKgVDgGiP1cRJZe8oVmlBCiR
3ES7pUsBfDn3hbdKNTTmMDtro1rQMOxfHkVCZLAva+JjdzpE+KTvzZzKkVuZZfJ/
Mi/ZySrXZXFvPBS7GXgop4x8EodyzQMeKO+nvpIUEBY1yLQgCvni5/CBI8w/EViD
DSjj0zWsCQkEjx6HCohi8sBHUYZ+M3lB4rkFk7aevdioPZUGfLkW31LT/cUJC/VV
MIQKWzQtZO/WCJuyEbWP2m25c4MtnnhTm5yoi29yT/CoTRlUWkIQpXm4oD1cJXHy
PpHveu8qM0qRaAtVdXE3pmapIMYUV4g7vxSuCjZRrgiDLhp/K7Lzt5xBhl++kPU2
U9uc202eah4Towo0pbHsuEJT0vk0GGLq8/17dCa/ss8wV+86ZLxl0kZYy4CNEnIW
vsCN6CJ5AoAEVrMN1F7ZJYnH4hoJedvIczThnAkNTqYYE3wnN9stOe28Oy/a0/tg
bt5/Mn0JbmQei890uU8zcEdUjidHqGV4hKk1E2UC4UCyHG/VcHv9gfr8OaD/xPDr
SoauDCHpBU7J7FT/DX+k
=vkKy
-----END PGP SIGNATURE-----

16
coreutils-8.27.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJYwOwaAAoJEN9v2XEwYDfZQrUP/RdXj/ug35e+u+VD1ts9/b8n
7JihJmxngEZQAJECNTMbJ7mNj6DhpMY0Jg/Hwg7zJT28T6QDeS1Iuk3Id4uM5eFa
CgHKAZumntSMTkQdNvnCEFEIqu+L8BtBYGcOaw66wAFNFw3jdJUUs2sOST2r46jR
N7aY9oARKJuHfgTZ2BI2zL0Q+poXM1O0k/U+BScE6c139zJsbg+1uM9kGVtJWPkM
EPLFWkbTgjYnt+qEFrDlWL0YFOS42sgR7P1sVfBC1nAu5lwgzPy62OtGv9WCEBhm
3+PRNZ0KLW8CKp06llG/0bG4QwssWs6p/vPwrRGeAg6pKsRNN1ni27AnDThiPgvz
YbBLgU+EZj1HuibvYArHXNKY2+O5ZC3nYU6bdAffl3TAtrGFA1ncZXGiFD5UgOQ2
V9Q38S41FUEwKGtf9tWGCRTxrb4FQ1CDzJglV9vHKetn4mgH/HpEG/q07k4RNW5d
ikfrS0xFxbqtLjlY3UqvtkrFyVQFY093ozsP7fKsq53JAtEWc3YvXR8UCbliU+gV
5qug0REBQafe9EAyH+oq0dzD2BZ3KtFcjtKI/2UzAf3idcyygsHgcEPQObqI8BfD
NscEMjdFY7+Zh5w2shQlyq4xr2aI2nXCX3+AMcS/6Yfg6W6fBvgIjtmXBrQsbWpV
DBcx50TVDa/ERBX1+FI1
=skPR
-----END PGP SIGNATURE-----

View File

@ -30,7 +30,7 @@ index 76474c2..0a9d221 100644
- : getgroups (0, NULL));
+ if (!username)
+ max_n_groups = getgroups(0, NULL);
+ else
+ else
+ {
+#ifdef HAVE_GETGROUPLIST
+ max_n_groups = 0;

View File

@ -22,7 +22,7 @@ index 380e020..310b349 100644
+ }
}
- while (false);
+
+
if (convert)
{
@ -50,7 +50,7 @@ index 3bbbd66..863a90a 100644
+ }
}
- while (false);
+
+
if (convert)
{

View File

@ -4,8 +4,8 @@ Date: Fri, 3 Feb 2017 12:26:53 +0100
Subject: [PATCH] fold.c: preserve new-lines in mutlibyte text
---
src/fold.c | 55 +++++++++++++++++++++++++++----------------------------
1 file changed, 27 insertions(+), 28 deletions(-)
src/fold.c | 49 ++++++++++++++++++++++++-------------------------
1 file changed, 24 insertions(+), 25 deletions(-)
diff --git a/src/fold.c b/src/fold.c
index d23edd5..8c232a7 100644
@ -43,15 +43,24 @@ index d23edd5..8c232a7 100644
- fwrite (line_out, sizeof(char), offset_out, stdout);
- START_NEW_LINE;
- continue;
-
+ case L'\b':
+ increment = (column > 0) ? -1 : 0;
+ break;
- case L'\b':
- increment = (column > 0) ? -1 : 0;
- break;
-
+ case L'\r':
+ increment = -1 * column;
+ break;
- case L'\r':
- increment = -1 * column;
- break;
-
+ case L'\t':
+ increment = 8 - column % 8;
+ break;
- case L'\t':
- increment = 8 - column % 8;
- break;
@ -60,18 +69,6 @@ index d23edd5..8c232a7 100644
- increment = wcwidth (wc);
- increment = (increment < 0) ? 0 : increment;
- }
+ case L'\b':
+ increment = (column > 0) ? -1 : 0;
+ break;
+
+ case L'\r':
+ increment = -1 * column;
+ break;
+
+ case L'\t':
+ increment = 8 - column % 8;
+ break;
+
+ default:
+ increment = wcwidth (wc);
+ increment = (increment < 0) ? 0 : increment;

View File

@ -1,3 +1,17 @@
From 7a7c776a4e228d180e74614fd8c8afcad5d4bdf7 Mon Sep 17 00:00:00 2001
From: Jakub Martisko <jamartis@redhat.com>
Date: Thu, 7 Jul 2016 12:53:26 +0200
Subject: [PATCH] coreutils-i18n-un-expand-BOM.patch
---
src/expand-common.c | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++
src/expand-common.h | 12 ++++++
src/expand.c | 45 +++++++++++++++++++-
src/unexpand.c | 43 ++++++++++++++++++-
tests/expand/mb.sh | 71 ++++++++++++++++++++++++++++++++
tests/unexpand/mb.sh | 59 ++++++++++++++++++++++++++
6 files changed, 342 insertions(+), 2 deletions(-)
diff --git a/src/expand-common.c b/src/expand-common.c
index 4657e46..97cbb09 100644
--- a/src/expand-common.c
@ -10,8 +24,8 @@ index 4657e46..97cbb09 100644
#include "system.h"
#include "die.h"
#include "error.h"
@@ -85,6 +86,119 @@ add_tab_stop (uintmax_t tabval)
}
@@ -105,6 +106,119 @@ set_extend_size (uintmax_t tabval)
return ok;
}
+extern int
@ -40,12 +54,12 @@ index 4657e46..97cbb09 100644
+check_utf_locale(void)
+{
+ char* locale = setlocale (LC_CTYPE , NULL);
+ if (locale == NULL)
+ if (locale == NULL)
+ {
+ return false;
+ }
+ else if (strcasestr(locale, "utf8") == NULL && strcasestr(locale, "utf-8") == NULL)
+ {
+ {
+ return false;
+ }
+ return true;
@ -147,7 +161,7 @@ index 8cb2079..763bfda 100644
+extern bool
+check_bom(FILE* fp, mb_file_t *mbf);
+
+extern void
+extern void
+print_bom(void);
+
/* Add tab stop TABVAL to the end of 'tab_list'. */
@ -161,14 +175,13 @@ index 310b349..4136824 100644
FILE *fp = next_file (NULL);
mb_file_t mbf;
mbf_char_t c;
-
+ /* True if the starting locale is utf8. */
+ bool using_utf_locale;
+
+
+ /* True if the first file contains BOM header. */
+ bool found_bom;
+ using_utf_locale=check_utf_locale();
+
if (!fp)
return;
-
@ -178,13 +191,13 @@ index 310b349..4136824 100644
+ if (using_utf_locale == false && found_bom == true)
+ {
+ /*try using some predefined locale */
+
+
+ if (set_utf_locale () != 0)
+ {
+ error (EXIT_FAILURE, errno, _("cannot set UTF-8 locale"));
+ }
+ }
+
+
+
+ if (found_bom == true)
+ {
@ -212,7 +225,7 @@ index 310b349..4136824 100644
+ {
+ if(using_utf_locale==false && found_bom==true)
+ {
+ /*First file conatined BOM header - locale was switched to UTF
+ /*First file conatined BOM header - locale was switched to UTF
+ /*all subsequent files should contain BOM. */
+ error (EXIT_FAILURE, errno, _("combination of files with and without BOM header"));
+ }
@ -231,7 +244,7 @@ index 863a90a..5681b58 100644
mbf_char_t *pending_blank;
+ /* True if the starting locale is utf8. */
+ bool using_utf_locale;
+
+
+ /* True if the first file contains BOM header. */
+ bool found_bom;
+ using_utf_locale=check_utf_locale();
@ -240,11 +253,11 @@ index 863a90a..5681b58 100644
return;
+ mbf_init (mbf, fp);
+ found_bom=check_bom(fp,&mbf);
+
+ if (using_utf_locale == false && found_bom == true)
+ {
+ /*try using some predefined locale */
+
+ if (set_utf_locale () != 0)
+ {
+ error (EXIT_FAILURE, errno, _("cannot set UTF-8 locale"));
@ -282,7 +295,7 @@ index 863a90a..5681b58 100644
+ {
+ if(using_utf_locale==false && found_bom==true)
+ {
+ /*First file conatined BOM header - locale was switched to UTF
+ /*First file conatined BOM header - locale was switched to UTF
+ /*all subsequent files should contain BOM. */
+ error (EXIT_FAILURE, errno, _("combination of files with and without BOM header"));
+ }
@ -301,7 +314,7 @@ index 031be7a..1621c84 100755
+
+
+#BOM header test 1
+#BOM header test 1
+printf "\xEF\xBB\xBF" > in; cat <<\EOF >> in || framework_failure_
+1234567812345678123456781
+. . . .
@ -380,7 +393,7 @@ index 8d75652..9d4ee3e 100755
unexpand -a < in > out || fail=1
compare exp out > /dev/null 2>&1 || fail=1
+
+#BOM header test 1
+#BOM header test 1
+printf "\xEF\xBB\xBF" > in; cat <<\EOF >> in || framework_failure_
+1234567812345678123456781
+. . . .
@ -438,3 +451,6 @@ index 8d75652..9d4ee3e 100755
+
+LC_ALL=C unexpand in in > out || fail=1
+compare exp out > /dev/null 2>&1 || fail=1
--
2.9.3

View File

@ -315,7 +315,7 @@ index 8cd0d6b..d23edd5 100644
+ fwrite (line_out, sizeof(char), offset_out, stdout);
+ START_NEW_LINE;
+ continue;
+
+
+ case L'\b':
+ increment = (column > 0) ? -1 : 0;
+ break;
@ -672,7 +672,7 @@ index 98b461c..9990f38 100644
+ extract_field (line, ptr, lim - ptr);
+}
+#endif
+
+
static void
freeline (struct line *line)
{
@ -2843,7 +2843,7 @@ index 87a0c93..9f755d9 100644
+ while (pos < size)
+ {
+ MBCHAR_TO_WCHAR (wc, mblength, lp, pos, size, statep, convfail);
+
+
+ if (convfail || !(iswblank (wc) || wc == '\n'))
+ {
+ pos += mblength;
@ -2886,7 +2886,7 @@ index 87a0c93..9f755d9 100644
if (check_chars < oldlen)
oldlen = check_chars;
if (check_chars < newlen)
@@ -295,14 +401,103 @@ different (char *old, char *new, size_t oldlen, size_t newlen)
@@ -295,15 +401,104 @@ different (char *old, char *new, size_t oldlen, size_t newlen)
if (ignore_case)
{
@ -2918,8 +2918,8 @@ index 87a0c93..9f755d9 100644
+
+ return xmemcoll (copy_old, oldlen, copy_new, newlen);
+
+}
+
}
+#if HAVE_MBRTOWC
+static int
+different_multi (const char *old, const char *new, size_t oldlen, size_t newlen, mbstate_t oldstate, mbstate_t newstate)
@ -2990,11 +2990,12 @@ index 87a0c93..9f755d9 100644
+ free (copy[1]);
+ return rc;
+
}
+}
+#endif
+
/* Output the line in linebuffer LINE to standard output
provided that the switches say it should be output.
MATCH is true if the line matches the previous line.
@@ -367,19 +562,38 @@ check_file (const char *infile, const char *outfile, char delimiter)
char *prevfield IF_LINT ( = NULL);
size_t prevlen IF_LINT ( = 0);
@ -3156,7 +3157,7 @@ diff --git a/tests/local.mk b/tests/local.mk
index 568944e..192f776 100644
--- a/tests/local.mk
+++ b/tests/local.mk
@@ -350,6 +350,8 @@ all_tests = \
@@ -352,6 +352,8 @@ all_tests = \
tests/misc/sort-discrim.sh \
tests/misc/sort-files0-from.pl \
tests/misc/sort-float.sh \
@ -3211,8 +3212,8 @@ index 8a9cad1..9293e39 100755
my @Tests =
(
['t1', '--tabs=3', {IN=>"a\tb"}, {OUT=>"a b"}],
@@ -140,6 +149,8 @@ my @Tests =
@@ -152,6 +161,8 @@ my @Tests =
['trail9', '--tab=1,2 -t/5',{IN=>"\ta\tb\tc"}, {OUT=>" a b c"}],
# Test errors
+ # FIXME: The following tests contain quoting specific to LC_MESSAGES
@ -3220,8 +3221,8 @@ index 8a9cad1..9293e39 100755
['e1', '--tabs="a"', {IN=>''}, {OUT=>''}, {EXIT=>1},
{ERR => "$prog: tab size contains invalid character(s): 'a'\n"}],
['e2', "-t $UINTMAX_OFLOW", {IN=>''}, {OUT=>''}, {EXIT=>1},
@@ -150,6 +161,37 @@ my @Tests =
{ERR => "$prog: tab sizes must be ascending\n"}],
@@ -168,6 +179,37 @@ my @Tests =
{ERR => "$prog: '/' specifier not at start of number: '/'\n"}],
);
+if ($mb_locale ne 'C')
@ -3533,7 +3534,7 @@ index c3e7f8e..6ecd3ff 100755
# Since each test is run with a file name and with redirected stdin,
# the name in the diagnostic is either the file name or "-".
# Normalize each diagnostic to use '-'.
@@ -424,6 +429,38 @@ foreach my $t (@Tests)
@@ -423,6 +428,38 @@ foreach my $t (@Tests)
}
}
@ -3572,7 +3573,7 @@ index c3e7f8e..6ecd3ff 100755
@Tests = triple_test \@Tests;
# Remember that triple_test creates from each test with exactly one "IN"
@@ -433,6 +470,7 @@ foreach my $t (@Tests)
@@ -432,6 +469,7 @@ foreach my $t (@Tests)
# Remove the IN_PIPE version of the "output-is-input" test above.
# The others aren't susceptible because they have three inputs each.
@Tests = grep {$_->[0] ne 'output-is-input.p'} @Tests;

View File

@ -48,7 +48,7 @@ index 1b528c6..25dbb88 100644
+ case 'c':
+ fprintf (stderr, "%s: warning: option '-c' is deprecated, please use '--preserve=context' instead\n", argv[0]);
+ if ( x.set_security_context ) {
+ if ( x.set_security_context ) {
+ (void) fprintf(stderr, "%s: cannot force target context and preserve it\n", argv[0]);
+ exit( 1 );
+ }

View File

@ -1,11 +1,11 @@
Summary: A set of basic GNU tools commonly used in shell scripts
Name: coreutils
Version: 8.26
Release: 7%{?dist}
Version: 8.27
Release: 1%{?dist}
License: GPLv3+
Group: System Environment/Base
Url: http://www.gnu.org/software/coreutils/
Source0: ftp://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz
Url: https://www.gnu.org/software/coreutils/
Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.xz
Source50: supported_utils
Source105: coreutils-colorls.sh
Source106: coreutils-colorls.csh
@ -19,9 +19,6 @@ Source10: coreutils-find-requires.sh
# disable the test-lock gnulib test prone to deadlock
Patch1: coreutils-8.26-test-lock.patch
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=851934#10
Patch2: coreutils-8.26-date-fix-tz-regre.patch
#add note about no difference between binary/text mode on Linux - md5sum manpage
Patch101: coreutils-6.10-manpages.patch
# downstream changes to default DIR_COLORS
@ -172,6 +169,8 @@ including documentation and translations.
# will be modified by coreutils-8.25-DIR_COLORS.patch
tee DIR_COLORS{,.256color,.lightbgcolor} <src/dircolors.hin >/dev/null
# git add DIR_COLORS{,.256color,.lightbgcolor}
# git commit -m "clone DIR_COLORS before patching"
# apply all patches
%autopatch -p1
@ -301,6 +300,9 @@ fi
%license COPYING
%changelog
* Thu Mar 09 2017 Kamil Dudka <kdudka@redhat.com> - 8.27-1
- new upstream release 8.27
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 8.26-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

View File

@ -1 +1 @@
d5aa2072f662d4118b9f4c63b94601a6 coreutils-8.26.tar.xz
SHA512 (coreutils-8.27.tar.xz) = abf3280aaa54e9bd5851df0eda2af1de1017ca174633e52d1e592455d46ea0e99812dda46d2f320e979553cef271485d8818c595bba6ed31264511a511c93679