forked from pool/coreutils
- Update to 8.14. Changes since 8.12:
Bug fixes: - ls --dereference no longer outputs erroneous "argetm" strings for dangling symlinks when an 'ln=target' entry is in $LS_COLORS. [bug introduced in fileutils-4.0] - ls -lL symlink once again properly prints "+" when the referent has an ACL. [bug introduced in coreutils-8.13] - sort -g no longer infloops for certain inputs containing NaNs [bug introduced in coreutils-8.5] - chown and chgrp with the -v --from= options, now output the correct owner. I.E. for skipped files, the original ownership is output, not the new one. [bug introduced in sh-utils-2.0g] - cp -r could mistakenly change the permissions of an existing destination directory. [bug introduced in coreutils-6.8] - cp -u -p would fail to preserve one hard link for each up-to-date copy of a src-hard-linked name in the destination tree. I.e., if s/a and s/b are hard-linked and dst/s/a is up to date, "cp -up s dst" would copy s/b to dst/s/b rather than simply linking dst/s/b to dst/s/a. [This bug appears to have been present in "the beginning".] - fts-using tools (rm, du, chmod, chgrp, chown, chcon) no longer use memory proportional to the number of entries in each directory they process. Before, rm -rf 4-million-entry-directory would consume about 1GiB of memory. Now, it uses less than 30MB, no matter how many entries there are. [this bug was inherent in the use of fts: thus, for rm the bug was introduced in coreutils-8.0. The prior implementation of rm did not use as much memory. du, chmod, chgrp and chown started using fts in 6.0. chcon was added in coreutils-6.9.91 with fts support. ] - pr -T no longer ignores a specified LAST_PAGE to stop at. [bug introduced in textutils-1.19q] - printf '%d' '"' no longer accesses out-of-bounds memory in the diagnostic. [bug introduced in sh-utils-1.16] - split --number l/... no longer creates extraneous files in certain cases. [bug introduced in coreutils-8.8] - timeout now sends signals to commands that create their own process group. timeout is no longer confused when starting off with a child process. [bugs introduced in coreutils-7.0] - unexpand -a now aligns correctly when there are spaces spanning a tabstop, followed by a tab. In that case a space was dropped, causing misalignment. We also now ensure that a space never precedes a tab. [bug introduced in coreutils-5.3.0] New features: - date now accepts ISO 8601 date-time strings with "T" as the separator. It has long parsed dates like "2004-02-29 16:21:42" with a space between the date and time strings. Now it also parses "2004-02-29T16:21:42" and fractional-second and time-zone-annotated variants like "2004-02-29T16:21:42.333-07:00" - md5sum accepts the new --strict option. With --check, it makes the tool exit non-zero for any invalid input line, rather than just warning. This also affects sha1sum, sha224sum, sha384sum and sha512sum. - split accepts a new --filter=CMD option. With it, split filters output through CMD. CMD may use the $FILE environment variable, which is set to the nominal output file name for each invocation of CMD. For example, to split a file into 3 approximately equal parts, which are then compressed: split -n3 --filter='xz > $FILE.xz' big Note the use of single quotes, not double quotes. That creates files named xaa.xz, xab.xz and xac.xz. - timeout accepts a new --foreground option, to support commands not started directly from a shell prompt, where the command is interactive or needs to receive signals initiated from the terminal. Improvements: - md5sum --check now supports the -r format from the corresponding BSD tool. This also affects sha1sum, sha224sum, sha384sum and sha512sum. - pwd now works also on systems without openat. On such systems, pwd would fail when run from a directory whose absolute name contained more than PATH_MAX / 3 components. The df, stat and readlink programs are also affected due to their use of the canonicalize_* functions. - join --check-order now prints "join: FILE:LINE_NUMBER: bad_line" for an unsorted input, rather than e.g., "join: file 1 is not in sorted order". - shuf outputs small subsets of large permutations much more efficiently. For example `shuf -i1-$((2**32-1)) -n2` no longer exhausts memory. - stat -f now recognizes the GPFS, MQUEUE and PSTOREFS file system types. - timeout now supports sub-second timeouts. Changes in behavior: - chmod, chown and chgrp now output the original attributes in messages, when -v or -c specified. - cp -au (where --preserve=links is implicit) may now replace newer files in the destination, to mirror hard links from the source. OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=128
This commit is contained in:
parent
8ecb2df7ed
commit
51dadaabd0
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f9ac025bf430e6d3dab722a31ff12eba0e4a38652e097fa24ea2908a0a0262e9
|
||||
size 95088
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1e3c0182cdd0042871741d694ae1166dd90eb9f03a16c0aac0a9072a7aa92faf
|
||||
size 4842776
|
3
coreutils-8.14.de.po.xz
Normal file
3
coreutils-8.14.de.po.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ed335a4c08fd5dcb7735ebf472d6853a3656008c44f89b4c93bac89b19a48114
|
||||
size 96300
|
3
coreutils-8.14.tar.xz
Normal file
3
coreutils-8.14.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:202a0fe64bc7a7b6eaef45af4d2813a4dc17a319d1f33aab9df039405aeab566
|
||||
size 5064104
|
@ -19,8 +19,8 @@
|
||||
|
||||
Index: lib/linebuffer.h
|
||||
===================================================================
|
||||
--- lib/linebuffer.h.orig 2011-01-06 09:47:56.000000000 +0100
|
||||
+++ lib/linebuffer.h 2011-02-10 15:59:59.159604973 +0100
|
||||
--- lib/linebuffer.h.orig 2011-04-24 19:21:45.000000000 +0200
|
||||
+++ lib/linebuffer.h 2011-10-13 15:53:04.233558260 +0200
|
||||
@@ -21,6 +21,11 @@
|
||||
|
||||
# include <stdio.h>
|
||||
@ -45,8 +45,8 @@ Index: lib/linebuffer.h
|
||||
/* Initialize linebuffer LINEBUFFER for use. */
|
||||
Index: src/cut.c
|
||||
===================================================================
|
||||
--- src/cut.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/cut.c 2011-02-10 16:00:21.825167755 +0100
|
||||
--- src/cut.c.orig 2011-10-02 11:20:54.000000000 +0200
|
||||
+++ src/cut.c 2011-10-13 15:53:04.234558247 +0200
|
||||
@@ -28,6 +28,11 @@
|
||||
#include <assert.h>
|
||||
#include <getopt.h>
|
||||
@ -247,7 +247,7 @@ Index: src/cut.c
|
||||
}
|
||||
|
||||
max_range_endpoint = 0;
|
||||
@@ -580,6 +662,63 @@ cut_bytes (FILE *stream)
|
||||
@@ -582,6 +664,63 @@ cut_bytes (FILE *stream)
|
||||
}
|
||||
}
|
||||
|
||||
@ -311,7 +311,7 @@ Index: src/cut.c
|
||||
/* Read from stream STREAM, printing to standard output any selected fields. */
|
||||
|
||||
static void
|
||||
@@ -702,13 +841,192 @@ cut_fields (FILE *stream)
|
||||
@@ -704,13 +843,192 @@ cut_fields (FILE *stream)
|
||||
}
|
||||
}
|
||||
|
||||
@ -507,7 +507,7 @@ Index: src/cut.c
|
||||
}
|
||||
|
||||
/* Process file FILE to standard output.
|
||||
@@ -760,6 +1078,8 @@ main (int argc, char **argv)
|
||||
@@ -762,6 +1080,8 @@ main (int argc, char **argv)
|
||||
bool ok;
|
||||
bool delim_specified = false;
|
||||
char *spec_list_string IF_LINT ( = NULL);
|
||||
@ -516,7 +516,7 @@ Index: src/cut.c
|
||||
|
||||
initialize_main (&argc, &argv);
|
||||
set_program_name (argv[0]);
|
||||
@@ -782,7 +1102,6 @@ main (int argc, char **argv)
|
||||
@@ -784,7 +1104,6 @@ main (int argc, char **argv)
|
||||
switch (optc)
|
||||
{
|
||||
case 'b':
|
||||
@ -524,7 +524,7 @@ Index: src/cut.c
|
||||
/* Build the byte list. */
|
||||
if (operating_mode != undefined_mode)
|
||||
FATAL_ERROR (_("only one type of list may be specified"));
|
||||
@@ -790,6 +1109,14 @@ main (int argc, char **argv)
|
||||
@@ -792,6 +1111,14 @@ main (int argc, char **argv)
|
||||
spec_list_string = optarg;
|
||||
break;
|
||||
|
||||
@ -539,7 +539,7 @@ Index: src/cut.c
|
||||
case 'f':
|
||||
/* Build the field list. */
|
||||
if (operating_mode != undefined_mode)
|
||||
@@ -801,10 +1128,35 @@ main (int argc, char **argv)
|
||||
@@ -803,10 +1130,35 @@ main (int argc, char **argv)
|
||||
case 'd':
|
||||
/* New delimiter. */
|
||||
/* Interpret -d '' to mean `use the NUL byte as the delimiter.' */
|
||||
@ -579,7 +579,7 @@ Index: src/cut.c
|
||||
break;
|
||||
|
||||
case OUTPUT_DELIMITER_OPTION:
|
||||
@@ -817,6 +1169,7 @@ main (int argc, char **argv)
|
||||
@@ -819,6 +1171,7 @@ main (int argc, char **argv)
|
||||
break;
|
||||
|
||||
case 'n':
|
||||
@ -587,7 +587,7 @@ Index: src/cut.c
|
||||
break;
|
||||
|
||||
case 's':
|
||||
@@ -839,7 +1192,7 @@ main (int argc, char **argv)
|
||||
@@ -841,7 +1194,7 @@ main (int argc, char **argv)
|
||||
if (operating_mode == undefined_mode)
|
||||
FATAL_ERROR (_("you must specify a list of bytes, characters, or fields"));
|
||||
|
||||
@ -596,7 +596,7 @@ Index: src/cut.c
|
||||
FATAL_ERROR (_("an input delimiter may be specified only\
|
||||
when operating on fields"));
|
||||
|
||||
@@ -866,15 +1219,34 @@ main (int argc, char **argv)
|
||||
@@ -868,15 +1221,34 @@ main (int argc, char **argv)
|
||||
}
|
||||
|
||||
if (!delim_specified)
|
||||
@ -639,8 +639,8 @@ Index: src/cut.c
|
||||
if (optind == argc)
|
||||
Index: src/expand.c
|
||||
===================================================================
|
||||
--- src/expand.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/expand.c 2011-02-10 15:59:59.229600533 +0100
|
||||
--- src/expand.c.orig 2011-10-10 09:56:46.000000000 +0200
|
||||
+++ src/expand.c 2011-10-13 15:53:04.234558247 +0200
|
||||
@@ -38,12 +38,29 @@
|
||||
#include <stdio.h>
|
||||
#include <getopt.h>
|
||||
@ -830,8 +830,8 @@ Index: src/expand.c
|
||||
error (EXIT_FAILURE, errno, "-");
|
||||
Index: src/fold.c
|
||||
===================================================================
|
||||
--- src/fold.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/fold.c 2011-02-10 15:59:59.271597870 +0100
|
||||
--- src/fold.c.orig 2011-10-02 11:20:54.000000000 +0200
|
||||
+++ src/fold.c 2011-10-13 15:53:04.235558234 +0200
|
||||
@@ -22,12 +22,34 @@
|
||||
#include <getopt.h>
|
||||
#include <sys/types.h>
|
||||
@ -1232,8 +1232,8 @@ Index: src/fold.c
|
||||
case 's': /* Break at word boundaries. */
|
||||
Index: src/join.c
|
||||
===================================================================
|
||||
--- src/join.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/join.c 2011-02-10 16:03:29.484268348 +0100
|
||||
--- src/join.c.orig 2011-10-10 09:56:46.000000000 +0200
|
||||
+++ src/join.c 2011-10-13 15:54:10.933662792 +0200
|
||||
@@ -22,18 +22,32 @@
|
||||
#include <sys/types.h>
|
||||
#include <getopt.h>
|
||||
@ -1268,7 +1268,7 @@ Index: src/join.c
|
||||
/* The official name of this program (e.g., no `g' prefix). */
|
||||
#define PROGRAM_NAME "join"
|
||||
|
||||
@@ -129,10 +143,12 @@ static struct outlist outlist_head;
|
||||
@@ -135,10 +149,12 @@ static struct outlist outlist_head;
|
||||
/* Last element in `outlist', where a new element can be added. */
|
||||
static struct outlist *outlist_end = &outlist_head;
|
||||
|
||||
@ -1285,7 +1285,7 @@ Index: src/join.c
|
||||
|
||||
/* If nonzero, check that the input is correctly ordered. */
|
||||
static enum
|
||||
@@ -257,13 +273,14 @@ xfields (struct line *line)
|
||||
@@ -263,13 +279,14 @@ xfields (struct line *line)
|
||||
if (ptr == lim)
|
||||
return;
|
||||
|
||||
@ -1303,7 +1303,7 @@ Index: src/join.c
|
||||
{
|
||||
/* Skip leading blanks before the first field. */
|
||||
while (isblank (to_uchar (*ptr)))
|
||||
@@ -287,6 +304,148 @@ xfields (struct line *line)
|
||||
@@ -293,6 +310,148 @@ xfields (struct line *line)
|
||||
extract_field (line, ptr, lim - ptr);
|
||||
}
|
||||
|
||||
@ -1452,7 +1452,7 @@ Index: src/join.c
|
||||
static void
|
||||
freeline (struct line *line)
|
||||
{
|
||||
@@ -308,56 +467,115 @@ keycmp (struct line const *line1, struct
|
||||
@@ -314,56 +473,115 @@ keycmp (struct line const *line1, struct
|
||||
size_t jf_1, size_t jf_2)
|
||||
{
|
||||
/* Start of field to compare in each file. */
|
||||
@ -1591,19 +1591,20 @@ Index: src/join.c
|
||||
}
|
||||
|
||||
/* Check that successive input lines PREV and CURRENT from input file
|
||||
@@ -438,6 +656,11 @@ get_line (FILE *fp, struct line **linep,
|
||||
return false;
|
||||
@@ -455,6 +673,12 @@ get_line (FILE *fp, struct line **linep,
|
||||
}
|
||||
++line_no[which - 1];
|
||||
|
||||
+#if HAVE_MBRTOWC
|
||||
+ if (MB_CUR_MAX > 1)
|
||||
+ xfields_multibyte (line);
|
||||
+ else
|
||||
+#endif
|
||||
+
|
||||
xfields (line);
|
||||
|
||||
if (prevline[which - 1])
|
||||
@@ -536,22 +759,29 @@ prfield (size_t n, struct line const *li
|
||||
@@ -553,22 +777,29 @@ prfield (size_t n, struct line const *li
|
||||
}
|
||||
|
||||
/* Output all the fields in line, other than the join field. */
|
||||
@ -1636,7 +1637,7 @@ Index: src/join.c
|
||||
prfield (i, line);
|
||||
}
|
||||
}
|
||||
@@ -562,7 +792,6 @@ static void
|
||||
@@ -579,7 +810,6 @@ static void
|
||||
prjoin (struct line const *line1, struct line const *line2)
|
||||
{
|
||||
const struct outlist *outlist;
|
||||
@ -1644,7 +1645,7 @@ Index: src/join.c
|
||||
size_t field;
|
||||
struct line const *line;
|
||||
|
||||
@@ -596,7 +825,7 @@ prjoin (struct line const *line1, struct
|
||||
@@ -613,7 +843,7 @@ prjoin (struct line const *line1, struct
|
||||
o = o->next;
|
||||
if (o == NULL)
|
||||
break;
|
||||
@ -1653,7 +1654,7 @@ Index: src/join.c
|
||||
}
|
||||
putchar ('\n');
|
||||
}
|
||||
@@ -1075,21 +1304,46 @@ main (int argc, char **argv)
|
||||
@@ -1091,21 +1321,46 @@ main (int argc, char **argv)
|
||||
|
||||
case 't':
|
||||
{
|
||||
@ -1711,8 +1712,8 @@ Index: src/join.c
|
||||
case NOCHECK_ORDER_OPTION:
|
||||
Index: src/pr.c
|
||||
===================================================================
|
||||
--- src/pr.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/pr.c 2011-02-10 15:59:59.310595397 +0100
|
||||
--- src/pr.c.orig 2011-10-10 09:56:46.000000000 +0200
|
||||
+++ src/pr.c 2011-10-13 15:53:04.237558208 +0200
|
||||
@@ -312,6 +312,32 @@
|
||||
|
||||
#include <getopt.h>
|
||||
@ -2437,8 +2438,8 @@ Index: src/pr.c
|
||||
|
||||
Index: src/sort.c
|
||||
===================================================================
|
||||
--- src/sort.c.orig 2011-02-03 11:24:35.000000000 +0100
|
||||
+++ src/sort.c 2011-02-10 16:00:21.720174413 +0100
|
||||
--- src/sort.c.orig 2011-10-10 09:56:46.000000000 +0200
|
||||
+++ src/sort.c 2011-10-13 15:55:54.951266167 +0200
|
||||
@@ -22,11 +22,20 @@
|
||||
|
||||
#include <config.h>
|
||||
@ -2460,7 +2461,7 @@ Index: src/sort.c
|
||||
#include "system.h"
|
||||
#include "argmatch.h"
|
||||
#include "error.h"
|
||||
@@ -163,12 +172,34 @@ static int thousands_sep;
|
||||
@@ -167,12 +176,34 @@ static int thousands_sep;
|
||||
|
||||
/* Nonzero if the corresponding locales are hard. */
|
||||
static bool hard_LC_COLLATE;
|
||||
@ -2496,7 +2497,7 @@ Index: src/sort.c
|
||||
/* The kind of blanks for '-b' to skip in various options. */
|
||||
enum blanktype { bl_start, bl_end, bl_both };
|
||||
|
||||
@@ -335,13 +366,11 @@ static bool reverse;
|
||||
@@ -343,13 +374,11 @@ static bool reverse;
|
||||
they were read if all keys compare equal. */
|
||||
static bool stable;
|
||||
|
||||
@ -2513,7 +2514,7 @@ Index: src/sort.c
|
||||
|
||||
/* Flag to remove consecutive duplicate lines from the output.
|
||||
Only the last of a sequence of equal lines will be output. */
|
||||
@@ -775,6 +804,46 @@ reap_all (void)
|
||||
@@ -783,6 +812,46 @@ reap_all (void)
|
||||
reap (-1);
|
||||
}
|
||||
|
||||
@ -2560,7 +2561,7 @@ Index: src/sort.c
|
||||
/* Clean up any remaining temporary files. */
|
||||
|
||||
static void
|
||||
@@ -1207,7 +1276,7 @@ zaptemp (char const *name)
|
||||
@@ -1215,7 +1284,7 @@ zaptemp (char const *name)
|
||||
free (node);
|
||||
}
|
||||
|
||||
@ -2569,7 +2570,7 @@ Index: src/sort.c
|
||||
|
||||
static int
|
||||
struct_month_cmp (void const *m1, void const *m2)
|
||||
@@ -1222,7 +1291,7 @@ struct_month_cmp (void const *m1, void c
|
||||
@@ -1230,7 +1299,7 @@ struct_month_cmp (void const *m1, void c
|
||||
/* Initialize the character class tables. */
|
||||
|
||||
static void
|
||||
@ -2578,7 +2579,7 @@ Index: src/sort.c
|
||||
{
|
||||
size_t i;
|
||||
|
||||
@@ -1234,7 +1303,7 @@ inittables (void)
|
||||
@@ -1242,7 +1311,7 @@ inittables (void)
|
||||
fold_toupper[i] = toupper (i);
|
||||
}
|
||||
|
||||
@ -2587,7 +2588,7 @@ Index: src/sort.c
|
||||
/* If we're not in the "C" locale, read different names for months. */
|
||||
if (hard_LC_TIME)
|
||||
{
|
||||
@@ -1316,6 +1385,84 @@ specify_nmerge (int oi, char c, char con
|
||||
@@ -1324,6 +1393,84 @@ specify_nmerge (int oi, char c, char con
|
||||
xstrtol_fatal (e, oi, c, long_options, s);
|
||||
}
|
||||
|
||||
@ -2672,7 +2673,7 @@ Index: src/sort.c
|
||||
/* Specify the amount of main memory to use when sorting. */
|
||||
static void
|
||||
specify_sort_size (int oi, char c, char const *s)
|
||||
@@ -1544,7 +1691,7 @@ buffer_linelim (struct buffer const *buf
|
||||
@@ -1552,7 +1699,7 @@ buffer_linelim (struct buffer const *buf
|
||||
by KEY in LINE. */
|
||||
|
||||
static char *
|
||||
@ -2681,7 +2682,7 @@ Index: src/sort.c
|
||||
{
|
||||
char *ptr = line->text, *lim = ptr + line->length - 1;
|
||||
size_t sword = key->sword;
|
||||
@@ -1553,10 +1700,10 @@ begfield (struct line const *line, struc
|
||||
@@ -1561,10 +1708,10 @@ begfield (struct line const *line, struc
|
||||
/* The leading field separator itself is included in a field when -t
|
||||
is absent. */
|
||||
|
||||
@ -2694,7 +2695,7 @@ Index: src/sort.c
|
||||
++ptr;
|
||||
if (ptr < lim)
|
||||
++ptr;
|
||||
@@ -1582,11 +1729,70 @@ begfield (struct line const *line, struc
|
||||
@@ -1590,11 +1737,70 @@ begfield (struct line const *line, struc
|
||||
return ptr;
|
||||
}
|
||||
|
||||
@ -2766,7 +2767,7 @@ Index: src/sort.c
|
||||
{
|
||||
char *ptr = line->text, *lim = ptr + line->length - 1;
|
||||
size_t eword = key->eword, echar = key->echar;
|
||||
@@ -1601,10 +1807,10 @@ limfield (struct line const *line, struc
|
||||
@@ -1609,10 +1815,10 @@ limfield (struct line const *line, struc
|
||||
`beginning' is the first character following the delimiting TAB.
|
||||
Otherwise, leave PTR pointing at the first `blank' character after
|
||||
the preceding field. */
|
||||
@ -2779,7 +2780,7 @@ Index: src/sort.c
|
||||
++ptr;
|
||||
if (ptr < lim && (eword || echar))
|
||||
++ptr;
|
||||
@@ -1650,10 +1856,10 @@ limfield (struct line const *line, struc
|
||||
@@ -1658,10 +1864,10 @@ limfield (struct line const *line, struc
|
||||
*/
|
||||
|
||||
/* Make LIM point to the end of (one byte past) the current field. */
|
||||
@ -2792,7 +2793,7 @@ Index: src/sort.c
|
||||
if (newlim)
|
||||
lim = newlim;
|
||||
}
|
||||
@@ -1684,6 +1890,130 @@ limfield (struct line const *line, struc
|
||||
@@ -1692,6 +1898,130 @@ limfield (struct line const *line, struc
|
||||
return ptr;
|
||||
}
|
||||
|
||||
@ -2923,7 +2924,7 @@ Index: src/sort.c
|
||||
/* Fill BUF reading from FP, moving buf->left bytes from the end
|
||||
of buf->buf to the beginning first. If EOF is reached and the
|
||||
file wasn't terminated by a newline, supply one. Set up BUF's line
|
||||
@@ -1770,8 +2100,22 @@ fillbuf (struct buffer *buf, FILE *fp, c
|
||||
@@ -1778,8 +2108,22 @@ fillbuf (struct buffer *buf, FILE *fp, c
|
||||
else
|
||||
{
|
||||
if (key->skipsblanks)
|
||||
@ -2948,7 +2949,7 @@ Index: src/sort.c
|
||||
line->keybeg = line_start;
|
||||
}
|
||||
}
|
||||
@@ -1892,7 +2236,7 @@ human_numcompare (char const *a, char co
|
||||
@@ -1900,7 +2244,7 @@ human_numcompare (char const *a, char co
|
||||
hideously fast. */
|
||||
|
||||
static int
|
||||
@ -2957,8 +2958,8 @@ Index: src/sort.c
|
||||
{
|
||||
while (blanks[to_uchar (*a)])
|
||||
a++;
|
||||
@@ -1902,6 +2246,25 @@ numcompare (char const *a, char const *b
|
||||
return strnumcmp (a, b, decimal_point, thousands_sep);
|
||||
@@ -1928,6 +2272,25 @@ nan_compare (char const *sa, char const
|
||||
return memcmp (&a, &b, sizeof a);
|
||||
}
|
||||
|
||||
+#if HAVE_MBRTOWC
|
||||
@ -2983,7 +2984,7 @@ Index: src/sort.c
|
||||
static int
|
||||
general_numcompare (char const *sa, char const *sb)
|
||||
{
|
||||
@@ -1934,7 +2297,7 @@ general_numcompare (char const *sa, char
|
||||
@@ -1960,7 +2323,7 @@ general_numcompare (char const *sa, char
|
||||
Return 0 if the name in S is not recognized. */
|
||||
|
||||
static int
|
||||
@ -2992,7 +2993,7 @@ Index: src/sort.c
|
||||
{
|
||||
size_t lo = 0;
|
||||
size_t hi = MONTHS_PER_YEAR;
|
||||
@@ -2209,15 +2572,14 @@ debug_key (struct line const *line, stru
|
||||
@@ -2235,15 +2598,14 @@ debug_key (struct line const *line, stru
|
||||
char saved = *lim;
|
||||
*lim = '\0';
|
||||
|
||||
@ -3010,7 +3011,7 @@ Index: src/sort.c
|
||||
else if (key->general_numeric)
|
||||
ignore_value (strtold (beg, &tighter_lim));
|
||||
else if (key->numeric || key->human_numeric)
|
||||
@@ -2361,7 +2723,7 @@ key_warnings (struct keyfield const *gke
|
||||
@@ -2387,7 +2749,7 @@ key_warnings (struct keyfield const *gke
|
||||
bool maybe_space_aligned = !hard_LC_COLLATE && default_key_compare (key)
|
||||
&& !(key->schar || key->echar);
|
||||
bool line_offset = key->eword == 0 && key->echar != 0; /* -k1.x,1.y */
|
||||
@ -3019,7 +3020,7 @@ Index: src/sort.c
|
||||
&& ((!key->skipsblanks && !(implicit_skip || maybe_space_aligned))
|
||||
|| (!key->skipsblanks && key->schar)
|
||||
|| (!key->skipeblanks && key->echar)))
|
||||
@@ -2419,11 +2781,83 @@ key_warnings (struct keyfield const *gke
|
||||
@@ -2445,11 +2807,83 @@ key_warnings (struct keyfield const *gke
|
||||
error (0, 0, _("option `-r' only applies to last-resort comparison"));
|
||||
}
|
||||
|
||||
@ -3104,7 +3105,7 @@ Index: src/sort.c
|
||||
{
|
||||
struct keyfield *key = keylist;
|
||||
|
||||
@@ -2508,7 +2942,7 @@ keycompare (struct line const *a, struct
|
||||
@@ -2534,7 +2968,7 @@ keycompare (struct line const *a, struct
|
||||
else if (key->human_numeric)
|
||||
diff = human_numcompare (ta, tb);
|
||||
else if (key->month)
|
||||
@ -3113,7 +3114,7 @@ Index: src/sort.c
|
||||
else if (key->random)
|
||||
diff = compare_random (ta, tlena, tb, tlenb);
|
||||
else if (key->version)
|
||||
@@ -2624,6 +3058,179 @@ keycompare (struct line const *a, struct
|
||||
@@ -2650,6 +3084,179 @@ keycompare (struct line const *a, struct
|
||||
return key->reverse ? -diff : diff;
|
||||
}
|
||||
|
||||
@ -3293,7 +3294,7 @@ Index: src/sort.c
|
||||
/* Compare two lines A and B, returning negative, zero, or positive
|
||||
depending on whether A compares less than, equal to, or greater than B. */
|
||||
|
||||
@@ -4087,7 +4694,7 @@ main (int argc, char **argv)
|
||||
@@ -4113,7 +4720,7 @@ main (int argc, char **argv)
|
||||
initialize_exit_failure (SORT_FAILURE);
|
||||
|
||||
hard_LC_COLLATE = hard_locale (LC_COLLATE);
|
||||
@ -3302,7 +3303,7 @@ Index: src/sort.c
|
||||
hard_LC_TIME = hard_locale (LC_TIME);
|
||||
#endif
|
||||
|
||||
@@ -4108,6 +4715,29 @@ main (int argc, char **argv)
|
||||
@@ -4134,6 +4741,29 @@ main (int argc, char **argv)
|
||||
thousands_sep = -1;
|
||||
}
|
||||
|
||||
@ -3332,7 +3333,7 @@ Index: src/sort.c
|
||||
have_read_stdin = false;
|
||||
inittables ();
|
||||
|
||||
@@ -4378,13 +5008,34 @@ main (int argc, char **argv)
|
||||
@@ -4404,13 +5034,34 @@ main (int argc, char **argv)
|
||||
|
||||
case 't':
|
||||
{
|
||||
@ -3371,7 +3372,7 @@ Index: src/sort.c
|
||||
else
|
||||
{
|
||||
/* Provoke with `sort -txx'. Complain about
|
||||
@@ -4395,9 +5046,12 @@ main (int argc, char **argv)
|
||||
@@ -4421,9 +5072,12 @@ main (int argc, char **argv)
|
||||
quote (optarg));
|
||||
}
|
||||
}
|
||||
@ -3388,8 +3389,8 @@ Index: src/sort.c
|
||||
|
||||
Index: src/unexpand.c
|
||||
===================================================================
|
||||
--- src/unexpand.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/unexpand.c 2011-02-10 15:59:59.390590326 +0100
|
||||
--- src/unexpand.c.orig 2011-10-10 09:56:46.000000000 +0200
|
||||
+++ src/unexpand.c 2011-10-13 15:53:04.239558180 +0200
|
||||
@@ -39,12 +39,29 @@
|
||||
#include <stdio.h>
|
||||
#include <getopt.h>
|
||||
@ -3645,8 +3646,8 @@ Index: src/unexpand.c
|
||||
error (EXIT_FAILURE, errno, "-");
|
||||
Index: src/uniq.c
|
||||
===================================================================
|
||||
--- src/uniq.c.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ src/uniq.c 2011-02-10 15:59:59.440587155 +0100
|
||||
--- src/uniq.c.orig 2011-10-10 09:56:46.000000000 +0200
|
||||
+++ src/uniq.c 2011-10-13 15:56:46.935568114 +0200
|
||||
@@ -21,6 +21,16 @@
|
||||
#include <getopt.h>
|
||||
#include <sys/types.h>
|
||||
@ -3699,9 +3700,9 @@ Index: src/uniq.c
|
||||
@@ -207,7 +233,7 @@ size_opt (char const *opt, char const *m
|
||||
return a pointer to the beginning of the line's field to be compared. */
|
||||
|
||||
static char *
|
||||
static char * _GL_ATTRIBUTE_PURE
|
||||
-find_field (struct linebuffer const *line)
|
||||
+find_field_uni (struct linebuffer *line)
|
||||
+find_field_uni (struct linebuffer const *line)
|
||||
{
|
||||
size_t count;
|
||||
char const *lp = line->buffer;
|
||||
@ -3798,7 +3799,7 @@ Index: src/uniq.c
|
||||
if (check_chars < oldlen)
|
||||
oldlen = check_chars;
|
||||
if (check_chars < newlen)
|
||||
@@ -242,15 +347,93 @@ different (char *old, char *new, size_t
|
||||
@@ -242,14 +347,92 @@ different (char *old, char *new, size_t
|
||||
|
||||
if (ignore_case)
|
||||
{
|
||||
@ -3825,8 +3826,8 @@ Index: src/uniq.c
|
||||
+ }
|
||||
+
|
||||
+ 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)
|
||||
@ -3891,12 +3892,11 @@ Index: src/uniq.c
|
||||
+ }
|
||||
+
|
||||
+ return xmemcoll (copy[0], len[0], copy[1], len[1]);
|
||||
+}
|
||||
}
|
||||
+#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.
|
||||
@@ -305,15 +488,43 @@ check_file (const char *infile, const ch
|
||||
{
|
||||
char *prevfield IF_LINT ( = NULL);
|
||||
@ -4016,9 +4016,9 @@ Index: src/uniq.c
|
||||
check_chars = SIZE_MAX;
|
||||
Index: tests/Makefile.am
|
||||
===================================================================
|
||||
--- tests/Makefile.am.orig 2011-01-31 18:26:06.000000000 +0100
|
||||
+++ tests/Makefile.am 2011-02-10 16:00:18.705365581 +0100
|
||||
@@ -236,6 +236,7 @@ TESTS = \
|
||||
--- tests/Makefile.am.orig 2011-10-10 09:30:55.000000000 +0200
|
||||
+++ tests/Makefile.am 2011-10-13 15:53:04.240558166 +0200
|
||||
@@ -240,6 +240,7 @@ TESTS = \
|
||||
misc/sort-debug-keys \
|
||||
misc/sort-debug-warn \
|
||||
misc/sort-files0-from \
|
||||
@ -4026,7 +4026,7 @@ Index: tests/Makefile.am
|
||||
misc/sort-float \
|
||||
misc/sort-merge \
|
||||
misc/sort-merge-fdlimit \
|
||||
@@ -505,6 +506,10 @@ TESTS = \
|
||||
@@ -521,6 +522,10 @@ TESTS = \
|
||||
$(root_tests)
|
||||
|
||||
pr_data = \
|
||||
@ -4039,9 +4039,9 @@ Index: tests/Makefile.am
|
||||
pr/0FFnt \
|
||||
Index: tests/misc/cut
|
||||
===================================================================
|
||||
--- tests/misc/cut.orig 2011-01-31 13:40:38.000000000 +0100
|
||||
+++ tests/misc/cut 2011-02-10 16:00:18.981348087 +0100
|
||||
@@ -26,7 +26,7 @@ use strict;
|
||||
--- tests/misc/cut.orig 2011-10-10 09:30:55.000000000 +0200
|
||||
+++ tests/misc/cut 2011-10-13 15:53:04.240558166 +0200
|
||||
@@ -30,7 +30,7 @@ my $mb_locale = $ENV{LOCALE_FR_UTF8};
|
||||
my $prog = 'cut';
|
||||
my $try = "Try \`$prog --help' for more information.\n";
|
||||
my $from_1 = "$prog: fields and positions are numbered from 1\n$try";
|
||||
@ -4050,7 +4050,7 @@ Index: tests/misc/cut
|
||||
my $no_endpoint = "$prog: invalid range with no endpoint: -\n$try";
|
||||
|
||||
my @Tests =
|
||||
@@ -143,7 +143,7 @@ my @Tests =
|
||||
@@ -147,7 +147,7 @@ my @Tests =
|
||||
|
||||
# None of the following invalid ranges provoked an error up to coreutils-6.9.
|
||||
['inval1', qw(-f 2-0), {IN=>''}, {OUT=>''}, {EXIT=>1},
|
||||
@ -4062,7 +4062,7 @@ Index: tests/misc/cut
|
||||
Index: tests/misc/mb1.I
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ tests/misc/mb1.I 2011-02-10 15:59:59.632574982 +0100
|
||||
+++ tests/misc/mb1.I 2011-10-13 15:53:04.240558166 +0200
|
||||
@@ -0,0 +1,4 @@
|
||||
+Apple@10
|
||||
+Banana@5
|
||||
@ -4071,7 +4071,7 @@ Index: tests/misc/mb1.I
|
||||
Index: tests/misc/mb1.X
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ tests/misc/mb1.X 2011-02-10 15:59:59.673572383 +0100
|
||||
+++ tests/misc/mb1.X 2011-10-13 15:53:04.240558166 +0200
|
||||
@@ -0,0 +1,4 @@
|
||||
+Banana@5
|
||||
+Apple@10
|
||||
@ -4080,7 +4080,7 @@ Index: tests/misc/mb1.X
|
||||
Index: tests/misc/mb2.I
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ tests/misc/mb2.I 2011-02-10 15:59:59.698570797 +0100
|
||||
+++ tests/misc/mb2.I 2011-10-13 15:53:04.241558153 +0200
|
||||
@@ -0,0 +1,4 @@
|
||||
+Apple@AA10@@20
|
||||
+Banana@AA5@@30
|
||||
@ -4089,7 +4089,7 @@ Index: tests/misc/mb2.I
|
||||
Index: tests/misc/mb2.X
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ tests/misc/mb2.X 2011-02-10 15:59:59.732568640 +0100
|
||||
+++ tests/misc/mb2.X 2011-10-13 15:53:04.241558153 +0200
|
||||
@@ -0,0 +1,4 @@
|
||||
+Citrus@AA20@@5
|
||||
+Cherry@AA30@@10
|
||||
@ -4098,7 +4098,7 @@ Index: tests/misc/mb2.X
|
||||
Index: tests/misc/sort-mb-tests
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ tests/misc/sort-mb-tests 2011-02-10 15:59:59.757567054 +0100
|
||||
+++ tests/misc/sort-mb-tests 2011-10-13 15:53:04.241558153 +0200
|
||||
@@ -0,0 +1,58 @@
|
||||
+#! /bin/sh
|
||||
+case $# in
|
||||
|
@ -10,11 +10,11 @@ Date: Fri Jul 22 14:48:42 2011 +0200
|
||||
* m4/acl.m4 (gl_FUNC_ACL): Check for acl_extended_file_nofollow.
|
||||
This addresses http://bugzilla.redhat.com/692823.
|
||||
|
||||
Index: coreutils-8.12/lib/acl-internal.h
|
||||
Index: lib/acl-internal.h
|
||||
===================================================================
|
||||
--- coreutils-8.12.orig/lib/acl-internal.h
|
||||
+++ coreutils-8.12/lib/acl-internal.h
|
||||
@@ -124,6 +124,12 @@ rpl_acl_set_fd (int fd, acl_t acl)
|
||||
--- lib/acl-internal.h.orig 2011-10-05 17:31:39.000000000 +0200
|
||||
+++ lib/acl-internal.h 2011-10-13 16:02:40.895813897 +0200
|
||||
@@ -133,6 +133,12 @@ rpl_acl_set_fd (int fd, acl_t acl)
|
||||
# endif
|
||||
|
||||
/* Linux-specific */
|
||||
@ -27,11 +27,11 @@ Index: coreutils-8.12/lib/acl-internal.h
|
||||
# ifndef HAVE_ACL_FROM_MODE
|
||||
# define HAVE_ACL_FROM_MODE false
|
||||
# define acl_from_mode(mode) (NULL)
|
||||
Index: coreutils-8.12/lib/file-has-acl.c
|
||||
Index: lib/file-has-acl.c
|
||||
===================================================================
|
||||
--- coreutils-8.12.orig/lib/file-has-acl.c
|
||||
+++ coreutils-8.12/lib/file-has-acl.c
|
||||
@@ -339,12 +339,20 @@ file_has_acl (char const *name, struct s
|
||||
--- lib/file-has-acl.c.orig 2011-10-05 17:31:39.000000000 +0200
|
||||
+++ lib/file-has-acl.c 2011-10-13 16:02:40.895813897 +0200
|
||||
@@ -454,12 +454,20 @@ file_has_acl (char const *name, struct s
|
||||
/* Linux, FreeBSD, MacOS X, IRIX, Tru64 */
|
||||
int ret;
|
||||
|
||||
@ -53,10 +53,10 @@ Index: coreutils-8.12/lib/file-has-acl.c
|
||||
}
|
||||
else /* FreeBSD, MacOS X, IRIX, Tru64 */
|
||||
{
|
||||
Index: coreutils-8.12/m4/acl.m4
|
||||
Index: m4/acl.m4
|
||||
===================================================================
|
||||
--- coreutils-8.12.orig/m4/acl.m4
|
||||
+++ coreutils-8.12/m4/acl.m4
|
||||
--- m4/acl.m4.orig 2011-10-05 17:31:39.000000000 +0200
|
||||
+++ m4/acl.m4 2011-10-13 16:02:40.895813897 +0200
|
||||
@@ -33,7 +33,7 @@ AC_DEFUN([gl_FUNC_ACL],
|
||||
AC_CHECK_FUNCS(
|
||||
[acl_get_file acl_get_fd acl_set_file acl_set_fd \
|
||||
@ -66,11 +66,14 @@ Index: coreutils-8.12/m4/acl.m4
|
||||
acl_delete_fd_np acl_delete_file_np \
|
||||
acl_copy_ext_native acl_create_entry_np \
|
||||
acl_to_short_text acl_free_text])
|
||||
Index: coreutils-8.12/ChangeLog
|
||||
Index: ChangeLog
|
||||
===================================================================
|
||||
--- coreutils-8.12.orig/ChangeLog
|
||||
+++ coreutils-8.12/ChangeLog
|
||||
@@ -1,3 +1,11 @@
|
||||
--- ChangeLog.orig 2011-10-12 11:56:55.000000000 +0200
|
||||
+++ ChangeLog 2011-10-13 16:04:55.772001787 +0200
|
||||
@@ -751,6 +751,14 @@
|
||||
MacOS X 10.7 has an fdatasync that is not declared, and is rumored to
|
||||
be ineffective. (Bug#9141)
|
||||
|
||||
+2011-07-22 Kamil Dudka <kdudka@redhat.com>
|
||||
+
|
||||
+ file-has-acl: use acl_extended_file_nofollow if available
|
||||
@ -79,6 +82,6 @@ Index: coreutils-8.12/ChangeLog
|
||||
+ * lib/file-has-acl.c (file_has_acl): Use acl_extended_file_nofollow.
|
||||
+ * m4/acl.m4 (gl_FUNC_ACL): Check for acl_extended_file_nofollow.
|
||||
+
|
||||
2011-04-26 Jim Meyering <meyering@redhat.com>
|
||||
2011-07-20 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
version 8.12
|
||||
dircolors: add screen.Eterm terminal type
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: configure
|
||||
===================================================================
|
||||
--- configure.orig 2011-04-13 21:22:30.000000000 +0200
|
||||
+++ configure 2011-04-14 14:39:11.027077753 +0200
|
||||
@@ -3513,7 +3513,6 @@ as_fn_append ac_func_list " alarm"
|
||||
--- configure.orig 2011-10-12 11:45:49.000000000 +0200
|
||||
+++ configure 2011-10-13 16:01:35.584691275 +0200
|
||||
@@ -3641,7 +3641,6 @@ as_fn_append ac_func_list " alarm"
|
||||
as_fn_append ac_header_list " sys/statvfs.h"
|
||||
as_fn_append ac_header_list " sys/select.h"
|
||||
as_fn_append ac_func_list " nl_langinfo"
|
||||
@ -12,13 +12,13 @@ Index: configure
|
||||
as_fn_append ac_header_list " utmp.h"
|
||||
Index: m4/gnulib-comp.m4
|
||||
===================================================================
|
||||
--- m4/gnulib-comp.m4.orig 2011-04-09 09:51:23.000000000 +0200
|
||||
+++ m4/gnulib-comp.m4 2011-04-14 14:38:04.363003296 +0200
|
||||
@@ -1217,7 +1217,6 @@ AC_DEFUN([gl_INIT],
|
||||
# Code from module printf-frexpl:
|
||||
gl_FUNC_PRINTF_FREXPL
|
||||
# Code from module printf-safe:
|
||||
- m4_divert_text([INIT_PREPARE], [gl_printf_safe=yes])
|
||||
# Code from module priv-set:
|
||||
gl_PRIV_SET
|
||||
# Code from module progname:
|
||||
--- m4/gnulib-comp.m4.orig 2011-10-09 19:02:39.000000000 +0200
|
||||
+++ m4/gnulib-comp.m4 2011-10-13 16:02:07.582261432 +0200
|
||||
@@ -1417,7 +1417,6 @@ gl_POSIXTM
|
||||
gl_POSIXVER
|
||||
gl_FUNC_PRINTF_FREXP
|
||||
gl_FUNC_PRINTF_FREXPL
|
||||
-m4_divert_text([INIT_PREPARE], [gl_printf_safe=yes])
|
||||
gl_PRIV_SET
|
||||
AC_CHECK_DECLS([program_invocation_name], [], [], [#include <errno.h>])
|
||||
AC_CHECK_DECLS([program_invocation_short_name], [], [], [#include <errno.h>])
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: gnulib-tests/test-isnanl.h
|
||||
===================================================================
|
||||
--- gnulib-tests/test-isnanl.h.orig 2010-11-27 16:11:07.000000000 +0100
|
||||
+++ gnulib-tests/test-isnanl.h 2011-01-03 13:26:31.990205613 +0100
|
||||
@@ -48,7 +48,7 @@ main ()
|
||||
--- gnulib-tests/test-isnanl.h.orig 2011-10-09 19:02:27.000000000 +0200
|
||||
+++ gnulib-tests/test-isnanl.h 2011-10-13 15:58:39.627054718 +0200
|
||||
@@ -49,7 +49,7 @@ main ()
|
||||
/* Quiet NaN. */
|
||||
ASSERT (isnanl (NaNl ()));
|
||||
|
||||
@ -11,7 +11,7 @@ Index: gnulib-tests/test-isnanl.h
|
||||
/* A bit pattern that is different from a Quiet NaN. With a bit of luck,
|
||||
it's a Signalling NaN. */
|
||||
{
|
||||
@@ -90,6 +90,7 @@ main ()
|
||||
@@ -91,6 +91,7 @@ main ()
|
||||
{ LDBL80_WORDS (0xFFFF, 0x83333333, 0x00000000) };
|
||||
ASSERT (isnanl (x.value));
|
||||
}
|
||||
@ -19,7 +19,7 @@ Index: gnulib-tests/test-isnanl.h
|
||||
/* The isnanl function should recognize Pseudo-NaNs, Pseudo-Infinities,
|
||||
Pseudo-Zeroes, Unnormalized Numbers, and Pseudo-Denormals, as defined in
|
||||
Intel IA-64 Architecture Software Developer's Manual, Volume 1:
|
||||
@@ -123,6 +124,7 @@ main ()
|
||||
@@ -124,6 +125,7 @@ main ()
|
||||
ASSERT (isnanl (x.value));
|
||||
}
|
||||
#endif
|
||||
@ -27,23 +27,10 @@ Index: gnulib-tests/test-isnanl.h
|
||||
|
||||
return 0;
|
||||
}
|
||||
Index: src/system.h
|
||||
===================================================================
|
||||
--- src/system.h.orig 2010-07-07 12:08:06.000000000 +0200
|
||||
+++ src/system.h 2011-01-03 13:26:32.043207142 +0100
|
||||
@@ -138,7 +138,7 @@ enum
|
||||
# define DEV_BSIZE BBSIZE
|
||||
#endif
|
||||
#ifndef DEV_BSIZE
|
||||
-# define DEV_BSIZE 4096
|
||||
+# define DEV_BSIZE 512
|
||||
#endif
|
||||
|
||||
/* Extract or fake data from a `struct stat'.
|
||||
Index: tests/misc/help-version
|
||||
===================================================================
|
||||
--- tests/misc/help-version.orig 2010-05-31 10:21:14.000000000 +0200
|
||||
+++ tests/misc/help-version 2011-01-03 13:26:32.068207863 +0100
|
||||
--- tests/misc/help-version.orig 2011-07-28 12:38:27.000000000 +0200
|
||||
+++ tests/misc/help-version 2011-10-13 15:58:39.628054705 +0200
|
||||
@@ -250,6 +250,7 @@ parted_setup () { args="-s $tmp_in mklab
|
||||
for i in $built_programs; do
|
||||
# Skip these.
|
||||
@ -54,14 +41,15 @@ Index: tests/misc/help-version
|
||||
echo z |gzip > $zin
|
||||
Index: tests/other-fs-tmpdir
|
||||
===================================================================
|
||||
--- tests/other-fs-tmpdir.orig 2010-01-01 14:06:47.000000000 +0100
|
||||
+++ tests/other-fs-tmpdir 2011-01-03 13:26:32.109209046 +0100
|
||||
@@ -43,6 +43,8 @@ for d in $CANDIDATE_TMP_DIRS; do
|
||||
fi
|
||||
--- tests/other-fs-tmpdir.orig 2011-07-28 12:38:27.000000000 +0200
|
||||
+++ tests/other-fs-tmpdir 2011-10-13 16:01:02.181139986 +0200
|
||||
@@ -44,6 +44,9 @@ for d in $CANDIDATE_TMP_DIRS; do
|
||||
|
||||
done
|
||||
|
||||
+# Autobuild hack
|
||||
+test -f /bin/uname.bin && other_partition_tmpdir=
|
||||
|
||||
+
|
||||
if test -z "$other_partition_tmpdir"; then
|
||||
skip_test_ \
|
||||
skip_ \
|
||||
"requires a writable directory on a different disk partition,
|
||||
|
@ -1,3 +1,121 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 13 16:07:16 CEST 2011 - pth@suse.de
|
||||
|
||||
- Update to 8.14. Changes since 8.12:
|
||||
Bug fixes:
|
||||
|
||||
- ls --dereference no longer outputs erroneous "argetm" strings for
|
||||
dangling symlinks when an 'ln=target' entry is in $LS_COLORS.
|
||||
[bug introduced in fileutils-4.0]
|
||||
|
||||
- ls -lL symlink once again properly prints "+" when the referent has
|
||||
an ACL. [bug introduced in coreutils-8.13]
|
||||
|
||||
- sort -g no longer infloops for certain inputs containing NaNs [bug
|
||||
introduced in coreutils-8.5]
|
||||
|
||||
- chown and chgrp with the -v --from= options, now output the correct
|
||||
owner. I.E. for skipped files, the original ownership is output,
|
||||
not the new one. [bug introduced in sh-utils-2.0g]
|
||||
|
||||
- cp -r could mistakenly change the permissions of an existing
|
||||
destination directory. [bug introduced in coreutils-6.8]
|
||||
|
||||
- cp -u -p would fail to preserve one hard link for each up-to-date
|
||||
copy of a src-hard-linked name in the destination tree. I.e., if
|
||||
s/a and s/b are hard-linked and dst/s/a is up to date, "cp -up s
|
||||
dst" would copy s/b to dst/s/b rather than simply linking dst/s/b
|
||||
to dst/s/a. [This bug appears to have been present in "the
|
||||
beginning".]
|
||||
|
||||
- fts-using tools (rm, du, chmod, chgrp, chown, chcon) no longer use
|
||||
memory proportional to the number of entries in each directory they
|
||||
process. Before, rm -rf 4-million-entry-directory would consume
|
||||
about 1GiB of memory. Now, it uses less than 30MB, no matter how
|
||||
many entries there are. [this bug was inherent in the use of fts:
|
||||
thus, for rm the bug was introduced in coreutils-8.0. The prior
|
||||
implementation of rm did not use as much memory. du, chmod, chgrp
|
||||
and chown started using fts in 6.0. chcon was added in
|
||||
coreutils-6.9.91 with fts support. ]
|
||||
|
||||
- pr -T no longer ignores a specified LAST_PAGE to stop at. [bug
|
||||
introduced in textutils-1.19q]
|
||||
|
||||
- printf '%d' '"' no longer accesses out-of-bounds memory in the
|
||||
diagnostic. [bug introduced in sh-utils-1.16]
|
||||
|
||||
- split --number l/... no longer creates extraneous files in certain
|
||||
cases. [bug introduced in coreutils-8.8]
|
||||
|
||||
- timeout now sends signals to commands that create their own process
|
||||
group. timeout is no longer confused when starting off with a
|
||||
child process. [bugs introduced in coreutils-7.0]
|
||||
|
||||
- unexpand -a now aligns correctly when there are spaces spanning a
|
||||
tabstop, followed by a tab. In that case a space was dropped,
|
||||
causing misalignment. We also now ensure that a space never
|
||||
precedes a tab. [bug introduced in coreutils-5.3.0]
|
||||
|
||||
New features:
|
||||
|
||||
- date now accepts ISO 8601 date-time strings with "T" as the
|
||||
separator. It has long parsed dates like "2004-02-29 16:21:42"
|
||||
with a space between the date and time strings. Now it also parses
|
||||
"2004-02-29T16:21:42" and fractional-second and time-zone-annotated
|
||||
variants like "2004-02-29T16:21:42.333-07:00"
|
||||
- md5sum accepts the new --strict option. With --check, it makes the
|
||||
tool exit non-zero for any invalid input line, rather than just warning.
|
||||
This also affects sha1sum, sha224sum, sha384sum and sha512sum.
|
||||
|
||||
- split accepts a new --filter=CMD option. With it, split filters
|
||||
output through CMD. CMD may use the $FILE environment variable,
|
||||
which is set to the nominal output file name for each invocation of
|
||||
CMD. For example, to split a file into 3 approximately equal
|
||||
parts, which are then compressed:
|
||||
|
||||
split -n3 --filter='xz > $FILE.xz' big
|
||||
|
||||
Note the use of single quotes, not double quotes. That creates
|
||||
files named xaa.xz, xab.xz and xac.xz.
|
||||
|
||||
- timeout accepts a new --foreground option, to support commands not
|
||||
started directly from a shell prompt, where the command is
|
||||
interactive or needs to receive signals initiated from the
|
||||
terminal.
|
||||
|
||||
Improvements:
|
||||
|
||||
- md5sum --check now supports the -r format from the corresponding
|
||||
BSD tool. This also affects sha1sum, sha224sum, sha384sum and
|
||||
sha512sum.
|
||||
|
||||
- pwd now works also on systems without openat. On such systems, pwd
|
||||
would fail when run from a directory whose absolute name contained
|
||||
more than PATH_MAX / 3 components. The df, stat and readlink
|
||||
programs are also affected due to their use of the canonicalize_*
|
||||
functions.
|
||||
|
||||
- join --check-order now prints "join: FILE:LINE_NUMBER: bad_line"
|
||||
for an unsorted input, rather than e.g., "join: file 1 is not in
|
||||
sorted order".
|
||||
|
||||
- shuf outputs small subsets of large permutations much more
|
||||
efficiently. For example `shuf -i1-$((2**32-1)) -n2` no longer
|
||||
exhausts memory.
|
||||
|
||||
- stat -f now recognizes the GPFS, MQUEUE and PSTOREFS file system
|
||||
types.
|
||||
|
||||
- timeout now supports sub-second timeouts.
|
||||
|
||||
Changes in behavior:
|
||||
|
||||
- chmod, chown and chgrp now output the original attributes in
|
||||
messages, when -v or -c specified.
|
||||
|
||||
- cp -au (where --preserve=links is implicit) may now replace newer
|
||||
files in the destination, to mirror hard links from the source.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Sep 17 23:29:33 UTC 2011 - jengelh@medozas.de
|
||||
|
||||
|
@ -23,8 +23,8 @@ BuildRequires: help2man libacl-devel libcap-devel libselinux-devel pam-devel xz
|
||||
Url: http://www.gnu.org/software/coreutils/
|
||||
License: GFDLv1.2 ; GPLv2+ ; GPLv3+
|
||||
Group: System/Base
|
||||
Version: 8.12
|
||||
Release: 7
|
||||
Version: 8.14
|
||||
Release: 1
|
||||
Provides: fileutils = %{version}, sh-utils = %{version}, stat = %version}, textutils = %{version}, mktemp = %{version}
|
||||
Obsoletes: fileutils < %{version}, sh-utils < %{version}, stat < %version}, textutils < %{version}, mktemp < %{version}
|
||||
Obsoletes: libselinux <= 1.23.11-3 libselinux-32bit = 9 libselinux-64bit = 9 libselinux-x86 = 9
|
||||
@ -35,7 +35,7 @@ Source: coreutils-%{version}.tar.xz
|
||||
Source1: su.pamd
|
||||
Source2: su.default
|
||||
Source3: baselibs.conf
|
||||
Source4: coreutils-8.12.de.po.xz
|
||||
Source4: coreutils-8.14.de.po.xz
|
||||
Patch0: coreutils-misc.patch
|
||||
Patch1: coreutils-remove_hostname_documentation.patch
|
||||
Patch2: coreutils-gl_printf_safe.patch
|
||||
@ -96,7 +96,7 @@ uname unexpand uniq unlink uptime users vdir wc who whoami yes
|
||||
%patch31
|
||||
%patch32
|
||||
%patch33
|
||||
%patch34 -p1
|
||||
%patch34
|
||||
|
||||
xz -dc %{S:4} >po/de.po
|
||||
|
||||
@ -108,11 +108,12 @@ export CFLAGS="%optflags -Wall"
|
||||
gl_cv_func_printf_directive_n=yes \
|
||||
gl_cv_func_isnanl_works=yes \
|
||||
DEFAULT_POSIX2_VERSION=199209
|
||||
|
||||
make -C po update-po
|
||||
make %{?_smp_mflags} V=1
|
||||
|
||||
%install
|
||||
%makeinstall
|
||||
%makeinstall pkglibexecdir=%{_libdir}/%{name}
|
||||
test -f %{buildroot}%{_bindir}/su || \
|
||||
install src/su %{buildroot}%{_bindir}/su
|
||||
install -d %{buildroot}/bin
|
||||
|
Loading…
Reference in New Issue
Block a user