Compare commits
11 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b0bffbf394 | ||
|
|
4aab0acf9f | ||
|
|
c42ce62d97 | ||
|
|
7279d78c58 | ||
|
|
264f71299b | ||
|
|
1675992ad8 | ||
|
|
84a4d406cb | ||
|
|
363fbbced1 | ||
|
|
954ad06ef8 | ||
|
|
24edf96ffe | ||
|
|
0ff3ba6c82 |
8 changed files with 192 additions and 58 deletions
7
STAGE1-coreutils
Normal file
7
STAGE1-coreutils
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
srpm coreutils
|
||||||
|
mcd $BUILDDIR/$1
|
||||||
|
(cd $SRC/${1}-*/ ; autoreconf -vif)
|
||||||
|
$SRC/${1}-*/configure $TCONFIGARGS --disable-pam
|
||||||
|
notparallel
|
||||||
|
make $J man1_MANS= V=1
|
||||||
|
make $J man1_MANS= install DESTDIR=${ROOTFS}
|
||||||
|
|
@ -84,11 +84,11 @@ EIGHTBIT 1
|
||||||
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
|
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
|
||||||
#NORMAL 00 # no color code at all
|
#NORMAL 00 # no color code at all
|
||||||
#FILE 00 # normal file, use no color at all
|
#FILE 00 # normal file, use no color at all
|
||||||
RESET 0 # reset to "normal" color
|
RESET 0 # reset to "normal" color
|
||||||
DIR 01;34 # directory
|
DIR 01;34 # directory
|
||||||
LINK 01;36 # symbolic link (If you set this to 'target' instead of a
|
LINK 01;36 # symbolic link (If you set this to 'target' instead of a
|
||||||
# numerical value, the color is as for the file pointed to.)
|
# numerical value, the color is as for the file pointed to.)
|
||||||
MULTIHARDLINK 00 # regular file with more than one link
|
MULTIHARDLINK 00 # regular file with more than one link
|
||||||
FIFO 40;33 # pipe
|
FIFO 40;33 # pipe
|
||||||
SOCK 01;35 # socket
|
SOCK 01;35 # socket
|
||||||
DOOR 01;35 # door
|
DOOR 01;35 # door
|
||||||
|
|
@ -209,8 +209,6 @@ EXEC 01;32
|
||||||
.emf 01;35
|
.emf 01;35
|
||||||
|
|
||||||
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
||||||
.axv 01;35
|
|
||||||
.anx 01;35
|
|
||||||
.ogv 01;35
|
.ogv 01;35
|
||||||
.ogx 01;35
|
.ogx 01;35
|
||||||
|
|
||||||
|
|
@ -218,6 +216,7 @@ EXEC 01;32
|
||||||
.aac 01;36
|
.aac 01;36
|
||||||
.au 01;36
|
.au 01;36
|
||||||
.flac 01;36
|
.flac 01;36
|
||||||
|
.m4a 01;36
|
||||||
.mid 01;36
|
.mid 01;36
|
||||||
.midi 01;36
|
.midi 01;36
|
||||||
.mka 01;36
|
.mka 01;36
|
||||||
|
|
@ -228,8 +227,8 @@ EXEC 01;32
|
||||||
.wav 01;36
|
.wav 01;36
|
||||||
|
|
||||||
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
||||||
.axa 01;36
|
|
||||||
.oga 01;36
|
.oga 01;36
|
||||||
|
.opus 01;36
|
||||||
.spx 01;36
|
.spx 01;36
|
||||||
.xspf 01;36
|
.xspf 01;36
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -55,17 +55,17 @@ EIGHTBIT 1
|
||||||
#NORMAL 00 # global default, no color code at all
|
#NORMAL 00 # global default, no color code at all
|
||||||
#FILE 00 # normal file, use no color at all
|
#FILE 00 # normal file, use no color at all
|
||||||
RESET 0 # reset to "normal" color
|
RESET 0 # reset to "normal" color
|
||||||
DIR 38;5;27 # directory
|
DIR 38;5;33 # directory
|
||||||
LINK 38;5;51 # symbolic link (If you set this to 'target' instead of a
|
LINK 38;5;51 # symbolic link (If you set this to 'target' instead of a
|
||||||
# numerical value, the color is as for the file pointed to.)
|
# numerical value, the color is as for the file pointed to.)
|
||||||
MULTIHARDLINK 44;38;5;15 # regular file with more than one link
|
MULTIHARDLINK 00 # regular file with more than one link
|
||||||
FIFO 40;38;5;11 # pipe
|
FIFO 40;38;5;11 # pipe
|
||||||
SOCK 38;5;13 # socket
|
SOCK 38;5;13 # socket
|
||||||
DOOR 38;5;5 # door
|
DOOR 38;5;5 # door
|
||||||
BLK 48;5;232;38;5;11 # block device driver
|
BLK 48;5;232;38;5;11 # block device driver
|
||||||
CHR 48;5;232;38;5;3 # character device driver
|
CHR 48;5;232;38;5;3 # character device driver
|
||||||
ORPHAN 48;5;232;38;5;9 # symlink to nonexistent file, or non-stat'able file
|
ORPHAN 48;5;232;38;5;9 # symlink to nonexistent file, or non-stat'able file
|
||||||
MISSING 05;48;5;232;38;5;15 # ... and the files they point to
|
MISSING 01;05;37;41 # ... and the files they point to
|
||||||
SETUID 48;5;196;38;5;15 # file that is setuid (u+s)
|
SETUID 48;5;196;38;5;15 # file that is setuid (u+s)
|
||||||
SETGID 48;5;11;38;5;16 # file that is setgid (g+s)
|
SETGID 48;5;11;38;5;16 # file that is setgid (g+s)
|
||||||
CAPABILITY 48;5;196;38;5;226 # file with capability
|
CAPABILITY 48;5;196;38;5;226 # file with capability
|
||||||
|
|
@ -74,7 +74,7 @@ OTHER_WRITABLE 48;5;10;38;5;21 # dir that is other-writable (o+w) and not sticky
|
||||||
STICKY 48;5;21;38;5;15 # dir with the sticky bit set (+t) and not other-writable
|
STICKY 48;5;21;38;5;15 # dir with the sticky bit set (+t) and not other-writable
|
||||||
|
|
||||||
# This is for files with execute permission:
|
# This is for files with execute permission:
|
||||||
EXEC 38;5;34
|
EXEC 38;5;40
|
||||||
|
|
||||||
# List any file extensions like '.gz' or '.tar' that you would like ls
|
# 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.
|
# to colorize below. Put the extension, a space, and the color init string.
|
||||||
|
|
@ -179,8 +179,6 @@ EXEC 38;5;34
|
||||||
.emf 38;5;13
|
.emf 38;5;13
|
||||||
|
|
||||||
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
||||||
.axv 38;5;13
|
|
||||||
.anx 38;5;13
|
|
||||||
.ogv 38;5;13
|
.ogv 38;5;13
|
||||||
.ogx 38;5;13
|
.ogx 38;5;13
|
||||||
|
|
||||||
|
|
@ -188,6 +186,7 @@ EXEC 38;5;34
|
||||||
.aac 38;5;45
|
.aac 38;5;45
|
||||||
.au 38;5;45
|
.au 38;5;45
|
||||||
.flac 38;5;45
|
.flac 38;5;45
|
||||||
|
.m4a 38;5;45
|
||||||
.mid 38;5;45
|
.mid 38;5;45
|
||||||
.midi 38;5;45
|
.midi 38;5;45
|
||||||
.mka 38;5;45
|
.mka 38;5;45
|
||||||
|
|
@ -198,8 +197,8 @@ EXEC 38;5;34
|
||||||
.wav 38;5;45
|
.wav 38;5;45
|
||||||
|
|
||||||
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
||||||
.axa 38;5;45
|
|
||||||
.oga 38;5;45
|
.oga 38;5;45
|
||||||
|
.opus 38;5;45
|
||||||
.spx 38;5;45
|
.spx 38;5;45
|
||||||
.xspf 38;5;45
|
.xspf 38;5;45
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
# Configuration file for the color ls utility - modified for gray backgrounds
|
# Configuration file for the color ls utility - modified for lighter backgrounds
|
||||||
# Synchronized with coreutils 8.5 dircolors
|
# Synchronized with coreutils 8.5 dircolors
|
||||||
# This file goes in the /etc directory, and must be world readable.
|
# 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
|
# You can copy this file to .dir_colors in your $HOME directory to override
|
||||||
|
|
@ -16,8 +16,9 @@ COLOR tty
|
||||||
OPTIONS -F -T 0
|
OPTIONS -F -T 0
|
||||||
|
|
||||||
# Below, there should be one TERM entry for each termtype that is colorizable
|
# Below, there should be one TERM entry for each termtype that is colorizable
|
||||||
TERM linux
|
TERM Eterm
|
||||||
TERM console
|
TERM ansi
|
||||||
|
TERM color-xterm
|
||||||
TERM con132x25
|
TERM con132x25
|
||||||
TERM con132x30
|
TERM con132x30
|
||||||
TERM con132x43
|
TERM con132x43
|
||||||
|
|
@ -29,20 +30,46 @@ TERM con80x43
|
||||||
TERM con80x50
|
TERM con80x50
|
||||||
TERM con80x60
|
TERM con80x60
|
||||||
TERM cons25
|
TERM cons25
|
||||||
TERM xterm
|
TERM console
|
||||||
TERM xterm-16color
|
TERM cygwin
|
||||||
TERM xterm-88color
|
TERM dtterm
|
||||||
TERM xterm-256color
|
TERM eterm-color
|
||||||
|
TERM gnome
|
||||||
|
TERM gnome-256color
|
||||||
|
TERM jfbterm
|
||||||
|
TERM konsole
|
||||||
|
TERM kterm
|
||||||
|
TERM linux
|
||||||
|
TERM linux-c
|
||||||
|
TERM mach-color
|
||||||
|
TERM mlterm
|
||||||
|
TERM putty
|
||||||
|
TERM putty-256color
|
||||||
TERM rxvt
|
TERM rxvt
|
||||||
TERM rxvt-256color
|
TERM rxvt-256color
|
||||||
|
TERM rxvt-cygwin
|
||||||
|
TERM rxvt-cygwin-native
|
||||||
TERM rxvt-unicode
|
TERM rxvt-unicode
|
||||||
TERM rxvt-unicode-256color
|
TERM rxvt-unicode-256color
|
||||||
TERM rxvt-unicode256
|
TERM rxvt-unicode256
|
||||||
TERM xterm-color
|
TERM screen
|
||||||
TERM color-xterm
|
TERM screen-256color
|
||||||
|
TERM screen-256color-bce
|
||||||
|
TERM screen-bce
|
||||||
|
TERM screen-w
|
||||||
|
TERM screen.Eterm
|
||||||
|
TERM screen.rxvt
|
||||||
|
TERM screen.linux
|
||||||
|
TERM st
|
||||||
|
TERM st-256color
|
||||||
|
TERM terminator
|
||||||
TERM vt100
|
TERM vt100
|
||||||
TERM dtterm
|
TERM xterm
|
||||||
TERM color_xterm
|
TERM xterm-16color
|
||||||
|
TERM xterm-256color
|
||||||
|
TERM xterm-88color
|
||||||
|
TERM xterm-color
|
||||||
|
TERM xterm-debian
|
||||||
|
|
||||||
# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output)
|
# EIGHTBIT, followed by '1' for on, '0' for off. (8-bit output)
|
||||||
EIGHTBIT 1
|
EIGHTBIT 1
|
||||||
|
|
@ -57,7 +84,7 @@ EIGHTBIT 1
|
||||||
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
|
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
|
||||||
#NORMAL 00 # no color code at all
|
#NORMAL 00 # no color code at all
|
||||||
#FILE 00 # normal file, use no color at all
|
#FILE 00 # normal file, use no color at all
|
||||||
RESET 0
|
RESET 0 # reset to "normal" color
|
||||||
DIR 00;34 # directory
|
DIR 00;34 # directory
|
||||||
LINK 00;36 # symbolic link (If you set this to 'target' instead of a
|
LINK 00;36 # symbolic link (If you set this to 'target' instead of a
|
||||||
# numerical value, the color is as for the file pointed to.)
|
# numerical value, the color is as for the file pointed to.)
|
||||||
|
|
@ -76,7 +103,6 @@ STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w)
|
||||||
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
|
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
|
STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable
|
||||||
|
|
||||||
|
|
||||||
# This is for files with execute permission:
|
# This is for files with execute permission:
|
||||||
EXEC 00;32
|
EXEC 00;32
|
||||||
|
|
||||||
|
|
@ -182,8 +208,6 @@ EXEC 00;32
|
||||||
.emf 00;35
|
.emf 00;35
|
||||||
|
|
||||||
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
||||||
.axv 00;35
|
|
||||||
.anx 00;35
|
|
||||||
.ogv 00;35
|
.ogv 00;35
|
||||||
.ogx 00;35
|
.ogx 00;35
|
||||||
|
|
||||||
|
|
@ -191,6 +215,7 @@ EXEC 00;32
|
||||||
.aac 00;36
|
.aac 00;36
|
||||||
.au 00;36
|
.au 00;36
|
||||||
.flac 00;36
|
.flac 00;36
|
||||||
|
.m4a 00;36
|
||||||
.mid 00;36
|
.mid 00;36
|
||||||
.midi 00;36
|
.midi 00;36
|
||||||
.mka 00;36
|
.mka 00;36
|
||||||
|
|
@ -201,8 +226,8 @@ EXEC 00;32
|
||||||
.wav 00;36
|
.wav 00;36
|
||||||
|
|
||||||
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
# http://wiki.xiph.org/index.php/MIME_Types_and_File_Extensions
|
||||||
.axa 00;36
|
|
||||||
.oga 00;36
|
.oga 00;36
|
||||||
|
.opus 00;36
|
||||||
.spx 00;36
|
.spx 00;36
|
||||||
.xspf 00;36
|
.xspf 00;36
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,14 @@ set INCLUDE="`cat "$COLORS" | grep '^INCLUDE' | cut -d ' ' -f2-`"
|
||||||
|
|
||||||
if ( ! -e "$COLORS" ) exit
|
if ( ! -e "$COLORS" ) exit
|
||||||
|
|
||||||
set _tmp="`mktemp .colorlsXXX --tmpdir=/tmp`"
|
set _tmp="`mktemp .colorlsXXX -q --tmpdir=/tmp`"
|
||||||
|
#if mktemp fails, exit when include was active, otherwise use $COLORS file
|
||||||
|
if ( "$_tmp" == '' ) then
|
||||||
|
if ( "$INCLUDE" == '' ) then
|
||||||
|
eval "`dircolors -c $COLORS`"
|
||||||
|
endif
|
||||||
|
goto cleanup
|
||||||
|
endif
|
||||||
|
|
||||||
if ( "$INCLUDE" != '' ) cat "$INCLUDE" >> $_tmp
|
if ( "$INCLUDE" != '' ) cat "$INCLUDE" >> $_tmp
|
||||||
grep -v '^INCLUDE' "$COLORS" >> $_tmp
|
grep -v '^INCLUDE' "$COLORS" >> $_tmp
|
||||||
|
|
@ -44,6 +51,7 @@ eval "`dircolors -c $_tmp`"
|
||||||
rm -f $_tmp
|
rm -f $_tmp
|
||||||
|
|
||||||
if ( "$LS_COLORS" == '' ) exit
|
if ( "$LS_COLORS" == '' ) exit
|
||||||
|
cleanup:
|
||||||
set color_none=`sed -n '/^COLOR.*none/Ip' < $COLORS`
|
set color_none=`sed -n '/^COLOR.*none/Ip' < $COLORS`
|
||||||
if ( "$color_none" != '' ) then
|
if ( "$color_none" != '' ) then
|
||||||
unset color_none
|
unset color_none
|
||||||
|
|
|
||||||
|
|
@ -32,14 +32,19 @@ if [ -z "$USER_LS_COLORS" ]; then
|
||||||
# Existence of $COLORS already checked above.
|
# Existence of $COLORS already checked above.
|
||||||
[ -n "$COLORS" ] || return
|
[ -n "$COLORS" ] || return
|
||||||
|
|
||||||
TMP="`mktemp .colorlsXXX --tmpdir=/tmp`"
|
if [ -e "$INCLUDE" ];
|
||||||
|
then
|
||||||
|
TMP="`mktemp .colorlsXXX -q --tmpdir=/tmp`"
|
||||||
|
[ -z "$TMP" ] && return
|
||||||
|
|
||||||
[ -e "$INCLUDE" ] && cat "$INCLUDE" >> $TMP
|
cat "$INCLUDE" >> $TMP
|
||||||
grep -v '^INCLUDE' "$COLORS" >> $TMP
|
grep -v '^INCLUDE' "$COLORS" >> $TMP
|
||||||
|
|
||||||
eval "`dircolors --sh $TMP 2>/dev/null`"
|
eval "`dircolors --sh $TMP 2>/dev/null`"
|
||||||
|
rm -f $TMP
|
||||||
rm -f $TMP
|
else
|
||||||
|
eval "`dircolors --sh $COLORS 2>/dev/null`"
|
||||||
|
fi
|
||||||
|
|
||||||
[ -z "$LS_COLORS" ] && return
|
[ -z "$LS_COLORS" ] && return
|
||||||
grep -qi "^COLOR.*none" $COLORS >/dev/null 2>/dev/null && return
|
grep -qi "^COLOR.*none" $COLORS >/dev/null 2>/dev/null && return
|
||||||
|
|
|
||||||
|
|
@ -473,7 +473,7 @@ diff -urNp coreutils-8.22-orig/src/cut.c coreutils-8.22/src/cut.c
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Process file FILE to standard output.
|
/* Process file FILE to standard output.
|
||||||
@@ -687,6 +1038,7 @@ main (int argc, char **argv)
|
@@ -687,6 +1042,7 @@ main (int argc, char **argv)
|
||||||
bool ok;
|
bool ok;
|
||||||
bool delim_specified = false;
|
bool delim_specified = false;
|
||||||
char *spec_list_string IF_LINT ( = NULL);
|
char *spec_list_string IF_LINT ( = NULL);
|
||||||
|
|
@ -481,7 +481,7 @@ diff -urNp coreutils-8.22-orig/src/cut.c coreutils-8.22/src/cut.c
|
||||||
|
|
||||||
initialize_main (&argc, &argv);
|
initialize_main (&argc, &argv);
|
||||||
set_program_name (argv[0]);
|
set_program_name (argv[0]);
|
||||||
@@ -709,7 +1061,6 @@ main (int argc, char **argv)
|
@@ -709,7 +1065,6 @@ main (int argc, char **argv)
|
||||||
switch (optc)
|
switch (optc)
|
||||||
{
|
{
|
||||||
case 'b':
|
case 'b':
|
||||||
|
|
@ -489,7 +489,7 @@ diff -urNp coreutils-8.22-orig/src/cut.c coreutils-8.22/src/cut.c
|
||||||
/* Build the byte list. */
|
/* Build the byte list. */
|
||||||
if (operating_mode != undefined_mode)
|
if (operating_mode != undefined_mode)
|
||||||
FATAL_ERROR (_("only one type of list may be specified"));
|
FATAL_ERROR (_("only one type of list may be specified"));
|
||||||
@@ -717,6 +1068,14 @@ main (int argc, char **argv)
|
@@ -717,6 +1072,14 @@ main (int argc, char **argv)
|
||||||
spec_list_string = optarg;
|
spec_list_string = optarg;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
@ -504,7 +504,7 @@ diff -urNp coreutils-8.22-orig/src/cut.c coreutils-8.22/src/cut.c
|
||||||
case 'f':
|
case 'f':
|
||||||
/* Build the field list. */
|
/* Build the field list. */
|
||||||
if (operating_mode != undefined_mode)
|
if (operating_mode != undefined_mode)
|
||||||
@@ -728,10 +1087,38 @@ main (int argc, char **argv)
|
@@ -728,10 +1091,38 @@ main (int argc, char **argv)
|
||||||
case 'd':
|
case 'd':
|
||||||
/* New delimiter. */
|
/* New delimiter. */
|
||||||
/* Interpret -d '' to mean 'use the NUL byte as the delimiter.' */
|
/* Interpret -d '' to mean 'use the NUL byte as the delimiter.' */
|
||||||
|
|
@ -547,7 +547,7 @@ diff -urNp coreutils-8.22-orig/src/cut.c coreutils-8.22/src/cut.c
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case OUTPUT_DELIMITER_OPTION:
|
case OUTPUT_DELIMITER_OPTION:
|
||||||
@@ -744,6 +1131,7 @@ main (int argc, char **argv)
|
@@ -744,6 +1135,7 @@ main (int argc, char **argv)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'n':
|
case 'n':
|
||||||
|
|
@ -555,7 +555,7 @@ diff -urNp coreutils-8.22-orig/src/cut.c coreutils-8.22/src/cut.c
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 's':
|
case 's':
|
||||||
@@ -783,15 +1171,34 @@ main (int argc, char **argv)
|
@@ -783,15 +1175,34 @@ main (int argc, char **argv)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!delim_specified)
|
if (!delim_specified)
|
||||||
|
|
@ -3132,7 +3132,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
else if (key->random)
|
else if (key->random)
|
||||||
diff = compare_random (ta, tlena, tb, tlenb);
|
diff = compare_random (ta, tlena, tb, tlenb);
|
||||||
else if (key->version)
|
else if (key->version)
|
||||||
@@ -2695,6 +3135,191 @@ keycompare (struct line const *a, struct
|
@@ -2695,6 +3135,209 @@ keycompare (struct line const *a, struct
|
||||||
return key->reverse ? -diff : diff;
|
return key->reverse ? -diff : diff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -3237,13 +3237,16 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
+ size_t lena = lima <= texta ? 0 : lima - texta;
|
+ size_t lena = lima <= texta ? 0 : lima - texta;
|
||||||
+ size_t lenb = limb <= textb ? 0 : limb - textb;
|
+ size_t lenb = limb <= textb ? 0 : limb - textb;
|
||||||
+
|
+
|
||||||
|
+ char enda IF_LINT (= 0);
|
||||||
|
+ char endb IF_LINT (= 0);
|
||||||
|
+
|
||||||
+ char const *translate = key->translate;
|
+ char const *translate = key->translate;
|
||||||
+ bool const *ignore = key->ignore;
|
+ bool const *ignore = key->ignore;
|
||||||
+
|
+
|
||||||
+ if (ignore || translate)
|
+ if (ignore || translate)
|
||||||
+ {
|
+ {
|
||||||
+ char *copy_a = (char *) xmalloc (lena + 1 + lenb + 1);
|
+ char *copy_a = (char *) xmalloc ((lena + lenb) * MB_CUR_MAX + 2);
|
||||||
+ char *copy_b = copy_a + lena + 1;
|
+ char *copy_b = copy_a + lena * MB_CUR_MAX + 1;
|
||||||
+ size_t new_len_a, new_len_b;
|
+ size_t new_len_a, new_len_b;
|
||||||
+ size_t i, j;
|
+ size_t i, j;
|
||||||
+
|
+
|
||||||
|
|
@ -3254,6 +3257,12 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
+ texta = copy_a; textb = copy_b;
|
+ texta = copy_a; textb = copy_b;
|
||||||
+ lena = new_len_a; lenb = new_len_b;
|
+ lena = new_len_a; lenb = new_len_b;
|
||||||
+ }
|
+ }
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ /* Use the keys in-place, temporarily null-terminated. */
|
||||||
|
+ enda = texta[lena]; texta[lena] = '\0';
|
||||||
|
+ endb = textb[lenb]; textb[lenb] = '\0';
|
||||||
|
+ }
|
||||||
+
|
+
|
||||||
+ if (key->random)
|
+ if (key->random)
|
||||||
+ diff = compare_random (texta, lena, textb, lenb);
|
+ diff = compare_random (texta, lena, textb, lenb);
|
||||||
|
|
@ -3277,13 +3286,22 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
+ diff = 1;
|
+ diff = 1;
|
||||||
+ else if (hard_LC_COLLATE && !folding)
|
+ else if (hard_LC_COLLATE && !folding)
|
||||||
+ {
|
+ {
|
||||||
+ diff = xmemcoll0 (texta, lena, textb, lenb);
|
+ diff = xmemcoll0 (texta, lena + 1, textb, lenb + 1);
|
||||||
+ }
|
+ }
|
||||||
+ else
|
+ else
|
||||||
+ diff = memcmp (texta, textb, MIN (lena + 1,lenb + 1));
|
+ {
|
||||||
|
+ diff = memcmp (texta, textb, MIN (lena, lenb));
|
||||||
|
+ if (diff == 0)
|
||||||
|
+ diff = lena < lenb ? -1 : lena != lenb;
|
||||||
|
+ }
|
||||||
+
|
+
|
||||||
+ if (ignore || translate)
|
+ if (ignore || translate)
|
||||||
+ free (texta);
|
+ free (texta);
|
||||||
|
+ else
|
||||||
|
+ {
|
||||||
|
+ texta[lena] = enda;
|
||||||
|
+ textb[lenb] = endb;
|
||||||
|
+ }
|
||||||
+
|
+
|
||||||
+ if (diff)
|
+ if (diff)
|
||||||
+ goto not_equal;
|
+ goto not_equal;
|
||||||
|
|
@ -3324,7 +3342,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
/* Compare two lines A and B, returning negative, zero, or positive
|
/* Compare two lines A and B, returning negative, zero, or positive
|
||||||
depending on whether A compares less than, equal to, or greater than B. */
|
depending on whether A compares less than, equal to, or greater than B. */
|
||||||
|
|
||||||
@@ -2722,7 +3347,7 @@ compare (struct line const *a, struct li
|
@@ -2722,7 +3365,7 @@ compare (struct line const *a, struct li
|
||||||
diff = - NONZERO (blen);
|
diff = - NONZERO (blen);
|
||||||
else if (blen == 0)
|
else if (blen == 0)
|
||||||
diff = 1;
|
diff = 1;
|
||||||
|
|
@ -3333,7 +3351,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
{
|
{
|
||||||
/* Note xmemcoll0 is a performance enhancement as
|
/* Note xmemcoll0 is a performance enhancement as
|
||||||
it will not unconditionally write '\0' after the
|
it will not unconditionally write '\0' after the
|
||||||
@@ -4113,6 +4738,7 @@ set_ordering (char const *s, struct keyf
|
@@ -4113,6 +4756,7 @@ set_ordering (char const *s, struct keyf
|
||||||
break;
|
break;
|
||||||
case 'f':
|
case 'f':
|
||||||
key->translate = fold_toupper;
|
key->translate = fold_toupper;
|
||||||
|
|
@ -3341,7 +3359,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
break;
|
break;
|
||||||
case 'g':
|
case 'g':
|
||||||
key->general_numeric = true;
|
key->general_numeric = true;
|
||||||
@@ -4190,7 +4816,7 @@ main (int argc, char **argv)
|
@@ -4190,7 +4834,7 @@ main (int argc, char **argv)
|
||||||
initialize_exit_failure (SORT_FAILURE);
|
initialize_exit_failure (SORT_FAILURE);
|
||||||
|
|
||||||
hard_LC_COLLATE = hard_locale (LC_COLLATE);
|
hard_LC_COLLATE = hard_locale (LC_COLLATE);
|
||||||
|
|
@ -3350,7 +3368,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
hard_LC_TIME = hard_locale (LC_TIME);
|
hard_LC_TIME = hard_locale (LC_TIME);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -4211,6 +4837,29 @@ main (int argc, char **argv)
|
@@ -4211,6 +4855,29 @@ main (int argc, char **argv)
|
||||||
thousands_sep = -1;
|
thousands_sep = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -3380,7 +3398,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
have_read_stdin = false;
|
have_read_stdin = false;
|
||||||
inittables ();
|
inittables ();
|
||||||
|
|
||||||
@@ -4485,13 +5134,34 @@ main (int argc, char **argv)
|
@@ -4485,13 +5152,34 @@ main (int argc, char **argv)
|
||||||
|
|
||||||
case 't':
|
case 't':
|
||||||
{
|
{
|
||||||
|
|
@ -3419,7 +3437,7 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Provoke with 'sort -txx'. Complain about
|
/* Provoke with 'sort -txx'. Complain about
|
||||||
@@ -4502,9 +5172,12 @@ main (int argc, char **argv)
|
@@ -4502,9 +5190,12 @@ main (int argc, char **argv)
|
||||||
quote (optarg));
|
quote (optarg));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -3434,6 +3452,39 @@ diff -urNp coreutils-8.22-orig/src/sort.c coreutils-8.22/src/sort.c
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
diff -urNp coreutils-8.23-orig/tests/i18n/sort.sh coreutils-8.23/tests/i18n/sort.sh
|
||||||
|
--- coreutils-8.23-orig/tests/i18n/sort.sh 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
+++ coreutils-8.23/tests/i18n/sort.sh 2014-07-22 13:45:52.733652016 +0200
|
||||||
|
@@ -0,0 +1,29 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+# Verify sort's multi-byte support.
|
||||||
|
+
|
||||||
|
+. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
|
||||||
|
+print_ver_ sort
|
||||||
|
+
|
||||||
|
+export LC_ALL=en_US.UTF-8
|
||||||
|
+locale -k LC_CTYPE | grep -q "charmap.*UTF-8" \
|
||||||
|
+ || skip_ "No UTF-8 locale available"
|
||||||
|
+
|
||||||
|
+# Enable heap consistency checkng on older systems
|
||||||
|
+export MALLOC_CHECK_=2
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+# check buffer overflow issue due to
|
||||||
|
+# expanding multi-byte representation due to case conversion
|
||||||
|
+# https://bugzilla.suse.com/show_bug.cgi?id=928749
|
||||||
|
+cat <<EOF > exp
|
||||||
|
+.
|
||||||
|
+ɑ
|
||||||
|
+EOF
|
||||||
|
+cat <<EOF | sort -f > out || fail=1
|
||||||
|
+.
|
||||||
|
+ɑ
|
||||||
|
+EOF
|
||||||
|
+compare exp out || { fail=1; cat out; }
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+Exit $fail
|
||||||
diff -urNp coreutils-8.22-orig/src/unexpand.c coreutils-8.22/src/unexpand.c
|
diff -urNp coreutils-8.22-orig/src/unexpand.c coreutils-8.22/src/unexpand.c
|
||||||
--- coreutils-8.22-orig/src/unexpand.c 2013-12-04 15:48:30.000000000 +0100
|
--- coreutils-8.22-orig/src/unexpand.c 2013-12-04 15:48:30.000000000 +0100
|
||||||
+++ coreutils-8.22/src/unexpand.c 2014-01-08 13:55:56.126375271 +0100
|
+++ coreutils-8.22/src/unexpand.c 2014-01-08 13:55:56.126375271 +0100
|
||||||
|
|
@ -4081,11 +4132,12 @@ diff -urNp coreutils-8.22-orig/src/uniq.c coreutils-8.22/src/uniq.c
|
||||||
diff -urNp coreutils-8.22-orig/tests/local.mk coreutils-8.22/tests/local.mk
|
diff -urNp coreutils-8.22-orig/tests/local.mk coreutils-8.22/tests/local.mk
|
||||||
--- coreutils-8.22-orig/tests/local.mk 2014-01-08 13:55:24.524683837 +0100
|
--- coreutils-8.22-orig/tests/local.mk 2014-01-08 13:55:24.524683837 +0100
|
||||||
+++ coreutils-8.22/tests/local.mk 2014-01-08 13:55:56.129375241 +0100
|
+++ coreutils-8.22/tests/local.mk 2014-01-08 13:55:56.129375241 +0100
|
||||||
@@ -324,6 +324,7 @@ all_tests = \
|
@@ -325,6 +325,8 @@ all_tests = \
|
||||||
tests/misc/sort-discrim.sh \
|
tests/misc/sort-discrim.sh \
|
||||||
tests/misc/sort-files0-from.pl \
|
tests/misc/sort-files0-from.pl \
|
||||||
tests/misc/sort-float.sh \
|
tests/misc/sort-float.sh \
|
||||||
+ tests/misc/sort-mb-tests.sh \
|
+ tests/misc/sort-mb-tests.sh \
|
||||||
|
+ tests/i18n/sort.sh \
|
||||||
tests/misc/sort-merge.pl \
|
tests/misc/sort-merge.pl \
|
||||||
tests/misc/sort-merge-fdlimit.sh \
|
tests/misc/sort-merge-fdlimit.sh \
|
||||||
tests/misc/sort-month.sh \
|
tests/misc/sort-month.sh \
|
||||||
|
|
@ -4440,7 +4492,18 @@ diff -urNp coreutils-8.22-orig/tests/misc/sort.pl coreutils-8.22/tests/misc/sort
|
||||||
# Since each test is run with a file name and with redirected stdin,
|
# Since each test is run with a file name and with redirected stdin,
|
||||||
# the name in the diagnostic is either the file name or "-".
|
# the name in the diagnostic is either the file name or "-".
|
||||||
# Normalize each diagnostic to use '-'.
|
# Normalize each diagnostic to use '-'.
|
||||||
@@ -415,6 +420,37 @@ foreach my $t (@Tests)
|
@@ -317,6 +322,10 @@ my @Tests =
|
||||||
|
["22a", '-k 2,2fd -k 1,1r', {IN=>"3 b\n4 B\n"}, {OUT=>"4 B\n3 b\n"}],
|
||||||
|
["22b", '-k 2,2d -k 1,1r', {IN=>"3 b\n4 b\n"}, {OUT=>"4 b\n3 b\n"}],
|
||||||
|
|
||||||
|
+# This fails in Fedora 20, per Göran Uddeborg in: http://bugs.gnu.org/18540
|
||||||
|
+["23", '-s -k1,1 -t/', {IN=>"a b/x\na-b-c/x\n"}, {OUT=>"a b/x\na-b-c/x\n"},
|
||||||
|
+ {ENV => "LC_ALL=$mb_locale"}],
|
||||||
|
+
|
||||||
|
["no-file1", 'no-file', {EXIT=>2}, {ERR=>$no_file}],
|
||||||
|
# This test failed until 1.22f. Sort didn't give an error.
|
||||||
|
# From Will Edgington.
|
||||||
|
@@ -415,6 +424,38 @@ foreach my $t (@Tests)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -4470,6 +4533,7 @@ diff -urNp coreutils-8.22-orig/tests/misc/sort.pl coreutils-8.22/tests/misc/sort
|
||||||
+ #disable several failing tests until investigation, disable all tests with envvars set
|
+ #disable several failing tests until investigation, disable all tests with envvars set
|
||||||
+ next if (grep {ref $_ eq 'HASH' && exists $_->{ENV}} (@new_t));
|
+ next if (grep {ref $_ eq 'HASH' && exists $_->{ENV}} (@new_t));
|
||||||
+ next if ($test_name =~ "18g" or $test_name =~ "sort-numeric" or $test_name =~ "08[ab]" or $test_name =~ "03[def]" or $test_name =~ "h4" or $test_name =~ "n1" or $test_name =~ "2[01]a");
|
+ next if ($test_name =~ "18g" or $test_name =~ "sort-numeric" or $test_name =~ "08[ab]" or $test_name =~ "03[def]" or $test_name =~ "h4" or $test_name =~ "n1" or $test_name =~ "2[01]a");
|
||||||
|
+ next if ($test_name =~ "11[ab]"); # avoid FP: expected result differs to MB result due to collation rules.
|
||||||
+ push @new, ["$test_name-mb", @new_t, {ENV => "LC_ALL=$mb_locale"}];
|
+ push @new, ["$test_name-mb", @new_t, {ENV => "LC_ALL=$mb_locale"}];
|
||||||
+ }
|
+ }
|
||||||
+ push @Tests, @new;
|
+ push @Tests, @new;
|
||||||
|
|
@ -4478,7 +4542,7 @@ diff -urNp coreutils-8.22-orig/tests/misc/sort.pl coreutils-8.22/tests/misc/sort
|
||||||
@Tests = triple_test \@Tests;
|
@Tests = triple_test \@Tests;
|
||||||
|
|
||||||
# Remember that triple_test creates from each test with exactly one "IN"
|
# Remember that triple_test creates from each test with exactly one "IN"
|
||||||
@@ -424,6 +460,7 @@ foreach my $t (@Tests)
|
@@ -424,6 +465,7 @@ foreach my $t (@Tests)
|
||||||
# Remove the IN_PIPE version of the "output-is-input" test above.
|
# Remove the IN_PIPE version of the "output-is-input" test above.
|
||||||
# The others aren't susceptible because they have three inputs each.
|
# The others aren't susceptible because they have three inputs each.
|
||||||
@Tests = grep {$_->[0] ne 'output-is-input.p'} @Tests;
|
@Tests = grep {$_->[0] ne 'output-is-input.p'} @Tests;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
Summary: A set of basic GNU tools commonly used in shell scripts
|
Summary: A set of basic GNU tools commonly used in shell scripts
|
||||||
Name: coreutils
|
Name: coreutils
|
||||||
Version: 8.22
|
Version: 8.22
|
||||||
Release: 16%{?dist}
|
Release: 22%{?dist}
|
||||||
License: GPLv3+
|
License: GPLv3+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
Url: http://www.gnu.org/software/coreutils/
|
Url: http://www.gnu.org/software/coreutils/
|
||||||
|
|
@ -235,6 +235,8 @@ find %{buildroot}%{_datadir}/locale -type l | \
|
||||||
done)
|
done)
|
||||||
|
|
||||||
%find_lang %name
|
%find_lang %name
|
||||||
|
#Add the %lang(xyz) ownership for the LC_TIME dirs as well...
|
||||||
|
grep LC_TIME %name.lang | cut -d'/' -f1-6 | sed -e 's/) /) %%dir /g' >>%name.lang
|
||||||
|
|
||||||
# (sb) Deal with Installed (but unpackaged) file(s) found
|
# (sb) Deal with Installed (but unpackaged) file(s) found
|
||||||
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
||||||
|
|
@ -266,10 +268,11 @@ fi
|
||||||
|
|
||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
%dir %{_datadir}/locale/*/LC_TIME
|
|
||||||
%config(noreplace) %{_sysconfdir}/DIR_COLORS*
|
%config(noreplace) %{_sysconfdir}/DIR_COLORS*
|
||||||
%config(noreplace) %{_sysconfdir}/profile.d/*
|
%config(noreplace) %{_sysconfdir}/profile.d/*
|
||||||
%doc COPYING ABOUT-NLS ChangeLog.bz2 NEWS README THANKS TODO old/*
|
%doc ABOUT-NLS NEWS README THANKS TODO
|
||||||
|
%{!?_licensedir:%global license %%doc}
|
||||||
|
%license COPYING
|
||||||
%{_bindir}/arch
|
%{_bindir}/arch
|
||||||
%{_bindir}/basename
|
%{_bindir}/basename
|
||||||
%{_bindir}/cat
|
%{_bindir}/cat
|
||||||
|
|
@ -377,6 +380,30 @@ fi
|
||||||
%{_sbindir}/chroot
|
%{_sbindir}/chroot
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu May 14 2015 Kamil Dudka <kdudka@redhat.com> - 8.22-22
|
||||||
|
- sort - fix buffer overflow in some case conversions
|
||||||
|
- patch by Pádraig Brady
|
||||||
|
- Adjust LS_COLORS in 256 color mode; brighten some, remove hardlink colors (#1196642)
|
||||||
|
- Drop large ancient docs
|
||||||
|
- have the LC_TIME subdirs with lang macro (#1169027)
|
||||||
|
|
||||||
|
* Thu Oct 23 2014 Adam Williamson <awilliam@redhat.com> - 8.22-21
|
||||||
|
- revert -20 change: turns out there's a better fix elsewhere
|
||||||
|
|
||||||
|
* Thu Oct 23 2014 Adam Williamson <awilliam@redhat.com> - 8.22-20
|
||||||
|
- disable openssl support for now due to dep issues (#1156198)
|
||||||
|
|
||||||
|
* Wed Oct 15 2014 Ondrej Vasik <ovasik@redhat.com> - 8.22-19
|
||||||
|
- handle situation with ro /tmp in colorls scripts (#1149761)
|
||||||
|
- fix the sorting in multibyte locales (NUL-terminate sort keys)
|
||||||
|
- patch by Andreas Schwab (#1146185)
|
||||||
|
|
||||||
|
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 8.22-18
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
|
||||||
|
|
||||||
|
* Fri Jul 11 2014 Tom Callaway <spot@fedoraproject.org> - 8.22-17
|
||||||
|
- fix license handling
|
||||||
|
|
||||||
* Mon Jun 23 2014 Jakub Čajka <jcajka@redhat.com> - 8.22-16
|
* Mon Jun 23 2014 Jakub Čajka <jcajka@redhat.com> - 8.22-16
|
||||||
- fix failed tests on ppc(backport from gnulib upstream)
|
- fix failed tests on ppc(backport from gnulib upstream)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue