mirror of
https://git.savannah.gnu.org/git/coreutils.git
synced 2025-09-10 07:59:52 +02:00
Compare commits
312 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9024b7d89 | ||
|
|
3a696dee72 | ||
|
|
e121071489 | ||
|
|
53276320df | ||
|
|
9d308df132 | ||
|
|
2c436decf8 | ||
|
|
a6f94fcebc | ||
|
|
30071b2f5c | ||
|
|
be2dabef95 | ||
|
|
452dc6b5ef | ||
|
|
aa078afcf9 | ||
|
|
fedebc59a0 | ||
|
|
ee9e43460f | ||
|
|
3468d26884 | ||
|
|
bdc99991d3 | ||
|
|
c999133e53 | ||
|
|
15f1d0c9aa | ||
|
|
e744f4b7b7 | ||
|
|
57e0a882ef | ||
|
|
b8a6996e25 | ||
|
|
a18ba2f10a | ||
|
|
c83f723267 | ||
|
|
c8b8279d2b | ||
|
|
a6719d9f72 | ||
|
|
032a549481 | ||
|
|
8f6c5d4327 | ||
|
|
6539e15620 | ||
|
|
fdf0a44967 | ||
|
|
26996738e4 | ||
|
|
219b894de4 | ||
|
|
bcb9078e38 | ||
|
|
280aa28c4d | ||
|
|
e50751d845 | ||
|
|
2bb1876c9a | ||
|
|
31f19d681f | ||
|
|
4c13a6d743 | ||
|
|
0092d5d88b | ||
|
|
3d53e7fe1c | ||
|
|
7e0ef7c035 | ||
|
|
9cf086f318 | ||
|
|
89779e8497 | ||
|
|
e82602833d | ||
|
|
33230a19ca | ||
|
|
b1e9cb9cd2 | ||
|
|
e43d30eab3 | ||
|
|
64ecea53d9 | ||
|
|
64cf1033cc | ||
|
|
5e1f5c5739 | ||
|
|
0f35329876 | ||
|
|
ef44086db0 | ||
|
|
5911eff83e | ||
|
|
1a1c46afe2 | ||
|
|
911ffaaf30 | ||
|
|
9566c5851a | ||
|
|
cd65eb9798 | ||
|
|
a4d14d3533 | ||
|
|
488172c499 | ||
|
|
4b101ccd17 | ||
|
|
a04110e568 | ||
|
|
15b8318e93 | ||
|
|
b1428e3152 | ||
|
|
049f1dbe68 | ||
|
|
1b1d656b2d | ||
|
|
1fcb4ba932 | ||
|
|
ee7740c300 | ||
|
|
89bf03c9a1 | ||
|
|
56673dbe8a | ||
|
|
cbedb8aa21 | ||
|
|
a6342a320e | ||
|
|
d42f3a4d41 | ||
|
|
eb7ef0148a | ||
|
|
ae7b1c383f | ||
|
|
be17e3b98a | ||
|
|
9f5aa48501 | ||
|
|
61167bae9f | ||
|
|
5e264bf248 | ||
|
|
a84286ce7a | ||
|
|
0dd13c463d | ||
|
|
57c929da8b | ||
|
|
7480e2db29 | ||
|
|
94c21417fe | ||
|
|
73f9879ce2 | ||
|
|
8931cdbfda | ||
|
|
9076b28464 | ||
|
|
f7f398a1d9 | ||
|
|
c1d07237a8 | ||
|
|
a3eb71a98f | ||
|
|
4b4a465798 | ||
|
|
8195165839 | ||
|
|
4724cd8fe8 | ||
|
|
409a7cc7ea | ||
|
|
4e776faa84 | ||
|
|
697d00c321 | ||
|
|
72addfcac9 | ||
|
|
f19747455e | ||
|
|
a507ed6ede | ||
|
|
4624581d53 | ||
|
|
69fed0dfec | ||
|
|
7f48aa570d | ||
|
|
933989eca6 | ||
|
|
2fe737e595 | ||
|
|
b29db67676 | ||
|
|
8ca2b9659d | ||
|
|
9f237a03c0 | ||
|
|
d55d3dd588 | ||
|
|
557b3b2a35 | ||
|
|
bf5ba002c2 | ||
|
|
4bb5dbcfef | ||
|
|
140eca15c4 | ||
|
|
da2b32e7af | ||
|
|
e57a547bc0 | ||
|
|
b01355a1dc | ||
|
|
31eeead938 | ||
|
|
02551d8a62 | ||
|
|
447b5d9320 | ||
|
|
d1b0155d80 | ||
|
|
67ebdb9f20 | ||
|
|
d7878454cd | ||
|
|
3068c84765 | ||
|
|
2a90c5a125 | ||
|
|
d955282324 | ||
|
|
14a1e3ea83 | ||
|
|
9d46b25ded | ||
|
|
c5cb291939 | ||
|
|
11af4b31b6 | ||
|
|
e9a2555826 | ||
|
|
dec02bb98e | ||
|
|
80bc8651fd | ||
|
|
132d005515 | ||
|
|
fd0b040fa5 | ||
|
|
3c8e42957e | ||
|
|
d3227eeb90 | ||
|
|
bfe711db1c | ||
|
|
3ba8b04426 | ||
|
|
a517386f1b | ||
|
|
9af0dced5a | ||
|
|
36b9a1b6ac | ||
|
|
ae2b0d2ddc | ||
|
|
dd0e4c5621 | ||
|
|
50610144b0 | ||
|
|
68a959262a | ||
|
|
84e742fab4 | ||
|
|
8ac05f82a2 | ||
|
|
101d1203c6 | ||
|
|
22af6d9752 | ||
|
|
1df91bd6b9 | ||
|
|
b26c2cd3d7 | ||
|
|
ce0e4459c4 | ||
|
|
59cb41ecd7 | ||
|
|
e8fb9b0169 | ||
|
|
847446ac84 | ||
|
|
c84c362207 | ||
|
|
45354d58de | ||
|
|
512662fb30 | ||
|
|
101a30a2a0 | ||
|
|
931e0f2a70 | ||
|
|
4d3e398a74 | ||
|
|
d015505528 | ||
|
|
2403b1caa5 | ||
|
|
1e18d8416f | ||
|
|
520b69ce36 | ||
|
|
77ea441f79 | ||
|
|
76352c770e | ||
|
|
3a189ae0ce | ||
|
|
794e52b7bd | ||
|
|
5111aa4296 | ||
|
|
75a21e6248 | ||
|
|
76fd122a85 | ||
|
|
9be9d120f0 | ||
|
|
6e00315bf2 | ||
|
|
3e7a1473ae | ||
|
|
44e20cda07 | ||
|
|
b1230020dc | ||
|
|
b2a6fb0ac9 | ||
|
|
9c54c0a1d0 | ||
|
|
6e3299fcdb | ||
|
|
8965297092 | ||
|
|
ed71262bc2 | ||
|
|
f797c04415 | ||
|
|
e71f0d9df3 | ||
|
|
cfe1040c09 | ||
|
|
021a066409 | ||
|
|
a3fee8b6af | ||
|
|
da4793e949 | ||
|
|
c592a00f8f | ||
|
|
6eb3cf234f | ||
|
|
db38db4836 | ||
|
|
d72e8dff04 | ||
|
|
787592587d | ||
|
|
63098ee582 | ||
|
|
bea7b10489 | ||
|
|
79c5fcc681 | ||
|
|
01fc9e146c | ||
|
|
8df7652cfa | ||
|
|
92b7b7708e | ||
|
|
20dfc04204 | ||
|
|
1a85d4a05a | ||
|
|
73a9acd6e8 | ||
|
|
1e676ec844 | ||
|
|
5b3e538b7f | ||
|
|
040bc8b50f | ||
|
|
3e26551096 | ||
|
|
5bf2c0eed3 | ||
|
|
2d9ddc4aef | ||
|
|
729cfdb578 | ||
|
|
b7fbf82d9b | ||
|
|
0fd74a564e | ||
|
|
3d213a17fa | ||
|
|
da38f12d6f | ||
|
|
a2c811db42 | ||
|
|
9d98634b39 | ||
|
|
ad10c145ff | ||
|
|
173f4d9bd6 | ||
|
|
67b442f2aa | ||
|
|
054567f5a7 | ||
|
|
71b7ddcdd5 | ||
|
|
8ffc159611 | ||
|
|
5d39ad6419 | ||
|
|
1c5ca5c05b | ||
|
|
c0582b9df7 | ||
|
|
8f512f9bdb | ||
|
|
e36e6f2c6e | ||
|
|
97842f0b97 | ||
|
|
47e511a1d0 | ||
|
|
7db79cc4f8 | ||
|
|
06ca3797ac | ||
|
|
40324ca8b2 | ||
|
|
b8b6dd27a6 | ||
|
|
47052ddbfa | ||
|
|
5f47550b16 | ||
|
|
ac9581d80c | ||
|
|
4df39704b8 | ||
|
|
7bd653dada | ||
|
|
635bcd0d19 | ||
|
|
b64afe0605 | ||
|
|
ceae907fb8 | ||
|
|
f8245e96cd | ||
|
|
91a5badc7b | ||
|
|
4ea3e6dee1 | ||
|
|
50e5d024ba | ||
|
|
448718c123 | ||
|
|
1d9fe527a0 | ||
|
|
9aac54cdd8 | ||
|
|
ee1d9396fc | ||
|
|
d973e8a434 | ||
|
|
6603e37c1f | ||
|
|
aa6448b8d5 | ||
|
|
d84d8764cc | ||
|
|
2b5ef2dd9d | ||
|
|
ba4b05c94c | ||
|
|
e6ac01c7a1 | ||
|
|
5128605918 | ||
|
|
65527e1c1a | ||
|
|
8ad8306327 | ||
|
|
50424fe2a5 | ||
|
|
53f48c7b0e | ||
|
|
f15673fecb | ||
|
|
f013fe07ab | ||
|
|
2f1384b7e4 | ||
|
|
e8f703c000 | ||
|
|
22f3b2e960 | ||
|
|
5bb6316bd7 | ||
|
|
f8ae6440eb | ||
|
|
2ade806cf5 | ||
|
|
d191bfe8a6 | ||
|
|
f5b498c09a | ||
|
|
e6fb579f41 | ||
|
|
1bb97e2aa1 | ||
|
|
d96c2069d9 | ||
|
|
385634c8dd | ||
|
|
866844826c | ||
|
|
537f9da37f | ||
|
|
60cd4c271d | ||
|
|
ead96f9ede | ||
|
|
563bb94068 | ||
|
|
7b68a43111 | ||
|
|
2629776078 | ||
|
|
3fb0f4aaf2 | ||
|
|
d12ca9764b | ||
|
|
c977d5de8d | ||
|
|
bb1c6912f2 | ||
|
|
11cb50ee6d | ||
|
|
fc4c062ffa | ||
|
|
43a987e179 | ||
|
|
e1fc300b59 | ||
|
|
5f567ce4bd | ||
|
|
88873501cf | ||
|
|
d588c8100c | ||
|
|
07498748d2 | ||
|
|
7289f12588 | ||
|
|
e1c589ecd5 | ||
|
|
28460826d3 | ||
|
|
f215f7fe06 | ||
|
|
84457c491e | ||
|
|
4f38e9f249 | ||
|
|
bec8920923 | ||
|
|
57ee5493d9 | ||
|
|
1d0a7ed7d5 | ||
|
|
081e262daf | ||
|
|
eb6f977ff5 | ||
|
|
57db1fc2a9 | ||
|
|
80a1aca0d2 | ||
|
|
a4fa14849a | ||
|
|
9bb92a4db1 | ||
|
|
f2fb24809c | ||
|
|
6c93cd4512 | ||
|
|
e92b0dbc13 | ||
|
|
7da844cc86 | ||
|
|
b98e41cc74 | ||
|
|
3f456c54bb | ||
|
|
82e86b4831 | ||
|
|
1888629627 |
80
.gitignore
vendored
80
.gitignore
vendored
@@ -2,6 +2,7 @@
|
||||
*.[EIOX]
|
||||
*.bak
|
||||
*.o
|
||||
*.trs
|
||||
*/.deps
|
||||
*~
|
||||
._bootmp
|
||||
@@ -18,11 +19,14 @@
|
||||
/build-aux/.gitignore
|
||||
/build-aux/compile
|
||||
/build-aux/config.guess
|
||||
/build-aux/config.rpath
|
||||
/build-aux/config.sub
|
||||
/build-aux/depcomp
|
||||
/build-aux/install-sh
|
||||
/build-aux/mdate-sh
|
||||
/build-aux/missing
|
||||
/build-aux/snippet/
|
||||
/build-aux/test-driver
|
||||
/build-aux/texinfo.tex
|
||||
/build-aux/ylwrap
|
||||
/config.cache
|
||||
@@ -36,6 +40,7 @@
|
||||
/gnulib-tests
|
||||
/lib/.cvsignore
|
||||
/lib/.gitignore
|
||||
/lib/alloca.h
|
||||
/lib/arg-nonnull.h
|
||||
/lib/arpa
|
||||
/lib/binary-io.h
|
||||
@@ -44,20 +49,85 @@
|
||||
/lib/config.h
|
||||
/lib/config.hin
|
||||
/lib/configmake.h
|
||||
/lib/ctype.h
|
||||
/lib/dirent.h
|
||||
/lib/fcntl.h
|
||||
/lib/getopt.h
|
||||
/lib/glthread
|
||||
/lib/iconv.h
|
||||
/lib/iconv_open-aix.h
|
||||
/lib/iconv_open-hpux.h
|
||||
/lib/iconv_open-irix.h
|
||||
/lib/iconv_open-osf.h
|
||||
/lib/iconv_open-solaris.h
|
||||
/lib/inttypes.h
|
||||
/lib/langinfo.h
|
||||
/lib/libcoreutils.a
|
||||
/lib/link-warning.h
|
||||
/lib/locale.h
|
||||
/lib/math.h
|
||||
/lib/netdb.h
|
||||
/lib/parse-datetime.c
|
||||
/lib/printf.c
|
||||
/lib/progname.c
|
||||
/lib/progname.h
|
||||
/lib/ref-add.sed
|
||||
/lib/ref-del.sed
|
||||
/lib/selinux
|
||||
/lib/signal.h
|
||||
/lib/stamp-h1
|
||||
/lib/stdalign.h
|
||||
/lib/stdio.h
|
||||
/lib/stdlib.h
|
||||
/lib/string.h
|
||||
/lib/strings.h
|
||||
/lib/sys/
|
||||
/lib/termios.h
|
||||
/lib/time.h
|
||||
/lib/unistd.h
|
||||
/lib/unistr
|
||||
/lib/unistr.h
|
||||
/lib/unitypes.h
|
||||
/lib/uniwidth
|
||||
/lib/uniwidth.h
|
||||
/lib/unused-parameter.h
|
||||
/lib/warn-on-use.h
|
||||
/lib/wchar.h
|
||||
/lib/wctype.h
|
||||
/m4/.cvsignore
|
||||
/m4/.gitignore
|
||||
/m4/codeset.m4
|
||||
/m4/fcntl-o.m4
|
||||
/m4/gettext.m4
|
||||
/m4/glibc2.m4
|
||||
/m4/glibc21.m4
|
||||
/m4/gnulib-cache.m4
|
||||
/m4/iconv.m4
|
||||
/m4/intdiv0.m4
|
||||
/m4/intl.m4
|
||||
/m4/intldir.m4
|
||||
/m4/intlmacosx.m4
|
||||
/m4/intmax.m4
|
||||
/m4/inttypes-pri.m4
|
||||
/m4/inttypes_h.m4
|
||||
/m4/lcmessage.m4
|
||||
/m4/lib-ld.m4
|
||||
/m4/lib-link.m4
|
||||
/m4/lib-prefix.m4
|
||||
/m4/lock.m4
|
||||
/m4/longlong.m4
|
||||
/m4/nls.m4
|
||||
/m4/po.m4
|
||||
/m4/printf-posix.m4
|
||||
/m4/progtest.m4
|
||||
/m4/size_max.m4
|
||||
/m4/stdint_h.m4
|
||||
/m4/threadlib.m4
|
||||
/m4/uintmax_t.m4
|
||||
/m4/visibility.m4
|
||||
/m4/wchar_t.m4
|
||||
/m4/wint_t.m4
|
||||
/m4/xsize.m4
|
||||
/maint.mk
|
||||
/man/*.1
|
||||
/po/*.gmo
|
||||
@@ -66,10 +136,20 @@
|
||||
/po/.reference
|
||||
/po/LINGUAS
|
||||
/po/Makefile.in
|
||||
/po/Makefile.in.in
|
||||
/po/Makevars
|
||||
/po/Makevars.template
|
||||
/po/POTFILES
|
||||
/po/Rules-quot
|
||||
/po/boldquot.sed
|
||||
/po/checksums
|
||||
/po/coreutils.pot
|
||||
/po/en@boldquot.header
|
||||
/po/en@quot.header
|
||||
/po/insert-header.sin
|
||||
/po/quot.sed
|
||||
/po/remove-potcdate.sed
|
||||
/po/remove-potcdate.sin
|
||||
/po/stamp-po
|
||||
/src/version.c
|
||||
/src/version.h
|
||||
|
||||
@@ -1 +1 @@
|
||||
8.12
|
||||
8.16
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Suppress valgrind diagnostics we don't care about.
|
||||
|
||||
# Copyright (C) 2003-2004, 2006-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
||||
1
AUTHORS
1
AUTHORS
@@ -62,6 +62,7 @@ printf: David MacKenzie
|
||||
ptx: François Pinard
|
||||
pwd: Jim Meyering
|
||||
readlink: Dmitry V. Levin
|
||||
realpath: Pádraig Brady
|
||||
rm: Paul Rubin, David MacKenzie, Richard M. Stallman, Jim Meyering
|
||||
rmdir: David MacKenzie
|
||||
runcon: Russell Coker
|
||||
|
||||
@@ -1206,7 +1206,7 @@
|
||||
* tests/Coreutils.pm: New keywords, ENV and ENV_DEL, to support
|
||||
tests/misc/date.
|
||||
|
||||
With todays additions, the generated shell script,
|
||||
With today's additions, the generated shell script,
|
||||
tests/date/date-tests had becoming far too large (over 350KB),
|
||||
so use the superior-but-perl-requiring framework instead.
|
||||
* tests/date/Test.pm: Move all tests from here...
|
||||
@@ -11609,7 +11609,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2002-2005, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -4033,7 +4033,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -3262,7 +3262,7 @@
|
||||
|
||||
rm without -f: give a better diagnostic when euidaccess fails.
|
||||
* src/remove.c (write_protected_non_symlink): Return int, not bool,
|
||||
so that we can indicate failure too (as a postive error number).
|
||||
so that we can indicate failure too (as a positive error number).
|
||||
(prompt): If write_protected_non_symlink fails, report that error
|
||||
number and fail rather than charging ahead and removing the dubious
|
||||
entry. Redo the logic of printing a diagnostic so that we need to
|
||||
@@ -4015,7 +4015,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2007, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2007-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
(errno_may_be_empty, ignorable_failure): New functions.
|
||||
* src/remove.c (is_empty_dir): Move function to ...
|
||||
* src/system.h (is_empty_dir): ...here, and make it inline.
|
||||
Suggested by Josselin Mouette in <http://bugs.debian.org/363011>
|
||||
Suggested by Josselin Mouette in <http://bugs.debian.org/350541>
|
||||
via Bob Proulx.
|
||||
* NEWS: Mention the improvement.
|
||||
|
||||
@@ -372,7 +372,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2008-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2008-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
17
HACKING
17
HACKING
@@ -232,6 +232,17 @@ Try to make the summary line fit one of the following forms:
|
||||
build: change-description
|
||||
maint: change-description
|
||||
|
||||
If your commit fixes a bug, try to find the commit that introduced that
|
||||
bug. If you do that, add a note in your new commit log saying something
|
||||
like "Introduced by commit v8.12-103-g54cbe6e." and add something like
|
||||
[bug introduced in coreutils-8.13] in the corresponding NEWS blurb.
|
||||
Assuming you found the bug in commit 54cbe6e6, "git describe 54cbe6e6"
|
||||
will print the longer tag-relative string that you'll need.
|
||||
Note that we used to use an 8-byte SHA1 prefix like "54cbe6e6", because
|
||||
that was automatically rendered as a clickable link by "gitk", but with
|
||||
git-1.7.10, the more descriptive version-containing "git describe" format
|
||||
that we now require is also highlighted.
|
||||
|
||||
|
||||
Curly braces: use judiciously
|
||||
=============================
|
||||
@@ -603,11 +614,11 @@ Then just open the index.html file (in the generated lcov-html directory)
|
||||
in your favorite web browser.
|
||||
|
||||
========================================================================
|
||||
Copyright (C) 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2009-2012 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with no
|
||||
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
|
||||
Texts. A copy of the license is included in the ``GNU Free
|
||||
Documentation License'' file as part of this distribution.
|
||||
Texts. A copy of the license is included in the "GNU Free
|
||||
Documentation License" file as part of this distribution.
|
||||
|
||||
33
Makefile.am
33
Makefile.am
@@ -1,6 +1,6 @@
|
||||
# Make coreutils. -*-Makefile-*-
|
||||
|
||||
# Copyright (C) 1990, 1993-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1990-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -66,11 +66,17 @@ ALL_RECURSIVE_TARGETS += check-root
|
||||
check-root:
|
||||
cd tests && $(MAKE) $@ SUBDIRS=
|
||||
|
||||
# Shortcut targets to make it easier to run (very) expensive tests.
|
||||
check-expensive:
|
||||
$(MAKE) check RUN_EXPENSIVE_TESTS=yes
|
||||
check-very-expensive:
|
||||
$(MAKE) check-expensive RUN_VERY_EXPENSIVE_TESTS=yes
|
||||
|
||||
# Just prior to distribution, ...
|
||||
# transform the automake-generated rule that runs `rm -f rm'.
|
||||
# transform the automake-generated rule that runs 'rm -f rm'.
|
||||
# On some systems, that command would fail with a diagnostic like
|
||||
# `rm: cannot unlink `rm': Text file busy' when `.' appears so early
|
||||
# in the shell's search path that running `rm' would run the `rm'
|
||||
# "rm: cannot unlink 'rm': Text file busy" when '.' appears so early
|
||||
# in the shell's search path that running 'rm' would run the 'rm'
|
||||
# executable in the current directory.
|
||||
# Similarly, adjust the clean-binPROGRAMS rule.
|
||||
rm_subst = \
|
||||
@@ -93,6 +99,7 @@ gen_start_date = 2008-02-08
|
||||
gen-ChangeLog:
|
||||
$(AM_V_GEN)if test -d .git; then \
|
||||
$(top_srcdir)/build-aux/gitlog-to-changelog \
|
||||
--amend=$(srcdir)/build-aux/git-log-fix \
|
||||
--since=$(gen_start_date) > $(distdir)/cl-t; \
|
||||
rm -f $(distdir)/ChangeLog; \
|
||||
mv $(distdir)/cl-t $(distdir)/ChangeLog; \
|
||||
@@ -136,7 +143,7 @@ ASSORT = LC_ALL=C sort
|
||||
prologue = perl -ne '/^\#\#/ and exit; print' $(srcdir)/THANKS.in
|
||||
|
||||
THANKS: THANKS.in Makefile.am .mailmap thanks-gen .version
|
||||
$(AM_V_GEN) \
|
||||
$(AM_V_GEN)rm -f $@-t $@; \
|
||||
{ \
|
||||
$(prologue); echo; \
|
||||
{ perl -ne '/^$$/.../^$$/ and print' $(srcdir)/THANKS.in \
|
||||
@@ -147,4 +154,18 @@ THANKS: THANKS.in Makefile.am .mailmap thanks-gen .version
|
||||
| LC_ALL=en_US.UTF-8 sort -f; \
|
||||
echo; \
|
||||
printf ';; %s\n' 'Local Variables:' 'coding: utf-8' End:; \
|
||||
} > $@-t && mv $@-t $@
|
||||
} > $@-t && chmod a-w $@-t && mv $@-t $@
|
||||
|
||||
# Some of our git hook scripts are supposed to be identical to git's samples.
|
||||
# See if they are still in sync.
|
||||
.PHONY: check-git-hook-script-sync
|
||||
check-git-hook-script-sync:
|
||||
@fail=0; \
|
||||
t=$$(mktemp -d) \
|
||||
&& cd $$t && git init -q && cd .git/hooks \
|
||||
&& for i in pre-commit pre-applypatch applypatch-msg; do \
|
||||
diff $(abs_top_srcdir)/scripts/git-hooks/$$i $$i.sample \
|
||||
|| fail=1; \
|
||||
done; \
|
||||
rm -rf $$t; \
|
||||
test $$fail = 0
|
||||
|
||||
496
NEWS
496
NEWS
@@ -1,5 +1,221 @@
|
||||
GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
* Noteworthy changes in release 8.17 (2012-05-10) [stable]
|
||||
|
||||
** Bug fixes
|
||||
|
||||
id and groups, when invoked with no user name argument, would print
|
||||
the default group ID listed in the password database, and sometimes
|
||||
that ID would be neither real nor effective. For example, when run
|
||||
set-GID, or in a session for which the default group has just been
|
||||
changed, the new group ID would be listed, even though it is not
|
||||
yet effective. [bug introduced in coreutils-8.1]
|
||||
|
||||
cp S D is no longer subject to a race: if an existing D were removed
|
||||
between the initial stat and subsequent open-without-O_CREATE, cp would
|
||||
fail with a confusing diagnostic saying that the destination, D, was not
|
||||
found. Now, in this unusual case, it retries the open (but with O_CREATE),
|
||||
and hence usually succeeds. With NFS attribute caching, the condition
|
||||
was particularly easy to trigger, since there, the removal of D could
|
||||
precede the initial stat. [This bug was present in "the beginning".]
|
||||
|
||||
split --number=C /dev/null no longer appears to infloop on GNU/Hurd
|
||||
[bug introduced in coreutils-8.8]
|
||||
|
||||
stat no longer reports a negative file size as a huge positive number.
|
||||
[bug present since 'stat' was introduced in fileutils-4.1.9]
|
||||
|
||||
** New features
|
||||
|
||||
split and truncate now allow any seekable files in situations where
|
||||
the file size is needed, instead of insisting on regular files.
|
||||
|
||||
fmt now accepts the --goal=WIDTH (-g) option.
|
||||
|
||||
stat -f recognizes new file system types: bdevfs, inodefs, qnx6
|
||||
|
||||
** Changes in behavior
|
||||
|
||||
cp,mv,install,cat,split: now read and write a minimum of 64KiB at a time.
|
||||
This was previously 32KiB and increasing to 64KiB was seen to increase
|
||||
throughput by about 10% when reading cached files on 64 bit GNU/Linux.
|
||||
|
||||
cp --attributes-only no longer truncates any existing destination file,
|
||||
allowing for more general copying of attributes from one file to another.
|
||||
|
||||
|
||||
* Noteworthy changes in release 8.16 (2012-03-26) [stable]
|
||||
|
||||
** New features
|
||||
|
||||
As a GNU extension, 'chmod', 'mkdir', and 'install' now accept operators
|
||||
'-', '+', '=' followed by octal modes; for example, 'chmod +40 FOO' enables
|
||||
and 'chmod -40 FOO' disables FOO's group-read permissions. Operator
|
||||
numeric modes can be combined with symbolic modes by separating them with
|
||||
commas; for example, =0,u+r clears all permissions except for enabling
|
||||
user-read permissions. Unlike ordinary numeric modes, operator numeric
|
||||
modes do not preserve directory setuid and setgid bits; for example,
|
||||
'chmod =0 FOO' clears all of FOO's permissions, including setuid and setgid.
|
||||
|
||||
Also, ordinary numeric modes with five or more digits no longer preserve
|
||||
setuid and setgid bits, so that 'chmod 00755 FOO' now clears FOO's setuid
|
||||
and setgid bits. This allows scripts to be portable to other systems which
|
||||
lack the GNU extension mentioned previously, and where ordinary numeric
|
||||
modes do not preserve directory setuid and setgid bits.
|
||||
|
||||
dd now accepts the count_bytes, skip_bytes iflags and the seek_bytes
|
||||
oflag, to more easily allow processing portions of a file.
|
||||
|
||||
dd now accepts the conv=sparse flag to attempt to create sparse
|
||||
output, by seeking rather than writing to the output file.
|
||||
|
||||
ln now accepts the --relative option, to generate a relative
|
||||
symbolic link to a target, irrespective of how the target is specified.
|
||||
|
||||
split now accepts an optional "from" argument to --numeric-suffixes,
|
||||
which changes the start number from the default of 0.
|
||||
|
||||
split now accepts the --additional-suffix option, to append an
|
||||
additional static suffix to output file names.
|
||||
|
||||
basename now supports the -a and -s options, which allow processing
|
||||
of more than one argument at a time. Also the complementary
|
||||
-z option was added to delimit output items with the NUL character.
|
||||
|
||||
dirname now supports more than one argument. Also the complementary
|
||||
-z option was added to delimit output items with the NUL character.
|
||||
|
||||
** Bug fixes
|
||||
|
||||
du --one-file-system (-x) would ignore any non-directory specified on
|
||||
the command line. For example, "touch f; du -x f" would print nothing.
|
||||
[bug introduced in coreutils-8.15]
|
||||
|
||||
mv now lets you move a symlink onto a same-inode destination file that
|
||||
has two or more hard links. Before, it would reject that, saying that
|
||||
they are the same, implicitly warning you that the move would result in
|
||||
data loss. In this unusual case, when not moving the symlink onto its
|
||||
referent, there is no risk of data loss, since the symlink will
|
||||
typically still point to one of the hard links.
|
||||
|
||||
"mv A B" could succeed, yet A would remain. This would happen only when
|
||||
both A and B were hard links to the same symlink, and with a kernel for
|
||||
which rename("A","B") does nothing and returns 0 (POSIX mandates this
|
||||
surprising rename no-op behavior). Now, mv handles this case by skipping
|
||||
the usually-useless rename and simply unlinking A.
|
||||
|
||||
realpath no longer mishandles a root directory. This was most
|
||||
noticeable on platforms where // is a different directory than /,
|
||||
but could also be observed with --relative-base=/ or
|
||||
--relative-to=/. [bug since the beginning, in 8.15]
|
||||
|
||||
** Improvements
|
||||
|
||||
ls can be much more efficient, especially with large directories on file
|
||||
systems for which getfilecon-, ACL-check- and XATTR-check-induced syscalls
|
||||
fail with ENOTSUP or similar.
|
||||
|
||||
'realpath --relative-base=dir' in isolation now implies '--relative-to=dir'
|
||||
instead of causing a usage failure.
|
||||
|
||||
split now supports an unlimited number of split files as default behavior.
|
||||
|
||||
|
||||
* Noteworthy changes in release 8.15 (2012-01-06) [stable]
|
||||
|
||||
** New programs
|
||||
|
||||
realpath: print resolved file names.
|
||||
|
||||
** Bug fixes
|
||||
|
||||
du -x no longer counts root directories of other file systems.
|
||||
[bug introduced in coreutils-5.1.0]
|
||||
|
||||
ls --color many-entry-directory was uninterruptible for too long
|
||||
[bug introduced in coreutils-5.2.1]
|
||||
|
||||
ls's -k option no longer affects how ls -l outputs file sizes.
|
||||
It now affects only the per-directory block counts written by -l,
|
||||
and the sizes written by -s. This is for compatibility with BSD
|
||||
and with POSIX 2008. Because -k is no longer equivalent to
|
||||
--block-size=1KiB, a new long option --kibibyte stands for -k.
|
||||
[bug introduced in coreutils-4.5.4]
|
||||
|
||||
ls -l would leak a little memory (security context string) for each
|
||||
nonempty directory listed on the command line, when using SELinux.
|
||||
[bug probably introduced in coreutils-6.10 with SELinux support]
|
||||
|
||||
rm -rf DIR would fail with "Device or resource busy" on Cygwin with NWFS
|
||||
and NcFsd file systems. This did not affect Unix/Linux-based kernels.
|
||||
[bug introduced in coreutils-8.0, when rm began using fts]
|
||||
|
||||
split -n 1/2 FILE no longer fails when operating on a growing file, or
|
||||
(on some systems) when operating on a non-regular file like /dev/zero.
|
||||
It would report "/dev/zero: No such file or directory" even though
|
||||
the file obviously exists. Same for -n l/2.
|
||||
[bug introduced in coreutils-8.8, with the addition of the -n option]
|
||||
|
||||
stat -f now recognizes the FhGFS and PipeFS file system types.
|
||||
|
||||
tac no longer fails to handle two or more non-seekable inputs
|
||||
[bug introduced in coreutils-5.3.0]
|
||||
|
||||
tail -f no longer tries to use inotify on GPFS or FhGFS file systems
|
||||
[you might say this was introduced in coreutils-7.5, along with inotify
|
||||
support, but the new magic numbers weren't in the usual places then.]
|
||||
|
||||
** Changes in behavior
|
||||
|
||||
df avoids long UUID-including file system names in the default listing.
|
||||
With recent enough kernel/tools, these long names would be used, pushing
|
||||
second and subsequent columns far to the right. Now, when a long name
|
||||
refers to a symlink, and no file systems are specified, df prints the
|
||||
usually-short referent instead.
|
||||
|
||||
tail -f now uses polling (not inotify) when any of its file arguments
|
||||
resides on a file system of unknown type. In addition, for each such
|
||||
argument, tail -f prints a warning with the FS type magic number and a
|
||||
request to report it to the bug-reporting address.
|
||||
|
||||
|
||||
* Noteworthy changes in release 8.14 (2011-10-12) [stable]
|
||||
|
||||
** 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]
|
||||
|
||||
** 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.
|
||||
|
||||
** Changes in behavior
|
||||
|
||||
timeout now only processes the first signal received from the set
|
||||
it is handling (SIGTERM, SIGINT, ...). This is to support systems that
|
||||
implicitly create threads for some timer functions (like GNU/kFreeBSD).
|
||||
|
||||
** Build-related
|
||||
|
||||
"make dist" no longer builds .tar.gz files.
|
||||
xz is portable enough and in wide-enough use that distributing
|
||||
only .tar.xz files is enough.
|
||||
|
||||
|
||||
* Noteworthy changes in release 8.13 (2011-09-08) [stable]
|
||||
|
||||
** Bug fixes
|
||||
@@ -91,7 +307,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
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.
|
||||
For example 'shuf -i1-$((2**32-1)) -n2' no longer exhausts memory.
|
||||
|
||||
stat -f now recognizes the GPFS, MQUEUE and PSTOREFS file system types.
|
||||
|
||||
@@ -696,7 +912,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
On Solaris 9, many commands would mistakenly treat file/ the same as
|
||||
file. Now, even on such a system, path resolution obeys the POSIX
|
||||
rules that a trailing slash ensures that the preceeding name is a
|
||||
rules that a trailing slash ensures that the preceding name is a
|
||||
directory or a symlink to a directory.
|
||||
|
||||
** Changes in behavior
|
||||
@@ -917,7 +1133,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
** Changes in behavior
|
||||
|
||||
shred, sort, shuf: now use an internal pseudorandom generator by default.
|
||||
This is mainly noticable in shred where the 3 random passes it does by
|
||||
This is mainly noticeable in shred where the 3 random passes it does by
|
||||
default should proceed at the speed of the disk. Previously /dev/urandom
|
||||
was used if available, which is relatively slow on GNU/Linux systems.
|
||||
|
||||
@@ -938,7 +1154,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
df now pre-mounts automountable directories even with automounters for
|
||||
which stat-like syscalls no longer provoke mounting. Now, df uses open.
|
||||
|
||||
`id -G $USER` now works correctly even on Darwin and NetBSD. Previously it
|
||||
'id -G $USER' now works correctly even on Darwin and NetBSD. Previously it
|
||||
would either truncate the group list to 10, or go into an infinite loop,
|
||||
due to their non-standard getgrouplist implementations.
|
||||
[truncation introduced in coreutils-6.11]
|
||||
@@ -1733,9 +1949,9 @@ GNU coreutils NEWS -*- outline -*-
|
||||
uses a relative file name. This avoids some race conditions, but it
|
||||
means you may need to kill two processes to stop these programs.
|
||||
|
||||
rm now rejects attempts to remove the root directory, e.g., `rm -fr /'
|
||||
rm now rejects attempts to remove the root directory, e.g., 'rm -fr /'
|
||||
now fails without removing anything. Likewise for any file name with
|
||||
a final `./' or `../' component.
|
||||
a final './' or '../' component.
|
||||
|
||||
tail now ignores the -f option if POSIXLY_CORRECT is set, no file
|
||||
operand is given, and standard input is any FIFO; formerly it did
|
||||
@@ -1817,23 +2033,23 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
chmod, install, and mkdir now preserve a directory's set-user-ID and
|
||||
set-group-ID bits unless you explicitly request otherwise. E.g.,
|
||||
`chmod 755 DIR' and `chmod u=rwx,go=rx DIR' now preserve DIR's
|
||||
'chmod 755 DIR' and 'chmod u=rwx,go=rx DIR' now preserve DIR's
|
||||
set-user-ID and set-group-ID bits instead of clearing them, and
|
||||
similarly for `mkdir -m 755 DIR' and `mkdir -m u=rwx,go=rx DIR'. To
|
||||
similarly for 'mkdir -m 755 DIR' and 'mkdir -m u=rwx,go=rx DIR'. To
|
||||
clear the bits, mention them explicitly in a symbolic mode, e.g.,
|
||||
`mkdir -m u=rwx,go=rx,-s DIR'. To set them, mention them explicitly
|
||||
in either a symbolic or a numeric mode, e.g., `mkdir -m 2755 DIR',
|
||||
`mkdir -m u=rwx,go=rx,g+s' DIR. This change is for convenience on
|
||||
'mkdir -m u=rwx,go=rx,-s DIR'. To set them, mention them explicitly
|
||||
in either a symbolic or a numeric mode, e.g., 'mkdir -m 2755 DIR',
|
||||
'mkdir -m u=rwx,go=rx,g+s' DIR. This change is for convenience on
|
||||
systems where these bits inherit from parents. Unfortunately other
|
||||
operating systems are not consistent here, and portable scripts
|
||||
cannot assume the bits are set, cleared, or preserved, even when the
|
||||
bits are explicitly mentioned. For example, OpenBSD 3.9 `mkdir -m
|
||||
777 D' preserves D's setgid bit but `chmod 777 D' clears it.
|
||||
Conversely, Solaris 10 `mkdir -m 777 D', `mkdir -m g-s D', and
|
||||
`chmod 0777 D' all preserve D's setgid bit, and you must use
|
||||
something like `chmod g-s D' to clear it.
|
||||
bits are explicitly mentioned. For example, OpenBSD 3.9 'mkdir -m
|
||||
777 D' preserves D's setgid bit but 'chmod 777 D' clears it.
|
||||
Conversely, Solaris 10 'mkdir -m 777 D', 'mkdir -m g-s D', and
|
||||
'chmod 0777 D' all preserve D's setgid bit, and you must use
|
||||
something like 'chmod g-s D' to clear it.
|
||||
|
||||
`cp --link --no-dereference' now works also on systems where the
|
||||
'cp --link --no-dereference' now works also on systems where the
|
||||
link system call cannot create a hard link to a symbolic link.
|
||||
This change has no effect on systems with a Linux-based kernel.
|
||||
|
||||
@@ -1865,7 +2081,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
now checks for).
|
||||
|
||||
install and mkdir now implement the X permission symbol correctly,
|
||||
e.g., `mkdir -m a+X dir'; previously the X was ignored.
|
||||
e.g., 'mkdir -m a+X dir'; previously the X was ignored.
|
||||
|
||||
install now creates parent directories with mode u=rwx,go=rx (755)
|
||||
instead of using the mode specified by the -m option; and it does
|
||||
@@ -1899,7 +2115,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
seq defaults to a minimal fixed point format that does not lose
|
||||
information if seq's operands are all fixed point decimal numbers.
|
||||
You no longer need the `-f%.f' in `seq -f%.f 1048575 1024 1050623',
|
||||
You no longer need the '-f%.f' in 'seq -f%.f 1048575 1024 1050623',
|
||||
for example, since the default format now has the same effect.
|
||||
|
||||
seq now lets you use %a, %A, %E, %F, and %G formats.
|
||||
@@ -1980,7 +2196,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
shred and sort now accept the --random-source option.
|
||||
|
||||
sort now accepts the --random-sort (-R) option and `R' ordering option.
|
||||
sort now accepts the --random-sort (-R) option and 'R' ordering option.
|
||||
|
||||
sort now supports obsolete usages like "sort +1 -2" unless
|
||||
POSIXLY_CORRECT is set. However, when conforming to POSIX
|
||||
@@ -1997,7 +2213,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
cp -p would fail in a /proc-less chroot, on some systems
|
||||
|
||||
When `cp -RL' encounters the same directory more than once in the
|
||||
When 'cp -RL' encounters the same directory more than once in the
|
||||
hierarchy beneath a single command-line argument, it no longer confuses
|
||||
them with hard-linked directories.
|
||||
|
||||
@@ -2059,11 +2275,11 @@ GNU coreutils NEWS -*- outline -*-
|
||||
du no longer overflows a counter when processing a file larger than
|
||||
2^31-1 on some 32-bit systems (at least some AIX 5.1 configurations).
|
||||
|
||||
md5sum once again defaults to using the ` ' non-binary marker
|
||||
(rather than the `*' binary marker) by default on Unix-like systems.
|
||||
md5sum once again defaults to using the ' ' non-binary marker
|
||||
(rather than the '*' binary marker) by default on Unix-like systems.
|
||||
|
||||
mkdir -p and install -d no longer exit nonzero when asked to create
|
||||
a directory like `nonexistent/.'
|
||||
a directory like 'nonexistent/.'
|
||||
|
||||
rm emits a better diagnostic when (without -r) it fails to remove
|
||||
a directory on e.g., Solaris 9/10 systems.
|
||||
@@ -2108,7 +2324,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
** Deprecated options
|
||||
|
||||
Using ls, du, or df with the --kilobytes option now evokes a warning
|
||||
that the long-named option is deprecated. Use `-k' instead.
|
||||
that the long-named option is deprecated. Use '-k' instead.
|
||||
|
||||
du's long-named --megabytes option now evokes a warning.
|
||||
Use -m instead.
|
||||
@@ -2116,7 +2332,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
* Major changes in release 5.90 (2005-09-29) [unstable]
|
||||
|
||||
** Bring back support for `head -NUM', `tail -NUM', etc. even when
|
||||
** Bring back support for 'head -NUM', 'tail -NUM', etc. even when
|
||||
conforming to POSIX 1003.1-2001. The following changes apply only
|
||||
when conforming to POSIX 1003.1-2001; there is no effect when
|
||||
conforming to older POSIX versions.
|
||||
@@ -2139,9 +2355,9 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
The following usages no longer work, due to the above changes:
|
||||
|
||||
date -I TIMESPEC (use `date -ITIMESPEC' instead)
|
||||
od -w WIDTH (use `od -wWIDTH' instead)
|
||||
pr -S STRING (use `pr -SSTRING' instead)
|
||||
date -I TIMESPEC (use 'date -ITIMESPEC' instead)
|
||||
od -w WIDTH (use 'od -wWIDTH' instead)
|
||||
pr -S STRING (use 'pr -SSTRING' instead)
|
||||
|
||||
A few usages still have behavior that depends on which POSIX standard is
|
||||
being conformed to, and portable applications should beware these
|
||||
@@ -2271,7 +2487,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
"mkdir -m =+x dir" no longer ignores the umask when evaluating "+x",
|
||||
and similarly for mkfifo and mknod.
|
||||
|
||||
"mkdir -p /tmp/a/b dir" no longer attempts to create the `.'-relative
|
||||
"mkdir -p /tmp/a/b dir" no longer attempts to create the '.'-relative
|
||||
directory, dir (in /tmp/a), when, after creating /tmp/a/b, it is unable
|
||||
to return to its initial working directory. Similarly for "install -D
|
||||
file /tmp/a/b/file".
|
||||
@@ -2293,7 +2509,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
nice now works on Darwin 7.7.0 in spite of its invalid definition of NZERO.
|
||||
|
||||
`rm -r' can remove all entries in a directory even when it is on a
|
||||
'rm -r' can remove all entries in a directory even when it is on a
|
||||
file system for which readdir is buggy and that was not checked by
|
||||
coreutils' old configure-time run-test.
|
||||
|
||||
@@ -2429,7 +2645,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
pathchk no longer accepts trailing options, e.g., "pathchk -p foo -b"
|
||||
now treats -b as a file name to check, not as an invalid option.
|
||||
|
||||
`pr --columns=N' was not equivalent to `pr -N' when also using
|
||||
'pr --columns=N' was not equivalent to 'pr -N' when also using
|
||||
either -s or -w.
|
||||
|
||||
pr now supports page numbers up to 2**64 on most hosts, and it
|
||||
@@ -2513,11 +2729,11 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
** New features
|
||||
|
||||
For efficiency, `sort -m' no longer copies input to a temporary file
|
||||
For efficiency, 'sort -m' no longer copies input to a temporary file
|
||||
merely because the input happens to come from a pipe. As a result,
|
||||
some relatively-contrived examples like `cat F | sort -m -o F - G'
|
||||
are no longer safe, as `sort' might start writing F before `cat' is
|
||||
done reading it. This problem cannot occur unless `-m' is used.
|
||||
some relatively-contrived examples like 'cat F | sort -m -o F - G'
|
||||
are no longer safe, as 'sort' might start writing F before 'cat' is
|
||||
done reading it. This problem cannot occur unless '-m' is used.
|
||||
|
||||
When outside the default POSIX locale, the 'who' and 'pinky'
|
||||
commands now output time stamps like "2004-06-21 13:09" instead of
|
||||
@@ -2561,7 +2777,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
stty now provides support (iutf8) for setting UTF-8 input mode.
|
||||
|
||||
With stat, a specified format is no longer automatically newline terminated.
|
||||
If you want a newline at the end of your output, append `\n' to the format
|
||||
If you want a newline at the end of your output, append '\n' to the format
|
||||
string.
|
||||
|
||||
'df', 'du', and 'ls' now take the default block size from the
|
||||
@@ -2577,12 +2793,12 @@ GNU coreutils NEWS -*- outline -*-
|
||||
Date syntax as used by date -d, date -f, and touch -d has been
|
||||
changed as follows:
|
||||
|
||||
Dates like `January 32' with out-of-range components are now rejected.
|
||||
Dates like 'January 32' with out-of-range components are now rejected.
|
||||
|
||||
Dates can have fractional time stamps like 2004-02-27 14:19:13.489392193.
|
||||
|
||||
Dates can be entered via integer counts of seconds since 1970 when
|
||||
prefixed by `@'. For example, `@321' represents 1970-01-01 00:05:21 UTC.
|
||||
prefixed by '@'. For example, '@321' represents 1970-01-01 00:05:21 UTC.
|
||||
|
||||
Time zone corrections can now separate hours and minutes with a colon,
|
||||
and can follow standard abbreviations like "UTC". For example,
|
||||
@@ -2594,7 +2810,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
TZ="America/New_York" date --date='TZ="Europe/Paris" 2004-10-31 06:30'
|
||||
|
||||
`date' has a new option --iso-8601=ns that outputs
|
||||
'date' has a new option --iso-8601=ns that outputs
|
||||
nanosecond-resolution time stamps.
|
||||
|
||||
echo -e '\xHH' now outputs a byte whose hexadecimal value is HH,
|
||||
@@ -2616,10 +2832,10 @@ GNU coreutils NEWS -*- outline -*-
|
||||
printf supports \u, \U, \x.
|
||||
tail supports two or more files when using the obsolete option syntax.
|
||||
|
||||
The usual `--' operand is now supported by chroot, hostid, hostname,
|
||||
The usual '--' operand is now supported by chroot, hostid, hostname,
|
||||
pwd, sync, and yes.
|
||||
|
||||
`od' now conforms to POSIX better, and is more compatible with BSD:
|
||||
'od' now conforms to POSIX better, and is more compatible with BSD:
|
||||
|
||||
The older syntax "od [-abcdfilosx]... [FILE] [[+]OFFSET[.][b]]" now works
|
||||
even without --traditional. This is a change in behavior if there
|
||||
@@ -2660,32 +2876,32 @@ GNU coreutils NEWS -*- outline -*-
|
||||
mv could mistakenly fail to preserve hard links when moving two
|
||||
or more arguments between partitions.
|
||||
|
||||
`cp --sparse=always F /dev/hdx' no longer tries to use lseek to create
|
||||
'cp --sparse=always F /dev/hdx' no longer tries to use lseek to create
|
||||
holes in the destination.
|
||||
|
||||
nohup now sets the close-on-exec flag for its copy of the stderr file
|
||||
descriptor. This avoids some nohup-induced hangs. For example, before
|
||||
this change, if you ran `ssh localhost', then `nohup sleep 600 </dev/null &',
|
||||
this change, if you ran 'ssh localhost', then 'nohup sleep 600 </dev/null &',
|
||||
and then exited that remote shell, the ssh session would hang until the
|
||||
10-minute sleep terminated. With the fixed nohup, the ssh session
|
||||
terminates immediately.
|
||||
|
||||
`expr' now conforms to POSIX better:
|
||||
'expr' now conforms to POSIX better:
|
||||
|
||||
Integers like -0 and 00 are now treated as zero.
|
||||
|
||||
The `|' operator now returns 0, not its first argument, if both
|
||||
arguments are null or zero. E.g., `expr "" \| ""' now returns 0,
|
||||
The '|' operator now returns 0, not its first argument, if both
|
||||
arguments are null or zero. E.g., 'expr "" \| ""' now returns 0,
|
||||
not the empty string.
|
||||
|
||||
The `|' and `&' operators now use short-circuit evaluation, e.g.,
|
||||
`expr 1 \| 1 / 0' no longer reports a division by zero.
|
||||
The '|' and '&' operators now use short-circuit evaluation, e.g.,
|
||||
'expr 1 \| 1 / 0' no longer reports a division by zero.
|
||||
|
||||
** New features
|
||||
|
||||
`chown user.group file' now has its traditional meaning even when
|
||||
'chown user.group file' now has its traditional meaning even when
|
||||
conforming to POSIX 1003.1-2001, so long as no user has a name
|
||||
containing `.' that happens to equal `user.group'.
|
||||
containing '.' that happens to equal 'user.group'.
|
||||
|
||||
|
||||
* Major changes in release 5.2.0 (2004-02-19) [stable]
|
||||
@@ -2699,8 +2915,8 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
** Bug fixes
|
||||
|
||||
`cp -d' now works as required even on systems like OSF V5.1 that
|
||||
declare stat and lstat as `static inline' functions.
|
||||
'cp -d' now works as required even on systems like OSF V5.1 that
|
||||
declare stat and lstat as 'static inline' functions.
|
||||
|
||||
time stamps output by stat now include actual fractional seconds,
|
||||
when available -- or .0000000 for files without that information.
|
||||
@@ -2814,7 +3030,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
ls --width=N (with -x or -C) no longer allocates more space
|
||||
(potentially much more) than necessary for a given directory.
|
||||
|
||||
dd `unblock' and `sync' may now be combined (e.g., dd conv=unblock,sync)
|
||||
dd 'unblock' and 'sync' may now be combined (e.g., dd conv=unblock,sync)
|
||||
|
||||
* Major changes in release 5.0.91 (2003-09-08):
|
||||
|
||||
@@ -2836,18 +3052,18 @@ GNU coreutils NEWS -*- outline -*-
|
||||
sort option order no longer matters for the options -S, -d, -i, -o, and -t.
|
||||
Stronger options override weaker, and incompatible options are diagnosed.
|
||||
|
||||
`sha1sum --check' now accepts the BSD format for SHA1 message digests
|
||||
'sha1sum --check' now accepts the BSD format for SHA1 message digests
|
||||
in addition to the BSD format for MD5 ones.
|
||||
|
||||
who -l now means `who --login', not `who --lookup', per POSIX.
|
||||
who -l now means 'who --login', not 'who --lookup', per POSIX.
|
||||
who's -l option has been eliciting an unconditional warning about
|
||||
this impending change since sh-utils-2.0.12 (April 2002).
|
||||
|
||||
** Bug fixes
|
||||
|
||||
Mistakenly renaming a file onto itself, e.g., via `mv B b' when `B' is
|
||||
the same directory entry as `b' no longer destroys the directory entry
|
||||
referenced by both `b' and `B'. Note that this would happen only on
|
||||
Mistakenly renaming a file onto itself, e.g., via 'mv B b' when 'B' is
|
||||
the same directory entry as 'b' no longer destroys the directory entry
|
||||
referenced by both 'b' and 'B'. Note that this would happen only on
|
||||
file systems like VFAT where two different names may refer to the same
|
||||
directory entry, usually due to lower->upper case mapping of file names.
|
||||
Now, the above can happen only on file systems that perform name mapping and
|
||||
@@ -2860,14 +3076,14 @@ GNU coreutils NEWS -*- outline -*-
|
||||
(B may well have a link count larger than 1)
|
||||
2) B and b are hard links to the same file
|
||||
|
||||
stat no longer overruns a buffer for format strings ending in `%'
|
||||
stat no longer overruns a buffer for format strings ending in '%'
|
||||
|
||||
fold -s -wN would infloop for N < 8 with TABs in the input.
|
||||
E.g., this would not terminate: printf 'a\t' | fold -w2 -s
|
||||
|
||||
`split -a0', although of questionable utility, is accepted once again.
|
||||
'split -a0', although of questionable utility, is accepted once again.
|
||||
|
||||
`df DIR' used to hang under some conditions on OSF/1 5.1. Now it doesn't.
|
||||
'df DIR' used to hang under some conditions on OSF/1 5.1. Now it doesn't.
|
||||
|
||||
seq's --width (-w) option now works properly even when the endpoint
|
||||
requiring the larger width is negative and smaller than the other endpoint.
|
||||
@@ -2877,7 +3093,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
paste no longer mistakenly outputs 0xFF bytes for a nonempty input file
|
||||
without a trailing newline.
|
||||
|
||||
`tail -n0 -f FILE' and `tail -c0 -f FILE' no longer perform what amounted
|
||||
'tail -n0 -f FILE' and 'tail -c0 -f FILE' no longer perform what amounted
|
||||
to a busy wait, rather than sleeping between iterations.
|
||||
|
||||
tail's long-undocumented --allow-missing option now elicits a warning
|
||||
@@ -2889,14 +3105,14 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
sort is now up to 30% more CPU-efficient in some cases
|
||||
|
||||
`test' is now more compatible with Bash and POSIX:
|
||||
'test' is now more compatible with Bash and POSIX:
|
||||
|
||||
`test -t', `test --help', and `test --version' now silently exit
|
||||
'test -t', 'test --help', and 'test --version' now silently exit
|
||||
with status 0. To test whether standard output is a terminal, use
|
||||
`test -t 1'. To get help and version info for `test', use
|
||||
`[ --help' and `[ --version'.
|
||||
'test -t 1'. To get help and version info for 'test', use
|
||||
'[ --help' and '[ --version'.
|
||||
|
||||
`test' now exits with status 2 (not 1) if there is an error.
|
||||
'test' now exits with status 2 (not 1) if there is an error.
|
||||
|
||||
wc count field widths now are heuristically adjusted depending on the input
|
||||
size, if known. If only one count is printed, it is guaranteed to
|
||||
@@ -2912,7 +3128,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
Why wasn't this noticed? Although many tests use kill, none of
|
||||
them made an effort to avoid using the shell's built-in kill.
|
||||
|
||||
`[' invoked with no arguments no longer evokes a segfault
|
||||
'[' invoked with no arguments no longer evokes a segfault
|
||||
|
||||
rm without --recursive (aka -r or -R) no longer prompts regarding
|
||||
unwritable directories, as required by POSIX.
|
||||
@@ -2929,10 +3145,10 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
split -a0 now works, as POSIX requires.
|
||||
|
||||
`sort --version' and `sort --help' fail, as they should
|
||||
'sort --version' and 'sort --help' fail, as they should
|
||||
when their output is redirected to /dev/full.
|
||||
|
||||
`su --version > /dev/full' now fails, as it should.
|
||||
'su --version > /dev/full' now fails, as it should.
|
||||
|
||||
** Fewer arbitrary limitations
|
||||
|
||||
@@ -2943,7 +3159,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
* Major changes in release 5.0.1 (2003-07-15):
|
||||
|
||||
** New programs
|
||||
- new program: `[' (much like `test')
|
||||
- new program: '[' (much like 'test')
|
||||
|
||||
** New features
|
||||
- head now accepts --lines=-N (--bytes=-N) to print all but the
|
||||
@@ -2951,9 +3167,9 @@ GNU coreutils NEWS -*- outline -*-
|
||||
- md5sum --check now accepts the output of the BSD md5sum program, e.g.,
|
||||
MD5 (f) = d41d8cd98f00b204e9800998ecf8427e
|
||||
- date -d DATE can now parse a DATE string like May-23-2003
|
||||
- chown: `.' is no longer recognized as a separator in the OWNER:GROUP
|
||||
- chown: '.' is no longer recognized as a separator in the OWNER:GROUP
|
||||
specifier on POSIX 1003.1-2001 systems. If chown *was not* compiled
|
||||
on such a system, then it still accepts `.', by default. If chown
|
||||
on such a system, then it still accepts '.', by default. If chown
|
||||
was compiled on a POSIX 1003.1-2001 system, then you may enable the
|
||||
old behavior by setting _POSIX2_VERSION=199209 in your environment.
|
||||
- chown no longer tries to preserve set-user-ID and set-group-ID bits;
|
||||
@@ -2969,24 +3185,24 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
** Bug fixes
|
||||
- chown --dereference no longer leaks a file descriptor per symlink processed
|
||||
- `du /' once again prints the `/' on the last line
|
||||
- 'du /' once again prints the '/' on the last line
|
||||
- split's --verbose option works once again [broken in 4.5.10 and 5.0]
|
||||
- tail -f is no longer subject to a race condition that could make it
|
||||
delay displaying the last part of a file that had stopped growing. That
|
||||
bug could also make tail -f give an unwarranted `file truncated' warning.
|
||||
bug could also make tail -f give an unwarranted 'file truncated' warning.
|
||||
- du no longer runs out of file descriptors unnecessarily
|
||||
- df and `readlink --canonicalize' no longer corrupt the heap on
|
||||
- df and 'readlink --canonicalize' no longer corrupt the heap on
|
||||
non-glibc, non-solaris systems
|
||||
- `env -u UNSET_VARIABLE' no longer dumps core on non-glibc systems
|
||||
- 'env -u UNSET_VARIABLE' no longer dumps core on non-glibc systems
|
||||
- readlink's --canonicalize option now works on systems like Solaris that
|
||||
lack the canonicalize_file_name function but do have resolvepath.
|
||||
- mv now removes `a' in this example on all systems: touch a; ln a b; mv a b
|
||||
- mv now removes 'a' in this example on all systems: touch a; ln a b; mv a b
|
||||
This behavior is contrary to POSIX (which requires that the mv command do
|
||||
nothing and exit successfully), but I suspect POSIX will change.
|
||||
- date's %r format directive now honors locale settings
|
||||
- date's `-' (no-pad) format flag now affects the space-padded-by-default
|
||||
- date's '-' (no-pad) format flag now affects the space-padded-by-default
|
||||
conversion specifiers, %e, %k, %l
|
||||
- fmt now diagnoses invalid obsolescent width specifications like `-72x'
|
||||
- fmt now diagnoses invalid obsolescent width specifications like '-72x'
|
||||
- fmt now exits nonzero when unable to open an input file
|
||||
- tsort now fails when given an odd number of input tokens,
|
||||
as required by POSIX. Before, it would act as if the final token
|
||||
@@ -2998,12 +3214,12 @@ GNU coreutils NEWS -*- outline -*-
|
||||
- split can now handle --bytes=N and --lines=N with N=2^31 or more.
|
||||
|
||||
** Portability
|
||||
- `kill -t' now prints signal descriptions (rather than `?') on systems
|
||||
- 'kill -t' now prints signal descriptions (rather than '?') on systems
|
||||
like Tru64 with __sys_siglist but no strsignal function.
|
||||
- stat.c now compiles on Ultrix systems
|
||||
- sleep now works on AIX systems that lack support for clock_gettime
|
||||
- rm now works around Darwin6.5's broken readdir function
|
||||
Before `rm -rf DIR' would fail to remove all files in DIR
|
||||
Before 'rm -rf DIR' would fail to remove all files in DIR
|
||||
if there were more than 338.
|
||||
|
||||
* Major changes in release 5.0 (2003-04-02):
|
||||
@@ -3017,8 +3233,8 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
[4.5.11]
|
||||
* seq no longer requires that a field width be specified
|
||||
* seq no longer fails when given a field width of `0'
|
||||
* seq now accepts ` ' and `'' as valid format flag characters
|
||||
* seq no longer fails when given a field width of '0'
|
||||
* seq now accepts " " and "'" as valid format flag characters
|
||||
* df now shows a HOSTNAME: prefix for each remote-mounted file system on AIX 5.1
|
||||
* portability tweaks for HP-UX, AIX 5.1, DJGPP
|
||||
|
||||
@@ -3026,7 +3242,7 @@ GNU coreutils NEWS -*- outline -*-
|
||||
* printf no longer segfaults for a negative field width or precision
|
||||
* shred now always enables --exact for non-regular files
|
||||
* du no longer lists hard-linked files more than once
|
||||
* du no longer dumps core on some systems due to `infinite' recursion
|
||||
* du no longer dumps core on some systems due to "infinite" recursion
|
||||
via nftw's use of the buggy replacement function in getcwd.c
|
||||
* portability patches for a few vendor compilers and 64-bit systems
|
||||
* du -S *really* now works like it did before the change in 4.5.5
|
||||
@@ -3036,12 +3252,12 @@ GNU coreutils NEWS -*- outline -*-
|
||||
* work around Linux kernel bug in getcwd (fixed in 2.4.21-pre4), so that pwd
|
||||
now fails if the name of the working directory is so long that getcwd
|
||||
truncates it. Before it would print the truncated name and exit successfully.
|
||||
* `df /some/mount-point' no longer hangs on a GNU libc system when another
|
||||
* 'df /some/mount-point' no longer hangs on a GNU libc system when another
|
||||
hard-mounted NFS file system (preceding /some/mount-point in /proc/mounts)
|
||||
is inaccessible.
|
||||
* rm -rf now gives an accurate diagnostic when failing to remove a file
|
||||
under certain unusual conditions
|
||||
* mv and `cp --preserve=links' now preserve multiple hard links even under
|
||||
* mv and 'cp --preserve=links' now preserve multiple hard links even under
|
||||
certain unusual conditions where they used to fail
|
||||
|
||||
[4.5.8]
|
||||
@@ -3050,15 +3266,15 @@ GNU coreutils NEWS -*- outline -*-
|
||||
* du accepts new option: --apparent-size
|
||||
* du --bytes (-b) works the same way it did in fileutils-3.16 and before
|
||||
* du reports proper sizes for directories (not zero) (broken in 4.5.6 or 4.5.7)
|
||||
* df now always displays under `Filesystem', the device file name
|
||||
* df now always displays under 'Filesystem', the device file name
|
||||
corresponding to the listed mount point. Before, for a block- or character-
|
||||
special file command line argument, df would display that argument. E.g.,
|
||||
`df /dev/hda' would list `/dev/hda' as the `Filesystem', rather than say
|
||||
/dev/hda3 (the device on which `/' is mounted), as it does now.
|
||||
'df /dev/hda' would list '/dev/hda' as the 'Filesystem', rather than say
|
||||
/dev/hda3 (the device on which '/' is mounted), as it does now.
|
||||
* test now works properly when invoked from a set user ID or set group ID
|
||||
context and when testing access to files subject to alternate protection
|
||||
mechanisms. For example, without this change, a set-UID program that invoked
|
||||
`test -w F' (to see if F is writable) could mistakenly report that it *was*
|
||||
'test -w F' (to see if F is writable) could mistakenly report that it *was*
|
||||
writable, even though F was on a read-only file system, or F had an ACL
|
||||
prohibiting write access, or F was marked as immutable.
|
||||
|
||||
@@ -3071,8 +3287,8 @@ GNU coreutils NEWS -*- outline -*-
|
||||
* du --exclude=FILE works once again (this was broken by the rewrite for 4.5.5)
|
||||
* du no longer gets a failed assertion for certain hierarchy lay-outs
|
||||
involving hard-linked directories
|
||||
* `who -r' no longer segfaults when using non-C-locale messages
|
||||
* df now displays a mount point (usually `/') for non-mounted
|
||||
* 'who -r' no longer segfaults when using non-C-locale messages
|
||||
* df now displays a mount point (usually '/') for non-mounted
|
||||
character-special and block files
|
||||
|
||||
[4.5.5]
|
||||
@@ -3086,16 +3302,16 @@ GNU coreutils NEWS -*- outline -*-
|
||||
* ls has a new option --dereference-command-line-symlink-to-dir, which
|
||||
corresponds to the new default behavior when none of -d, -l -F, -H, -L
|
||||
has been specified.
|
||||
* ls dangling-symlink now prints `dangling-symlink'.
|
||||
Before, it would fail with `no such file or directory'.
|
||||
* ls dangling-symlink now prints 'dangling-symlink'.
|
||||
Before, it would fail with 'no such file or directory'.
|
||||
* ls -s symlink-to-non-dir and ls -i symlink-to-non-dir now print
|
||||
attributes of `symlink', rather than attributes of their referents.
|
||||
attributes of 'symlink', rather than attributes of their referents.
|
||||
* Fix a bug introduced in 4.5.4 that made it so that ls --color would no
|
||||
longer highlight the names of files with the execute bit set when not
|
||||
specified on the command line.
|
||||
* shred's --zero (-z) option no longer gobbles up any following argument.
|
||||
Before, `shred --zero file' would produce `shred: missing file argument',
|
||||
and worse, `shred --zero f1 f2 ...' would appear to work, but would leave
|
||||
Before, 'shred --zero file' would produce 'shred: missing file argument',
|
||||
and worse, 'shred --zero f1 f2 ...' would appear to work, but would leave
|
||||
the first file untouched.
|
||||
* readlink: new program
|
||||
* cut: new feature: when used to select ranges of byte offsets (as opposed
|
||||
@@ -3107,13 +3323,13 @@ GNU coreutils NEWS -*- outline -*-
|
||||
|
||||
[4.5.4]
|
||||
* cp no longer fails to parse options like this: --preserve=mode,ownership
|
||||
* `ls --color -F symlink-to-dir' works properly
|
||||
* 'ls --color -F symlink-to-dir' works properly
|
||||
* ls is much more efficient on directories with valid dirent.d_type.
|
||||
* stty supports all baud rates defined in linux-2.4.19.
|
||||
* `du symlink-to-dir/' would improperly remove the trailing slash
|
||||
* `du ""' would evoke a bounds violation.
|
||||
* In the unlikely event that running `du /' resulted in `stat ("/", ...)'
|
||||
failing, du would give a diagnostic about `' (empty string) rather than `/'.
|
||||
* 'du symlink-to-dir/' would improperly remove the trailing slash
|
||||
* 'du ""' would evoke a bounds violation.
|
||||
* In the unlikely event that running 'du /' resulted in 'stat ("/", ...)'
|
||||
failing, du would give a diagnostic about '' (empty string) rather than '/'.
|
||||
* printf: a hexadecimal escape sequence has at most two hex. digits, not three.
|
||||
* The following features have been added to the --block-size option
|
||||
and similar environment variables of df, du, and ls.
|
||||
@@ -3130,18 +3346,18 @@ GNU coreutils NEWS -*- outline -*-
|
||||
sizes are now always rounded up, for consistency with df and du.
|
||||
* df now displays the block size using powers of 1000 if the requested
|
||||
block size seems to be a multiple of a power of 1000.
|
||||
* nl no longer gets a segfault when run like this `yes|nl -s%n'
|
||||
* nl no longer gets a segfault when run like this 'yes|nl -s%n'
|
||||
|
||||
[4.5.3]
|
||||
* du --dereference-args (-D) no longer fails in certain cases
|
||||
* `ln --target-dir=DIR' no longer fails when given a single argument
|
||||
* 'ln --target-dir=DIR' no longer fails when given a single argument
|
||||
|
||||
[4.5.2]
|
||||
* `rm -i dir' (without --recursive (-r)) no longer recurses into dir
|
||||
* `tail -c N FILE' now works with files of size >= 4GB
|
||||
* `mkdir -p' can now create very deep (e.g. 40,000-component) directories
|
||||
* 'rm -i dir' (without --recursive (-r)) no longer recurses into dir
|
||||
* 'tail -c N FILE' now works with files of size >= 4GB
|
||||
* 'mkdir -p' can now create very deep (e.g. 40,000-component) directories
|
||||
* rmdir -p dir-with-trailing-slash/ no longer fails
|
||||
* printf now honors the `--' command line delimiter
|
||||
* printf now honors the '--' command line delimiter
|
||||
* od's 8-byte formats x8, o8, and u8 now work
|
||||
* tail now accepts fractional seconds for its --sleep-interval=S (-s) option
|
||||
|
||||
@@ -3154,7 +3370,7 @@ Here are the NEWS entries made from fileutils-4.1 until the
|
||||
point at which the packages merged to form the coreutils:
|
||||
|
||||
[4.1.11]
|
||||
* `rm symlink-to-unwritable' doesn't prompt [introduced in 4.1.10]
|
||||
* 'rm symlink-to-unwritable' doesn't prompt [introduced in 4.1.10]
|
||||
[4.1.10]
|
||||
* rm once again gives a reasonable diagnostic when failing to remove a file
|
||||
owned by someone else in a sticky directory [introduced in 4.1.9]
|
||||
@@ -3163,8 +3379,8 @@ point at which the packages merged to form the coreutils:
|
||||
* Any time style can be preceded by "posix-"; this causes "ls" to
|
||||
use traditional timestamp format when in the POSIX locale.
|
||||
* The default time style is now posix-long-iso instead of posix-iso.
|
||||
Set TIME_STYLE="posix-iso" to revert to the behavior of 4.1.1 thru 4.1.9.
|
||||
* `rm dangling-symlink' doesn't prompt [introduced in 4.1.9]
|
||||
Set TIME_STYLE="posix-iso" to revert to the behavior of 4.1.1 through 4.1.9.
|
||||
* 'rm dangling-symlink' doesn't prompt [introduced in 4.1.9]
|
||||
* stat: remove support for --secure/-s option and related %S and %C format specs
|
||||
* stat: rename --link/-l to --dereference/-L.
|
||||
The old options will continue to work for a while.
|
||||
@@ -3172,7 +3388,7 @@ point at which the packages merged to form the coreutils:
|
||||
* rm can now remove very deep hierarchies, in spite of any limit on stack size
|
||||
* new programs: link, unlink, and stat
|
||||
* New ls option: --author (for the Hurd).
|
||||
* `touch -c no-such-file' no longer fails, per POSIX
|
||||
* 'touch -c no-such-file' no longer fails, per POSIX
|
||||
[4.1.8]
|
||||
* mv no longer mistakenly creates links to preexisting destination files
|
||||
that aren't moved
|
||||
@@ -3183,7 +3399,7 @@ point at which the packages merged to form the coreutils:
|
||||
* cp -r is now equivalent to cp -R. Use cp -R -L --copy-contents to get the
|
||||
traditional (and rarely desirable) cp -r behavior.
|
||||
* ls now accepts --time-style=+FORMAT, where +FORMAT works like date's format
|
||||
* The obsolete usage `touch [-acm] MMDDhhmm[YY] FILE...' is no longer
|
||||
* The obsolete usage 'touch [-acm] MMDDhhmm[YY] FILE...' is no longer
|
||||
supported on systems conforming to POSIX 1003.1-2001. Use touch -t instead.
|
||||
* cp and inter-partition mv no longer give a misleading diagnostic in some
|
||||
unusual cases
|
||||
@@ -3192,14 +3408,14 @@ point at which the packages merged to form the coreutils:
|
||||
* The block size notation is now compatible with SI and with IEC 60027-2.
|
||||
For example, --block-size=1MB now means --block-size=1000000,
|
||||
whereas --block-size=1MiB now means --block-size=1048576.
|
||||
A missing `B' (e.g. `1M') has the same meaning as before.
|
||||
A trailing `B' now means decimal, not binary; this is a silent change.
|
||||
The nonstandard `D' suffix (e.g. `1MD') is now obsolescent.
|
||||
A missing 'B' (e.g. '1M') has the same meaning as before.
|
||||
A trailing 'B' now means decimal, not binary; this is a silent change.
|
||||
The nonstandard 'D' suffix (e.g. '1MD') is now obsolescent.
|
||||
* -H or --si now outputs the trailing 'B', for consistency with the above.
|
||||
* Programs now output trailing 'K' (not 'k') to mean 1024, as per IEC 60027-2.
|
||||
* New df, du short option -B is short for --block-size.
|
||||
* You can omit an integer `1' before a block size suffix,
|
||||
e.g. `df -BG' is equivalent to `df -B 1G' and to `df --block-size=1G'.
|
||||
* You can omit an integer '1' before a block size suffix,
|
||||
e.g. 'df -BG' is equivalent to 'df -B 1G' and to 'df --block-size=1G'.
|
||||
* The following options are now obsolescent, as their names are
|
||||
incompatible with IEC 60027-2:
|
||||
df, du: -m or --megabytes (use -BM or --block-size=1M)
|
||||
@@ -3210,9 +3426,9 @@ point at which the packages merged to form the coreutils:
|
||||
[4.1.3]
|
||||
* ls -R once again outputs a blank line between per-directory groups of files.
|
||||
This was broken by the cycle-detection change in 4.1.1.
|
||||
* dd once again uses `lseek' on character devices like /dev/mem and /dev/kmem.
|
||||
* dd once again uses 'lseek' on character devices like /dev/mem and /dev/kmem.
|
||||
On systems with the linux kernel (at least up to 2.4.16), dd must still
|
||||
resort to emulating `skip=N' behavior using reads on tape devices, because
|
||||
resort to emulating 'skip=N' behavior using reads on tape devices, because
|
||||
lseek has no effect, yet appears to succeed. This may be a kernel bug.
|
||||
[4.1.2]
|
||||
* cp no longer fails when two or more source files are the same;
|
||||
@@ -3220,7 +3436,7 @@ point at which the packages merged to form the coreutils:
|
||||
E.g., cp a a d/ produces this:
|
||||
cp: warning: source file `a' specified more than once
|
||||
* chmod would set the wrong bit when given symbolic mode strings like
|
||||
these: g=o, o=g, o=u. E.g., `chmod a=,o=w,ug=o f' would give a mode
|
||||
these: g=o, o=g, o=u. E.g., 'chmod a=,o=w,ug=o f' would give a mode
|
||||
of --w-r---w- rather than --w--w--w-.
|
||||
[4.1.1]
|
||||
* mv (likewise for cp), now fails rather than silently clobbering one of
|
||||
@@ -3235,21 +3451,21 @@ point at which the packages merged to form the coreutils:
|
||||
--preserve[={mode,ownership,timestamps,links,all}]
|
||||
--no-preserve={mode,ownership,timestamps,links,all}
|
||||
* cp's -p and --preserve options remain unchanged and are equivalent
|
||||
to `--preserve=mode,ownership,timestamps'
|
||||
to '--preserve=mode,ownership,timestamps'
|
||||
* mv and cp accept a new option: --reply={yes,no,query}; provides a consistent
|
||||
mechanism to control whether one is prompted about certain existing
|
||||
destination files. Note that cp's and mv's -f options don't have the
|
||||
same meaning: cp's -f option no longer merely turns off `-i'.
|
||||
same meaning: cp's -f option no longer merely turns off '-i'.
|
||||
* remove portability limitations (e.g., PATH_MAX on the Hurd, fixes for
|
||||
64-bit systems)
|
||||
* mv now prompts before overwriting an existing, unwritable destination file
|
||||
when stdin is a tty, unless --force (-f) is specified, as per POSIX.
|
||||
* mv: fix the bug whereby `mv -uf source dest' would delete source,
|
||||
* mv: fix the bug whereby 'mv -uf source dest' would delete source,
|
||||
even though it's older than dest.
|
||||
* chown's --from=CURRENT_OWNER:CURRENT_GROUP option now works
|
||||
* cp now ensures that the set-user-ID and set-group-ID bits are cleared for
|
||||
the destination file when when copying and not preserving permissions.
|
||||
* `ln -f --backup k k' gives a clearer diagnostic
|
||||
* 'ln -f --backup k k' gives a clearer diagnostic
|
||||
* ls no longer truncates user names or group names that are longer
|
||||
than 8 characters.
|
||||
* ls's new --dereference-command-line option causes it to dereference
|
||||
@@ -3260,8 +3476,8 @@ point at which the packages merged to form the coreutils:
|
||||
* ls -n now implies -l, as per POSIX.
|
||||
* ls can now display dates and times in one of four time styles:
|
||||
|
||||
- The `full-iso' time style gives full ISO-style time stamps like
|
||||
`2001-05-14 23:45:56.477817180 -0700'.
|
||||
- The 'full-iso' time style gives full ISO-style time stamps like
|
||||
'2001-05-14 23:45:56.477817180 -0700'.
|
||||
- The 'iso' time style gives ISO-style time stamps like '2001-05-14 '
|
||||
and '05-14 23:45'.
|
||||
- The 'locale' time style gives locale-dependent time stamps like
|
||||
@@ -3302,10 +3518,10 @@ point at which the packages merged to form the coreutils:
|
||||
* who accepts new options: --all (-a), --boot (-b), --dead (-d), --login,
|
||||
--process (-p), --runlevel (-r), --short (-s), --time (-t), --users (-u).
|
||||
The -u option now produces POSIX-specified results and is the same as
|
||||
the long option `--users'. --idle is no longer the same as -u.
|
||||
the long option '--users'. --idle is no longer the same as -u.
|
||||
* The following changes apply on systems conforming to POSIX 1003.1-2001:
|
||||
- `date -I' is no longer supported. Instead, use `date --iso-8601'.
|
||||
- `nice -NUM' is no longer supported. Instead, use `nice -n NUM'.
|
||||
- 'date -I' is no longer supported. Instead, use 'date --iso-8601'.
|
||||
- 'nice -NUM' is no longer supported. Instead, use 'nice -n NUM'.
|
||||
[This change was reverted in coreutils 5.3.1.]
|
||||
* New 'uname' options -i or --hardware-platform, and -o or --operating-system.
|
||||
'uname -a' now outputs -i and -o information at the end.
|
||||
@@ -3320,23 +3536,23 @@ point at which the packages merged to form the coreutils:
|
||||
(e.g., 23:00 on *thursday* rather than 00:00 of the preceding friday)
|
||||
when run such that the current time and the target date/time fall on
|
||||
opposite sides of a daylight savings time transition.
|
||||
This problem arose only with relative date strings like `last monday'.
|
||||
This problem arose only with relative date strings like 'last monday'.
|
||||
It was not a problem with strings that include absolute dates.
|
||||
* factor is twice as fast, for large numbers
|
||||
[2.0.11]
|
||||
* setting the date now works properly, even when using -u
|
||||
* `date -f - < /dev/null' no longer dumps core
|
||||
* 'date -f - < /dev/null' no longer dumps core
|
||||
* some DOS/Windows portability changes
|
||||
[2.0j]
|
||||
* `date -d DATE' now parses certain relative DATEs correctly
|
||||
* 'date -d DATE' now parses certain relative DATEs correctly
|
||||
[2.0i]
|
||||
* fixed a bug introduced in 2.0h that made many programs fail with a
|
||||
`write error' when invoked with the --version option
|
||||
'write error' when invoked with the --version option
|
||||
[2.0h]
|
||||
* all programs fail when printing --help or --version output to a full device
|
||||
* printf exits nonzero upon write failure
|
||||
* yes now detects and terminates upon write failure
|
||||
* date --rfc-822 now always emits day and month names from the `C' locale
|
||||
* date --rfc-822 now always emits day and month names from the 'C' locale
|
||||
* portability tweaks for Solaris8, Ultrix, and DOS
|
||||
[2.0g]
|
||||
* date now handles two-digit years with leading zeros correctly.
|
||||
@@ -3374,11 +3590,11 @@ packages, see ./old/*/NEWS.
|
||||
|
||||
========================================================================
|
||||
|
||||
Copyright (C) 2001-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001-2012 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with no
|
||||
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
|
||||
Texts. A copy of the license is included in the ``GNU Free
|
||||
Documentation License'' file as part of this distribution.
|
||||
Texts. A copy of the license is included in the "GNU Free
|
||||
Documentation License" file as part of this distribution.
|
||||
|
||||
34
README
34
README
@@ -11,11 +11,11 @@ The programs that can be built with this package are:
|
||||
csplit cut date dd df dir dircolors dirname du echo env expand expr
|
||||
factor false fmt fold groups head hostid hostname id install join kill
|
||||
link ln logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup
|
||||
nproc od paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir
|
||||
runcon seq sha1sum sha224sum sha256sum sha384sum sha512sum shred shuf
|
||||
sleep sort split stat stdbuf stty su sum sync tac tail tee test timeout
|
||||
touch tr true truncate tsort tty uname unexpand uniq unlink uptime users
|
||||
vdir wc who whoami yes
|
||||
nproc od paste pathchk pinky pr printenv printf ptx pwd readlink realpath
|
||||
rm rmdir runcon seq sha1sum sha224sum sha256sum sha384sum sha512sum shred
|
||||
shuf sleep sort split stat stdbuf stty su sum sync tac tail tee test
|
||||
timeout touch tr true truncate tsort tty uname unexpand uniq unlink
|
||||
uptime users vdir wc who whoami yes
|
||||
|
||||
See the file NEWS for a list of major changes in the current release.
|
||||
|
||||
@@ -134,17 +134,25 @@ the best solution is to use GNU make. Otherwise, simply remove
|
||||
all mention of "[$(EXEEXT)" from src/Makefile.
|
||||
|
||||
|
||||
*************************************************
|
||||
"make check" failure on IRIX 6.5 and Solaris <= 9
|
||||
-------------------------------------------------
|
||||
|
||||
Using the vendor make program to run "make check" fails on these two systems.
|
||||
If you want to run all of the tests there, use GNU make.
|
||||
|
||||
|
||||
|
||||
**********************
|
||||
Running tests as root:
|
||||
----------------------
|
||||
|
||||
If you run the tests as root, note that a few of them create files
|
||||
and/or run programs as a non-root user, `nobody' by default.
|
||||
and/or run programs as a non-root user, 'nobody' by default.
|
||||
If you want to use some other non-root username, specify it via
|
||||
the NON_ROOT_USERNAME environment variable. Depending on the
|
||||
permissions with which the working directories have been created,
|
||||
using `nobody' may fail, because that user won't have the required
|
||||
using 'nobody' may fail, because that user won't have the required
|
||||
read and write access to the build and test directories.
|
||||
I find that it is best to unpack and build as a non-privileged
|
||||
user, and then to run the following command as that user in order
|
||||
@@ -163,7 +171,7 @@ Reporting bugs:
|
||||
---------------
|
||||
|
||||
IMPORTANT: if you take the time to report a test failure,
|
||||
please be sure to include the output of running `make check'
|
||||
please be sure to include the output of running 'make check'
|
||||
in verbose mode for each failing test. For example,
|
||||
if the test that fails is tests/misc/df, then you would
|
||||
run this command:
|
||||
@@ -171,7 +179,7 @@ run this command:
|
||||
(cd tests && make check TESTS=misc/df VERBOSE=yes) >> log 2>&1
|
||||
|
||||
For some tests, you can get even more detail by adding DEBUG=yes.
|
||||
Then include the contents of the file `log' in your bug report.
|
||||
Then include the contents of the file 'log' in your bug report.
|
||||
|
||||
Send bug reports, questions, comments, etc. to bug-coreutils@gnu.org.
|
||||
If you would like to suggest a patch, see the files README-hacking
|
||||
@@ -215,7 +223,7 @@ or any Makefile.am, then don't be surprised if what gets regenerated no
|
||||
longer works. To make things work, you'll have to be using appropriate
|
||||
versions of the tools listed in bootstrap.conf's buildreq string.
|
||||
|
||||
All of these programs except `test' recognize the `--version' option.
|
||||
All of these programs except 'test' recognize the '--version' option.
|
||||
When reporting bugs, please include in the subject line both the package
|
||||
name/version and the name of the program for which you found a problem.
|
||||
|
||||
@@ -232,11 +240,11 @@ the address on the last line of --help output.
|
||||
|
||||
========================================================================
|
||||
|
||||
Copyright (C) 1998, 2002-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with no
|
||||
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
|
||||
Texts. A copy of the license is included in the ``GNU Free
|
||||
Documentation License'' file as part of this distribution.
|
||||
Texts. A copy of the license is included in the "GNU Free
|
||||
Documentation License" file as part of this distribution.
|
||||
|
||||
@@ -19,7 +19,7 @@ Valgrind <http://valgrind.org/> is also highly recommended, if
|
||||
Valgrind supports your architecture. See also README-valgrind.
|
||||
|
||||
While building from a just-cloned source tree may require installing a
|
||||
few prerequisites, later, a plain `git pull && make' should be sufficient.
|
||||
few prerequisites, later, a plain 'git pull && make' should be sufficient.
|
||||
|
||||
* First GIT checkout
|
||||
|
||||
@@ -29,8 +29,8 @@ You can get a copy of the source repository like this:
|
||||
$ cd coreutils
|
||||
|
||||
As an optional step, if you already have a copy of the gnulib git
|
||||
repository on your hard drive, then you can use it as a reference to
|
||||
reduce download time and disk space requirements:
|
||||
repository, then you can use it as a reference to reduce download
|
||||
time and disk space requirements:
|
||||
|
||||
$ export GNULIB_SRCDIR=/path/to/gnulib
|
||||
|
||||
@@ -94,7 +94,7 @@ each program. One way to do this is to use vc-dwim
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2002-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -24,6 +24,16 @@ Here are most of the steps we (maintainers) follow when making a release.
|
||||
|
||||
FIXME: enable excluded programs like arch? to get their manual pages?
|
||||
|
||||
* Check for new file system types by running the following command on
|
||||
a system with the most recent kernel possible (e.g., Fedora rawhide):
|
||||
|
||||
make -C src fs-magic-compare
|
||||
|
||||
If it finds a new file system magic number, add it to src/stat.c.
|
||||
If it is a remote file system, add the new S_MAGIC_* name you created
|
||||
in stat.c to the list of remote file system types in src/tail.c's
|
||||
fremote function.
|
||||
|
||||
* Pre-release testing:
|
||||
|
||||
Run the following on at least one SELinux-enabled (enforcing) and
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#! /bin/bash
|
||||
# Convert this package for use with valgrind.
|
||||
|
||||
# Copyright (C) 2002-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
||||
16
THANKS.in
16
THANKS.in
@@ -37,6 +37,9 @@ Alexandre Duret-Lutz duret_g@epita.fr
|
||||
Alexey Solovyov alekso@math.uu.se
|
||||
Alexey Vyskubov alexey@pippuri.mawhrin.net
|
||||
Alfred M. Szmidt ams@kemisten.nu
|
||||
Ambrose Feinstein ambrose@google.com
|
||||
Amr Ali amr.ali.cc@gmail.com
|
||||
Anders Kaseorg andersk@mit.edu
|
||||
Andi Kleen freitag@alancoxonachip.com
|
||||
Andre Novaes Cunha Andre.Cunha@br.global-one.net
|
||||
Andreas Frische andreasfrische@gmail.com
|
||||
@@ -58,6 +61,7 @@ Anthony Thyssen anthony@griffith.edu.au
|
||||
Antonio Rendas ajrendas@yahoo.com
|
||||
Ariel Faigon ariel@cthulhu.engr.sgi.com
|
||||
Arjan Opmeer arjan.opmeer@gmail.com
|
||||
Arkadiusz Miśkiewicz arekm@maven.pl
|
||||
Arne Henrik Juul arnej@imf.unit.no
|
||||
Arnold Robbins arnold@skeeve.com
|
||||
Arthur Pool pool@commerce.uq.edu.au
|
||||
@@ -94,6 +98,7 @@ Brian Silverman bsilverman@conceptxdesign.com
|
||||
Brian Youmans 3diff@gnu.org
|
||||
Britton Leo Kerin fsblk@aurora.uaf.edu
|
||||
Bruce Robertson brucer@theodolite.dyndns.org
|
||||
Brynnen Owen owen@illinois.edu
|
||||
Carl Johnson carlj@cjlinux.home.org
|
||||
Carl Lowenstein cdl@mpl.UCSD.EDU
|
||||
Carl Roth roth@urs.us
|
||||
@@ -130,6 +135,7 @@ Dan Hagerty hag@gnu.ai.it.edu
|
||||
Dan Pascu dan@services.iiruc.ro
|
||||
Daniel Bergstrom noa@melody.se
|
||||
Daniel P. Berrangé berrange@redhat.com
|
||||
Daniel Stavrovski d@stavrovski.net
|
||||
Dániel Varga danielv@axelero.hu
|
||||
Danny Levinson danny.levinson@overture.com
|
||||
Darrel Francis d.francis@cheerful.com
|
||||
@@ -272,6 +278,7 @@ Jens Elkner elkner@imsgroup.de
|
||||
Jens Schmidt jms@jsds.hamburg.com
|
||||
Jeph Cowan jeph@ucar.edu
|
||||
Jeremy Maitin-Shepard jbms@cmu.edu
|
||||
Jérémy Magrin jeremy.magrin@epitech.eu
|
||||
Jerome Abela abela@hsc.fr
|
||||
Jérôme Zago bug-coreutils-ml@agt-the-walker.net
|
||||
Jesse Kornblum kornblum@usna.edu
|
||||
@@ -310,6 +317,7 @@ Juan M. Guerrero st001906@hrz1.hrz.tu-darmstadt.de
|
||||
Julian Bradfield jcb@inf.ed.ac.uk
|
||||
Jungshik Shin jshin@pantheon.yale.edu
|
||||
Jürgen Fluk louis@dachau.marco.de
|
||||
Juraj Marko jmarko@redhat.com
|
||||
Jurriaan thunder7@xs4all.nl
|
||||
Justin Pryzby justinpryzby@users.sourceforge.net
|
||||
jvogel jvogel@linkny.com
|
||||
@@ -348,6 +356,7 @@ Manfred Hollstein manfred@s-direktnet.de
|
||||
Марк Коренберг socketpair@gmail.com
|
||||
Marc Boucher marc@mbsi.ca
|
||||
Marc Haber mh+debian-bugs@zugschlus.de
|
||||
Marc Mengel mengel@fnal.gov
|
||||
Marc Lehman schmorp@schmorp.de
|
||||
Marc Olzheim marcolz@stack.nl
|
||||
Marco Franzen Marco.Franzen@Thyron.com
|
||||
@@ -380,6 +389,7 @@ Mate Wierdl mw@moni.msci.memphis.edu
|
||||
Matej Vela mvela@public.srce.hr
|
||||
Matias A. Fonzo selk@dragora.org
|
||||
Matt Kraai kraai@ftbfs.org
|
||||
Matt McCutchen matt@mattmccutchen.net
|
||||
Matt Perry matt@primefactor.com
|
||||
Matt Pham mattvpham@gmail.com
|
||||
Matt Schalit mschalit@pacbell.net
|
||||
@@ -406,6 +416,7 @@ Michael Gaughen mgaughen@polyserve.com
|
||||
Michael Hasselberg mikelh@zonta.ping.de
|
||||
Michael Hohn hohn@math.utah.edu
|
||||
Michael J. Croghan mcroghan@usatoday.com
|
||||
Michael J. Daniel michael.j.daniel@comcast.net
|
||||
Michael McFarland sidlon@yahoo.com
|
||||
Michael McLagan mmclagan@invlogic.com
|
||||
Michael Piefel piefel@informatik.hu-berlin.de
|
||||
@@ -426,8 +437,9 @@ Mikulas Patocka mikulas@artax.karlin.mff.cuni.cz
|
||||
Miles Bader miles@gnu.ai.mit.edu
|
||||
Minh Tran-Le tranle@intellicorp.com
|
||||
Morten Welinder terra@diku.dk
|
||||
Nao Nishijima nao.nishijima.xt@hitachi.com
|
||||
Neal H Walfield neal@cs.uml.edu
|
||||
Neil Brown neilb@cse.unsw.edu.au
|
||||
Neil F. Brown neilb@suse.de
|
||||
Nelson H. F. Beebe beebe@math.utah.edu
|
||||
Nick Estes debian@nickstoys.com
|
||||
Nick Graham nick.d.graham@gmail.com
|
||||
@@ -477,6 +489,7 @@ Phil Richards phil.richards@vf.vodafone.co.uk
|
||||
Philippe De Muyter phdm@macqel.be
|
||||
Philippe Schnoebelen Philippe.Schnoebelen@imag.fr
|
||||
Phillip Jones mouse@datastacks.com
|
||||
Philipp Thomas pth@suse.de
|
||||
Piergiorgio Sartor sartor@sony.de
|
||||
Pieter Bowman bowman@math.utah.edu
|
||||
Piotr Gackiewicz gacek@intertele.pl
|
||||
@@ -548,6 +561,7 @@ Steven P Watson steven@magelico.net
|
||||
Stuart Citrin ctrn3e8@gmail.com
|
||||
Stuart Kemp skemp@peter.bmc.com
|
||||
Stuart Shelton stuart@shelton.me
|
||||
Sven Breuner sven.breuner@itwm.fraunhofer.de
|
||||
Szakacsits Szabolcs szaka@sienet.hu
|
||||
Tadayoshi Funaba tadf@kt.rim.or.jp
|
||||
TAKAI Kousuke takai@vlsi.kuee.kyoto-u.ac.jp
|
||||
|
||||
16
TODO
16
TODO
@@ -51,7 +51,7 @@ cp --no-preserve=X should not attempt to preserve attribute X
|
||||
reported by Andreas Schwab
|
||||
|
||||
copy.c: Address the FIXME-maybe comment in copy_internal.
|
||||
And once that's done, add an exclusion so that `cp --link'
|
||||
And once that's done, add an exclusion so that 'cp --link'
|
||||
no longer incurs the overhead of saving src. dev/ino and dest. filename
|
||||
in the hash table.
|
||||
|
||||
@@ -78,7 +78,7 @@ unexpand: [http://www.opengroup.org/onlinepubs/007908799/xcu/unexpand.html]
|
||||
printf 'x\t \t y\n'|unexpand -t 8,9 should print its input, unmodified.
|
||||
printf 'x\t \t y\n'|unexpand -t 5,8 should print "x\ty\n"
|
||||
|
||||
Let GNU su use the `wheel' group if appropriate.
|
||||
Let GNU su use the 'wheel' group if appropriate.
|
||||
(there are a couple patches, already)
|
||||
|
||||
sort: Investigate better sorting algorithms; see Knuth vol. 3.
|
||||
@@ -125,7 +125,7 @@ Changes expected to go in, someday.
|
||||
an implicit --NO-dereference-command-line-symlink-to-dir meaning.
|
||||
Pointed out by Karl Berry.
|
||||
|
||||
dd: consider adding an option to suppress `bytes/block read/written'
|
||||
dd: consider adding an option to suppress 'bytes/block read/written'
|
||||
output to stderr. Suggested here:
|
||||
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=165045
|
||||
|
||||
@@ -138,17 +138,17 @@ Changes expected to go in, someday.
|
||||
------------------------------
|
||||
|
||||
Remove long-deprecated options. Search case-insensitive for
|
||||
`deprecated' and `remove in '. Automate this.
|
||||
'deprecated' and 'remove in '. Automate this.
|
||||
|
||||
Add a distcheck-time test to ensure that every distributed
|
||||
file is either read-only(indicating generated) or is
|
||||
version-controlled and up to date.
|
||||
|
||||
remove `%s' notation (now that they're all gone, add a maint.mk sc_
|
||||
remove '%s' notation (now that they're all gone, add a maint.mk sc_
|
||||
rule to ensure no new ones are added):
|
||||
grep -E "\`%.{,4}s'" src/*.c
|
||||
|
||||
remove all uses of the `register' keyword: Done. add a maint.mk rule
|
||||
remove all uses of the 'register' keyword: Done. add a maint.mk rule
|
||||
for this, too.
|
||||
|
||||
remove or adjust chown's --changes option, since it
|
||||
@@ -162,13 +162,13 @@ integers. To be converted: seq.
|
||||
Adapt tools like wc, tr, fmt, etc. (most of the textutils) to be
|
||||
multibyte aware. The problem is that I want to avoid duplicating
|
||||
significant blocks of logic, yet I also want to incur only minimal
|
||||
(preferably `no') cost when operating in single-byte mode.
|
||||
(preferably 'no') cost when operating in single-byte mode.
|
||||
|
||||
pr's use of nstrftime can make it malloc a very large (up to SIZE_MAX) buffer
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2002-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
290
bootstrap
290
bootstrap
@@ -1,10 +1,10 @@
|
||||
#! /bin/sh
|
||||
# Print a version string.
|
||||
scriptversion=2011-08-11.17; # UTC
|
||||
scriptversion=2012-04-26.13; # UTC
|
||||
|
||||
# Bootstrap this package from checked-out sources.
|
||||
|
||||
# Copyright (C) 2003-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -36,12 +36,12 @@ nl='
|
||||
LC_ALL=C
|
||||
export LC_ALL
|
||||
|
||||
# Ensure that CDPATH is not set. Otherwise, the output from cd
|
||||
# would cause trouble in at least one use below.
|
||||
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
|
||||
|
||||
local_gl_dir=gl
|
||||
|
||||
# Temporary directory names.
|
||||
bt='._bootmp'
|
||||
bt_regex=`echo "$bt"| sed 's/\./[.]/g'`
|
||||
bt2=${bt}2
|
||||
me=$0
|
||||
|
||||
usage() {
|
||||
@@ -88,9 +88,12 @@ gnulib_modules=
|
||||
# Any gnulib files needed that are not in modules.
|
||||
gnulib_files=
|
||||
|
||||
# A function to be called to edit gnulib.mk right after it's created.
|
||||
: ${AUTOPOINT=autopoint}
|
||||
: ${AUTORECONF=autoreconf}
|
||||
|
||||
# A function to be called right after gnulib-tool is run.
|
||||
# Override it via your own definition in bootstrap.conf.
|
||||
gnulib_mk_hook() { :; }
|
||||
bootstrap_post_import_hook() { :; }
|
||||
|
||||
# A function to be called after everything else in this script.
|
||||
# Override it via your own definition in bootstrap.conf.
|
||||
@@ -105,6 +108,11 @@ po_download_command_format=\
|
||||
"rsync --delete --exclude '*.s1' -Lrtvz \
|
||||
'translationproject.org::tp/latest/%s/' '%s'"
|
||||
|
||||
# Fallback for downloading .po files (if rsync fails).
|
||||
po_download_command_format2=\
|
||||
"wget --mirror -nd -q -np -A.po -P '%s' \
|
||||
http://translationproject.org/latest/%s/"
|
||||
|
||||
extract_package_name='
|
||||
/^AC_INIT(/{
|
||||
/.*,.*,.*, */{
|
||||
@@ -312,8 +320,8 @@ insert_vc_ignore() {
|
||||
pattern="$2"
|
||||
case $vc_ignore_file in
|
||||
*.gitignore)
|
||||
# A .gitignore entry that does not start with `/' applies
|
||||
# recursively to subdirectories, so prepend `/' to every
|
||||
# A .gitignore entry that does not start with '/' applies
|
||||
# recursively to subdirectories, so prepend '/' to every
|
||||
# .gitignore entry.
|
||||
pattern=`echo "$pattern" | sed s,^,/,`;;
|
||||
esac
|
||||
@@ -419,12 +427,28 @@ check_versions() {
|
||||
$use_git || continue
|
||||
fi
|
||||
# Honor $APP variables ($TAR, $AUTOCONF, etc.)
|
||||
appvar=`echo $app | tr '[a-z]-' '[A-Z]_'`
|
||||
appvar=`echo $app | LC_ALL=C tr '[a-z]-' '[A-Z]_'`
|
||||
test "$appvar" = TAR && appvar=AMTAR
|
||||
case $appvar in
|
||||
GZIP) ;; # Do not use $GZIP: it contains gzip options.
|
||||
*) eval "app=\${$appvar-$app}" ;;
|
||||
esac
|
||||
|
||||
# Handle the still-experimental Automake-NG programs specially.
|
||||
# They remain named as the mainstream Automake programs ("automake",
|
||||
# and "aclocal") to avoid gratuitous incompatibilities with
|
||||
# pre-existing usages (by, say, autoreconf, or custom autogen.sh
|
||||
# scripts), but correctly identify themselves (as being part of
|
||||
# "GNU automake-ng") when asked their version.
|
||||
case $app in
|
||||
automake-ng|aclocal-ng)
|
||||
app=`echo "$app" | sed 's/-ng$//'`
|
||||
($app --version | grep '(GNU automake-ng)') >/dev/null 2>&1 || {
|
||||
echo "$me: Error: '$app' not found or not from Automake-NG" >&2
|
||||
ret=1
|
||||
continue
|
||||
} ;;
|
||||
esac
|
||||
if [ "$req_ver" = "-" ]; then
|
||||
# Merely require app to exist; not all prereq apps are well-behaved
|
||||
# so we have to rely on $? rather than get_version.
|
||||
@@ -473,6 +497,32 @@ if test $use_libtool = 1; then
|
||||
find_tool LIBTOOLIZE glibtoolize libtoolize
|
||||
fi
|
||||
|
||||
# gnulib-tool requires at least automake and autoconf.
|
||||
# If either is not listed, add it (with minimum version) as a prerequisite.
|
||||
case $buildreq in
|
||||
*automake*) ;;
|
||||
*) buildreq="automake 1.9
|
||||
$buildreq" ;;
|
||||
esac
|
||||
case $buildreq in
|
||||
*autoconf*) ;;
|
||||
*) buildreq="autoconf 2.59
|
||||
$buildreq" ;;
|
||||
esac
|
||||
|
||||
# When we can deduce that gnulib-tool will require patch,
|
||||
# and when patch is not already listed as a prerequisite, add it, too.
|
||||
if test ! -d "$local_gl_dir" \
|
||||
|| find "$local_gl_dir" -name '*.diff' -exec false {} +; then
|
||||
:
|
||||
else
|
||||
case $buildreq in
|
||||
*patch*) ;;
|
||||
*) buildreq="patch -
|
||||
$buildreq" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if ! printf "$buildreq" | check_versions; then
|
||||
echo >&2
|
||||
if test -f README-prereq; then
|
||||
@@ -574,7 +624,7 @@ if $bootstrap_sync; then
|
||||
fi
|
||||
|
||||
gnulib_tool=$GNULIB_SRCDIR/gnulib-tool
|
||||
<$gnulib_tool || exit
|
||||
<$gnulib_tool || exit $?
|
||||
|
||||
# Get translations.
|
||||
|
||||
@@ -583,6 +633,9 @@ download_po_files() {
|
||||
domain=$2
|
||||
echo "$me: getting translations into $subdir for $domain..."
|
||||
cmd=`printf "$po_download_command_format" "$domain" "$subdir"`
|
||||
eval "$cmd" && return
|
||||
# Fallback to HTTP.
|
||||
cmd=`printf "$po_download_command_format2" "$subdir" "$domain"`
|
||||
eval "$cmd"
|
||||
}
|
||||
|
||||
@@ -703,56 +756,38 @@ symlink_to_dir()
|
||||
}
|
||||
}
|
||||
|
||||
cp_mark_as_generated()
|
||||
{
|
||||
cp_src=$1
|
||||
cp_dst=$2
|
||||
# NOTE: we have to be careful to run both autopoint and libtoolize
|
||||
# before gnulib-tool, since gnulib-tool is likely to provide newer
|
||||
# versions of files "installed" by these two programs.
|
||||
# Then, *after* gnulib-tool (see below), we have to be careful to
|
||||
# run autoreconf in such a way that it does not run either of these
|
||||
# two just-pre-run programs.
|
||||
|
||||
if cmp -s "$cp_src" "$GNULIB_SRCDIR/$cp_dst"; then
|
||||
symlink_to_dir "$GNULIB_SRCDIR" "$cp_dst"
|
||||
elif cmp -s "$cp_src" "$local_gl_dir/$cp_dst"; then
|
||||
symlink_to_dir $local_gl_dir "$cp_dst"
|
||||
else
|
||||
case $cp_dst in
|
||||
*.[ch]) c1='/* '; c2=' */';;
|
||||
*.texi) c1='@c '; c2= ;;
|
||||
*.m4|*/Make*|Make*) c1='# ' ; c2= ;;
|
||||
*) c1= ; c2= ;;
|
||||
esac
|
||||
# Import from gettext.
|
||||
with_gettext=yes
|
||||
grep '^[ ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \
|
||||
with_gettext=no
|
||||
|
||||
# If the destination directory doesn't exist, create it.
|
||||
# This is required at least for "lib/uniwidth/cjk.h".
|
||||
dst_dir=`dirname "$cp_dst"`
|
||||
test -d "$dst_dir" || mkdir -p "$dst_dir"
|
||||
if test $with_gettext = yes; then
|
||||
# Released autopoint has the tendency to install macros that have been
|
||||
# obsoleted in current gnulib, so run this before gnulib-tool.
|
||||
echo "$0: $AUTOPOINT --force"
|
||||
$AUTOPOINT --force || exit
|
||||
fi
|
||||
|
||||
if test -z "$c1"; then
|
||||
cmp -s "$cp_src" "$cp_dst" || {
|
||||
# Copy the file first to get proper permissions if it
|
||||
# doesn't already exist. Then overwrite the copy.
|
||||
echo "$me: cp -f $cp_src $cp_dst" &&
|
||||
rm -f "$cp_dst" &&
|
||||
cp "$cp_src" "$cp_dst-t" &&
|
||||
sed "s!$bt_regex/!!g" "$cp_src" > "$cp_dst-t" &&
|
||||
mv -f "$cp_dst-t" "$cp_dst"
|
||||
}
|
||||
else
|
||||
# Copy the file first to get proper permissions if it
|
||||
# doesn't already exist. Then overwrite the copy.
|
||||
cp "$cp_src" "$cp_dst-t" &&
|
||||
(
|
||||
echo "$c1-*- buffer-read-only: t -*- vi: set ro:$c2" &&
|
||||
echo "${c1}DO NOT EDIT! GENERATED AUTOMATICALLY!$c2" &&
|
||||
sed "s!$bt_regex/!!g" "$cp_src"
|
||||
) > $cp_dst-t &&
|
||||
if cmp -s "$cp_dst-t" "$cp_dst"; then
|
||||
rm -f "$cp_dst-t"
|
||||
else
|
||||
echo "$me: cp $cp_src $cp_dst # with edits" &&
|
||||
mv -f "$cp_dst-t" "$cp_dst"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
# Autoreconf runs aclocal before libtoolize, which causes spurious
|
||||
# warnings if the initial aclocal is confused by the libtoolized
|
||||
# (or worse out-of-date) macro directory.
|
||||
# libtoolize 1.9b added the --install option; but we support back
|
||||
# to libtoolize 1.5.22, where the install action was default.
|
||||
if test $use_libtool = 1; then
|
||||
install=
|
||||
case $($LIBTOOLIZE --help) in
|
||||
*--install*) install=--install ;;
|
||||
esac
|
||||
echo "running: $LIBTOOLIZE $install --copy"
|
||||
$LIBTOOLIZE $install --copy
|
||||
fi
|
||||
|
||||
version_controlled_file() {
|
||||
dir=$1
|
||||
@@ -771,83 +806,17 @@ version_controlled_file() {
|
||||
test $found = yes
|
||||
}
|
||||
|
||||
slurp() {
|
||||
for dir in . `(cd $1 && find * -type d -print)`; do
|
||||
copied=
|
||||
sep=
|
||||
for file in `ls -a $1/$dir`; do
|
||||
case $file in
|
||||
.|..) continue;;
|
||||
# FIXME: should all file names starting with "." be ignored?
|
||||
.*) continue;;
|
||||
esac
|
||||
test -d $1/$dir/$file && continue
|
||||
for excluded_file in $excluded_files; do
|
||||
test "$dir/$file" = "$excluded_file" && continue 2
|
||||
done
|
||||
if test $file = Makefile.am && test "X$gnulib_mk" != XMakefile.am; then
|
||||
copied=$copied${sep}$gnulib_mk; sep=$nl
|
||||
remove_intl='/^[^#].*\/intl/s/^/#/;'"s!$bt_regex/!!g"
|
||||
sed "$remove_intl" $1/$dir/$file |
|
||||
cmp - $dir/$gnulib_mk > /dev/null || {
|
||||
echo "$me: Copying $1/$dir/$file to $dir/$gnulib_mk ..." &&
|
||||
rm -f $dir/$gnulib_mk &&
|
||||
sed "$remove_intl" $1/$dir/$file >$dir/$gnulib_mk &&
|
||||
gnulib_mk_hook $dir/$gnulib_mk
|
||||
}
|
||||
elif { test "${2+set}" = set && test -r $2/$dir/$file; } ||
|
||||
version_controlled_file $dir $file; then
|
||||
echo "$me: $dir/$file overrides $1/$dir/$file"
|
||||
else
|
||||
copied=$copied$sep$file; sep=$nl
|
||||
cp_mark_as_generated $1/$dir/$file $dir/$file
|
||||
fi || exit
|
||||
done
|
||||
|
||||
for dot_ig in x $vc_ignore; do
|
||||
test $dot_ig = x && continue
|
||||
ig=$dir/$dot_ig
|
||||
if test -n "$copied"; then
|
||||
insert_vc_ignore $ig "$copied"
|
||||
# If an ignored file name ends with .in.h, then also add
|
||||
# the name with just ".h". Many gnulib headers are generated,
|
||||
# e.g., stdint.in.h -> stdint.h, dirent.in.h ->..., etc.
|
||||
# Likewise for .gperf -> .h, .y -> .c, and .sin -> .sed
|
||||
f=`echo "$copied" |
|
||||
sed '
|
||||
s/\.in\.h$/.h/
|
||||
s/\.sin$/.sed/
|
||||
s/\.y$/.c/
|
||||
s/\.gperf$/.h/
|
||||
'
|
||||
`
|
||||
insert_vc_ignore $ig "$f"
|
||||
|
||||
# For files like sys_stat.in.h and sys_time.in.h, record as
|
||||
# ignorable the directory we might eventually create: sys/.
|
||||
f=`echo "$copied"|sed 's/sys_.*\.in\.h$/sys/'`
|
||||
insert_vc_ignore $ig "$f"
|
||||
fi
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
# Create boot temporary directories to import from gnulib and gettext.
|
||||
rm -fr $bt $bt2 &&
|
||||
mkdir $bt $bt2 || exit
|
||||
|
||||
# Import from gnulib.
|
||||
|
||||
gnulib_tool_options="\
|
||||
--import\
|
||||
--no-changelog\
|
||||
--aux-dir $bt/$build_aux\
|
||||
--doc-base $bt/$doc_base\
|
||||
--aux-dir $build_aux\
|
||||
--doc-base $doc_base\
|
||||
--lib $gnulib_name\
|
||||
--m4-base $bt/$m4_base/\
|
||||
--source-base $bt/$source_base/\
|
||||
--tests-base $bt/$tests_base\
|
||||
--m4-base $m4_base/\
|
||||
--source-base $source_base/\
|
||||
--tests-base $tests_base\
|
||||
--local-dir $local_gl_dir\
|
||||
$gnulib_tool_option_extras\
|
||||
"
|
||||
@@ -859,25 +828,13 @@ if test $use_libtool = 1; then
|
||||
fi
|
||||
echo "$0: $gnulib_tool $gnulib_tool_options --import ..."
|
||||
$gnulib_tool $gnulib_tool_options --import $gnulib_modules &&
|
||||
slurp $bt || exit
|
||||
|
||||
for file in $gnulib_files; do
|
||||
symlink_to_dir "$GNULIB_SRCDIR" $file || exit
|
||||
done
|
||||
|
||||
|
||||
# Import from gettext.
|
||||
with_gettext=yes
|
||||
grep '^[ ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \
|
||||
with_gettext=no
|
||||
|
||||
if test $with_gettext = yes; then
|
||||
echo "$0: (cd $bt2; ${AUTOPOINT-autopoint}) ..."
|
||||
cp configure.ac $bt2 &&
|
||||
(cd $bt2 && ${AUTOPOINT-autopoint} && rm configure.ac) &&
|
||||
slurp $bt2 $bt || exit
|
||||
fi
|
||||
rm -fr $bt $bt2 || exit
|
||||
bootstrap_post_import_hook \
|
||||
|| { echo >&2 "$me: bootstrap_post_import_hook failed"; exit 1; }
|
||||
|
||||
# Remove any dangling symlink matching "*.m4" or "*.[ch]" in some
|
||||
# gnulib-populated directories. Such .m4 files would cause aclocal to fail.
|
||||
@@ -891,28 +848,21 @@ find "$m4_base" "$source_base" \
|
||||
-depth \( -name '*.m4' -o -name '*.[ch]' \) \
|
||||
-type l -xtype l -delete > /dev/null 2>&1
|
||||
|
||||
# Reconfigure, getting other files.
|
||||
|
||||
# Skip autoheader if it's not needed.
|
||||
grep -E '^[ ]*AC_CONFIG_HEADERS?\>' configure.ac >/dev/null ||
|
||||
AUTOHEADER=true
|
||||
|
||||
for command in \
|
||||
libtool \
|
||||
"${ACLOCAL-aclocal} --force -I '$m4_base' $ACLOCAL_FLAGS" \
|
||||
"${AUTOCONF-autoconf} --force" \
|
||||
"${AUTOHEADER-autoheader} --force" \
|
||||
"${AUTOMAKE-automake} --add-missing --copy --force-missing"
|
||||
do
|
||||
if test "$command" = libtool; then
|
||||
test $use_libtool = 0 \
|
||||
&& continue
|
||||
command="${LIBTOOLIZE-libtoolize} -c -f"
|
||||
fi
|
||||
echo "$0: $command ..."
|
||||
eval "$command" || exit
|
||||
done
|
||||
# Some systems (RHEL 5) are using ancient autotools, for which the
|
||||
# --no-recursive option had not been invented. Detect that lack and
|
||||
# omit the option when it's not supported. FIXME in 2017: remove this
|
||||
# hack when RHEL 5 autotools are updated, or when they become irrelevant.
|
||||
no_recursive=
|
||||
case $($AUTORECONF --help) in
|
||||
*--no-recursive*) no_recursive=--no-recursive;;
|
||||
esac
|
||||
|
||||
# Tell autoreconf not to invoke autopoint or libtoolize; they were run above.
|
||||
echo "running: AUTOPOINT=true LIBTOOLIZE=true " \
|
||||
"$AUTORECONF --verbose --install $no_recursive -I $m4_base $ACLOCAL_FLAGS"
|
||||
AUTOPOINT=true LIBTOOLIZE=true \
|
||||
$AUTORECONF --verbose --install $no_recursive -I $m4_base $ACLOCAL_FLAGS \
|
||||
|| exit 1
|
||||
|
||||
# Get some extra files from gnulib, overriding existing files.
|
||||
for file in $gnulib_extra_files; do
|
||||
@@ -939,6 +889,16 @@ if test $with_gettext = yes; then
|
||||
}
|
||||
' po/Makevars.template >po/Makevars || exit 1
|
||||
|
||||
# If the 'gettext' module is in use, grab the latest Makefile.in.in.
|
||||
# If only the 'gettext-h' module is in use, assume autopoint already
|
||||
# put the correct version of this file into place.
|
||||
case $gnulib_modules in
|
||||
*gettext-h*) ;;
|
||||
*gettext*)
|
||||
cp $GNULIB_SRCDIR/build-aux/po/Makefile.in.in po/Makefile.in.in || exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -d runtime-po; then
|
||||
# Similarly for runtime-po/Makevars, but not quite the same.
|
||||
rm -f runtime-po/Makevars
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Bootstrap configuration.
|
||||
|
||||
# Copyright (C) 2006-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -70,10 +70,14 @@ gnulib_modules="
|
||||
faccessat
|
||||
fadvise
|
||||
fchdir
|
||||
fchmodat
|
||||
fchownat
|
||||
fclose
|
||||
fcntl
|
||||
fcntl-safer
|
||||
fdatasync
|
||||
fdl
|
||||
fdopen
|
||||
fdutimensat
|
||||
file-type
|
||||
fileblocks
|
||||
@@ -86,10 +90,12 @@ gnulib_modules="
|
||||
freopen
|
||||
freopen-safer
|
||||
fseeko
|
||||
fstatat
|
||||
fsusage
|
||||
fsync
|
||||
ftello
|
||||
ftoastr
|
||||
ftruncate
|
||||
fts
|
||||
full-read
|
||||
full-write
|
||||
@@ -97,11 +103,12 @@ gnulib_modules="
|
||||
gethrxtime
|
||||
getline
|
||||
getloadavg
|
||||
getlogin
|
||||
getndelim2
|
||||
getopt-gnu
|
||||
getpagesize
|
||||
getpass-gnu
|
||||
gettext
|
||||
gettext-h
|
||||
gettime
|
||||
gettimeofday
|
||||
getugroups
|
||||
@@ -124,6 +131,7 @@ gnulib_modules="
|
||||
inttostr
|
||||
inttypes
|
||||
isapipe
|
||||
isatty
|
||||
isblank
|
||||
largefile
|
||||
lchmod
|
||||
@@ -152,6 +160,8 @@ gnulib_modules="
|
||||
mkancesdirs
|
||||
mkdir
|
||||
mkdir-p
|
||||
mkfifo
|
||||
mknod
|
||||
mkstemp
|
||||
mktime
|
||||
modechange
|
||||
@@ -161,8 +171,10 @@ gnulib_modules="
|
||||
nproc
|
||||
obstack
|
||||
parse-datetime
|
||||
pathmax
|
||||
perl
|
||||
physmem
|
||||
pipe
|
||||
posix-shell
|
||||
posixtm
|
||||
posixver
|
||||
@@ -206,12 +218,15 @@ gnulib_modules="
|
||||
stpncpy
|
||||
strdup-posix
|
||||
strftime
|
||||
strncat
|
||||
strpbrk
|
||||
strsignal
|
||||
strtod
|
||||
strtoimax
|
||||
strtoumax
|
||||
symlink
|
||||
sys_ioctl
|
||||
sys_resource
|
||||
sys_stat
|
||||
sys_wait
|
||||
termios
|
||||
@@ -222,6 +237,7 @@ gnulib_modules="
|
||||
unicodeio
|
||||
unistd-safer
|
||||
unlink-busy
|
||||
unlinkat
|
||||
unlocked-io
|
||||
unsetenv
|
||||
update-copyright
|
||||
@@ -235,8 +251,8 @@ gnulib_modules="
|
||||
verify
|
||||
verror
|
||||
version-etc-fsf
|
||||
wcwidth
|
||||
wcswidth
|
||||
wcwidth
|
||||
winsz-ioctl
|
||||
winsz-termios
|
||||
write-any-file
|
||||
@@ -286,11 +302,13 @@ XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
|
||||
--keyword=proper_name_utf8:1,'"$see_manual"'\\\
|
||||
'
|
||||
|
||||
gnulib_tool_option_extras="--tests-base=$bt/gnulib-tests --with-tests"
|
||||
gnulib_tool_option_extras="--tests-base=gnulib-tests --with-tests --symlink\
|
||||
--makefile-name=gnulib.mk
|
||||
"
|
||||
|
||||
# Build prerequisites
|
||||
buildreq="\
|
||||
autoconf 2.62
|
||||
autoconf 2.64
|
||||
automake 1.11.1
|
||||
autopoint -
|
||||
bison -
|
||||
@@ -311,11 +329,6 @@ touch ChangeLog || exit 1
|
||||
|
||||
bootstrap_epilogue()
|
||||
{
|
||||
# Change paths in gnulib-tests/gnulib.mk from "../.." to "..".
|
||||
m=gnulib-tests/gnulib.mk
|
||||
sed 's,\.\./\.\.,..,g' $m > $m-t
|
||||
mv -f $m-t $m
|
||||
|
||||
# Since this is a "GNU" package, replace this line
|
||||
# if LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null \
|
||||
# | grep -v 'libtool:' >/dev/null; then
|
||||
@@ -326,4 +339,18 @@ bootstrap_epilogue()
|
||||
# first grep may well run out of memory.
|
||||
perl -pi -e 's/if LC_ALL=C grep .GNU .PACKAGE.*; then/if true; then/' \
|
||||
po/Makefile.in.in
|
||||
|
||||
# Install our git hooks, as long as "cp" accepts the --backup option,
|
||||
# so that we can back up any existing files.
|
||||
case $(cp --help) in *--backup*) backup=1;; *) backup=0;; esac
|
||||
if test $backup = 1; then
|
||||
hooks=$(cd scripts/git-hooks && git ls-files)
|
||||
for f in $hooks; do
|
||||
# If it is identical, skip it.
|
||||
cmp scripts/git-hooks/$f .git/hooks/$f > /dev/null \
|
||||
&& continue
|
||||
cp --backup=numbered scripts/git-hooks/$f .git/hooks
|
||||
chmod a-w .git/hooks/$f
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -234,7 +234,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2002-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
52
build-aux/git-log-fix
Normal file
52
build-aux/git-log-fix
Normal file
@@ -0,0 +1,52 @@
|
||||
# This file is expected to be used via gitlog-to-changelog's --amend=FILE
|
||||
# option. It specifies what changes to make to each given SHA1's commit
|
||||
# log and metadata, using Perl-eval'able expressions.
|
||||
|
||||
3a169f4c5d9159283548178668d2fae6fced3030
|
||||
# fix title:
|
||||
s/all tile types/all file types/
|
||||
|
||||
e181802521d4e19e367dbe8cfa877296bb5dafb2
|
||||
# fix the title!
|
||||
s,seq:,factor:,
|
||||
|
||||
3ece0355d52e41a1b079c0c46477a32250278c11
|
||||
# correct the URL
|
||||
s,<http.+?>,<http://bugs.debian.org/412688>,
|
||||
|
||||
# This is wrong now only in the git log. The ChangeLog-2008
|
||||
# entry was also erroneous, but has been corrected.
|
||||
# ed5c4e770a27862813c0182be8680abeb005d15b
|
||||
# # Wrong bug ID:
|
||||
# s,/363011,/350541,
|
||||
# # in this:
|
||||
# # Suggested by Josselin Mouette in <http://bugs.debian.org/363011>
|
||||
|
||||
# This was wrong only in the git log. The ChangeLog entry was
|
||||
# is from 2007, and so was recorded (correctly) in ChangeLog-2007.
|
||||
# 1379ed974f1fa39b12e2ffab18b3f7a607082202
|
||||
# # Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself.
|
||||
# # Change the author to be Paul. Note the escaped "@":
|
||||
# s,Jim .*>,Paul Eggert <eggert\@cs.ucla.edu>,
|
||||
|
||||
209850fd7e1e89cf8937310878bd22d70e3588a5
|
||||
s/isspace/isblank/
|
||||
# in this:
|
||||
# * tests/misc/uniq: New file. Test for the above, but only
|
||||
# when isspace(0240).
|
||||
|
||||
760bc6f7e73014e934a744a9d46ea8dbf5ba25c8
|
||||
s/Now, each/Now, the/;
|
||||
s!(elicits.*)\.!first $1, and the second works properly.!
|
||||
# change the log from this:
|
||||
# Without this, `truncate -s '> -1' F` would truncate F to length 0,
|
||||
# and `truncate -s " +1" F` would truncate F to 1 byte. Now, each
|
||||
# elicits a diagnostic.
|
||||
# to this:
|
||||
# Without this, `truncate -s '> -1' F` would truncate F to length 0,
|
||||
# and `truncate -s " +1" F` would truncate F to 1 byte. Now, the
|
||||
# first elicits a diagnostic, and the second works properly.
|
||||
|
||||
# Credit initial reporter of a related issue, now that the BZ is public.
|
||||
1e18d8416f9ef43bf08982cabe54220587061a08
|
||||
s,by ,by Nao Nishijima in http://bugzilla.redhat.com/766461\nand by ,
|
||||
97
cfg.mk
97
cfg.mk
@@ -1,5 +1,5 @@
|
||||
# Customize maint.mk -*- makefile -*-
|
||||
# Copyright (C) 2003-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -17,6 +17,10 @@
|
||||
# Used in maint.mk's web-manual rule
|
||||
manual_title = Core GNU utilities
|
||||
|
||||
# Use the direct link. This is guaranteed to work immediately, while
|
||||
# it can take a while for the faster mirror links to become usable.
|
||||
url_dir_list = http://ftp.gnu.org/gnu/$(PACKAGE)
|
||||
|
||||
# Tests not to run as part of "make distcheck".
|
||||
local-checks-to-skip = \
|
||||
sc_texinfo_acronym
|
||||
@@ -27,7 +31,21 @@ bootstrap-tools = autoconf,automake,gnulib,bison
|
||||
# Now that we have better tests, make this the default.
|
||||
export VERBOSE = yes
|
||||
|
||||
old_NEWS_hash = d491296a7e0e2269b2b96dc4bd5f77a8
|
||||
# Comparing tarball sizes compressed using different xz presets, we see that
|
||||
# an -8e-compressed tarball is only 9KiB larger than the -9e-compressed one.
|
||||
# Using -8e is preferred, since that lets the decompression process use half
|
||||
# the memory (32MiB rather than 64MiB).
|
||||
# $ for i in {7,8,9}{e,}; do \
|
||||
# (n=$(xz -$i < coreutils-8.15*.tar|wc -c);echo $n $i) & done |sort -nr
|
||||
# 5129388 7
|
||||
# 5036524 7e
|
||||
# 5017476 8
|
||||
# 5010604 9
|
||||
# 4923016 8e
|
||||
# 4914152 9e
|
||||
export XZ_OPT = -8e
|
||||
|
||||
old_NEWS_hash = d2ba572c2f1135b74e24ea3fb20e674e
|
||||
|
||||
# Add an exemption for sc_makefile_at_at_check.
|
||||
_makefile_at_at_check_exceptions = ' && !/^cu_install_program =/'
|
||||
@@ -66,7 +84,7 @@ ifneq ($(wildcard $(dd_c)),)
|
||||
fi
|
||||
endif
|
||||
|
||||
# Many m4 macros names once began with `jm_'.
|
||||
# Many m4 macros names once began with 'jm_'.
|
||||
# On 2004-04-13, they were all changed to start with gl_ instead.
|
||||
# Make sure that none are inadvertently reintroduced.
|
||||
sc_prohibit_jm_in_m4:
|
||||
@@ -182,6 +200,18 @@ sc_no_exec_perl_coreutils:
|
||||
exit 1; } || :; \
|
||||
fi
|
||||
|
||||
# With split lines, don't leave an operator at end of line.
|
||||
# Instead, put it on the following line, where it is more apparent.
|
||||
# Don't bother checking for "*" at end of line, since it provokes
|
||||
# far too many false positives, matching constructs like "TYPE *".
|
||||
# Similarly, omit "=" (initializers).
|
||||
binop_re_ ?= [-/+^!<>]|[-/+*^!<>=]=|&&?|\|\|?|<<=?|>>=?
|
||||
sc_prohibit_operator_at_end_of_line:
|
||||
@prohibit='. ($(binop_re_))$$' \
|
||||
in_vc_files='\.[chly]$$' \
|
||||
halt='found operator at end of line' \
|
||||
$(_sc_search_regexp)
|
||||
|
||||
# Don't use "readlink" or "readlinkat" directly
|
||||
sc_prohibit_readlink:
|
||||
@prohibit='\<readlink(at)? \(' \
|
||||
@@ -241,6 +271,15 @@ sc_prohibit_fail_0:
|
||||
halt='fail=0 initialization' \
|
||||
$(_sc_search_regexp)
|
||||
|
||||
# The mode part of a setfacl -m option argument must be three bytes long.
|
||||
# I.e., an argument of user:bin:rw or user:bin:r will make Solaris 10's
|
||||
# setfacl reject it with: "Unrecognized character found in mode field".
|
||||
# Use hyphens to give it a length of 3: "...:rw-" or "...:r--".
|
||||
sc_prohibit_short_facl_mode_spec:
|
||||
@prohibit='\<setfacl .*-m.*:.*:[rwx-]{1,2} ' \
|
||||
halt='setfacl mode string length < 3; extend with hyphen(s)' \
|
||||
$(_sc_search_regexp)
|
||||
|
||||
# Ensure that "stdio--.h" is used where appropriate.
|
||||
sc_require_stdio_safer:
|
||||
@if $(VC_LIST_EXCEPT) | grep -l '\.[ch]$$' > /dev/null; then \
|
||||
@@ -276,6 +315,32 @@ sc_prohibit_framework_failure:
|
||||
halt='use framework_failure_ instead' \
|
||||
$(_sc_search_regexp)
|
||||
|
||||
# Prohibit the use of `...` in tests/. Use $(...) instead.
|
||||
sc_prohibit_test_backticks:
|
||||
@prohibit='`' in_vc_files='^tests/' \
|
||||
halt='use $$(...), not `...` in tests/' \
|
||||
$(_sc_search_regexp)
|
||||
|
||||
# Exempt the contents of any usage function from the following.
|
||||
_continued_string_col_1 = \
|
||||
s/^usage .*?\n}//ms;/\\\n\w/ and print ("$$ARGV\n"),$$e=1;END{$$e||=0;exit $$e}
|
||||
# Ding any source file that has a continued string with an alphabetic in the
|
||||
# first column of the following line. We prohibit them because they usually
|
||||
# trigger false positives in tools that try to map an arbitrary line number
|
||||
# to the enclosing function name. Of course, very many strings do precisely
|
||||
# this, *when they are part of the usage function*. That is why we exempt
|
||||
# the contents of any function named "usage".
|
||||
sc_prohibit_continued_string_alpha_in_column_1:
|
||||
@perl -0777 -ne '$(_continued_string_col_1)' \
|
||||
$$($(VC_LIST_EXCEPT) | grep '\.[ch]$$') \
|
||||
|| { echo '$(ME): continued string with word in first column' \
|
||||
1>&2; exit 1; } || :
|
||||
# Use this to list offending lines:
|
||||
# git ls-files |grep '\.[ch]$' | xargs \
|
||||
# perl -n -0777 -e 's/^usage.*?\n}//ms;/\\\n\w/ and print "$ARGV\n"' \
|
||||
# | xargs grep -A1 '\\$'|grep '\.[ch][:-][_a-zA-Z]'
|
||||
|
||||
|
||||
###########################################################
|
||||
_p0 = \([^"'/]\|"\([^\"]\|[\].\)*"\|'\([^\']\|[\].\)*'
|
||||
_pre = $(_p0)\|[/][^"'/*]\|[/]"\([^\"]\|[\].\)*"\|[/]'\([^\']\|[\].\)*'\)*
|
||||
@@ -355,7 +420,8 @@ announcement_Cc_ = $(translation_project_), \
|
||||
-include $(srcdir)/dist-check.mk
|
||||
|
||||
update-copyright-env = \
|
||||
UPDATE_COPYRIGHT_USE_INTERVALS=1 \
|
||||
UPDATE_COPYRIGHT_FORCE=1 \
|
||||
UPDATE_COPYRIGHT_USE_INTERVALS=2 \
|
||||
UPDATE_COPYRIGHT_MAX_LINE_LENGTH=79
|
||||
|
||||
# List syntax-check exemptions.
|
||||
@@ -375,7 +441,8 @@ exclude_file_name_regexp--sc_require_config_h = \
|
||||
$(exclude_file_name_regexp--sc_require_config_h_first)
|
||||
|
||||
exclude_file_name_regexp--sc_po_check = ^gl/
|
||||
exclude_file_name_regexp--sc_prohibit_always-defined_macros = ^src/seq\.c$$
|
||||
exclude_file_name_regexp--sc_prohibit_always-defined_macros = \
|
||||
^src/(seq|remove)\.c$$
|
||||
exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF = ^tests/pr/
|
||||
exclude_file_name_regexp--sc_program_name = ^(gl/.*|lib/euidaccess-stat)\.c$$
|
||||
exclude_file_name_regexp--sc_file_system = \
|
||||
@@ -383,13 +450,25 @@ exclude_file_name_regexp--sc_file_system = \
|
||||
exclude_file_name_regexp--sc_prohibit_always_true_header_tests = \
|
||||
^m4/stat-prog\.m4$$
|
||||
exclude_file_name_regexp--sc_prohibit_fail_0 = \
|
||||
(^tests/init\.sh|Makefile\.am|\.mk)$$
|
||||
(^scripts/git-hooks/commit-msg|^tests/init\.sh|Makefile\.am|\.mk)$$
|
||||
exclude_file_name_regexp--sc_prohibit_atoi_atof = ^lib/euidaccess-stat\.c$$
|
||||
|
||||
tbi_1 = ^tests/pr/|(^gl/lib/reg.*\.c\.diff|Makefile(\.am)?|\.mk|^man/help2man)$$
|
||||
tbi_2 = ^scripts/git-hooks/(pre-commit|pre-applypatch|applypatch-msg)$$
|
||||
exclude_file_name_regexp--sc_prohibit_tab_based_indentation = \
|
||||
^tests/pr/|(^gl/lib/reg.*\.c\.diff|Makefile(\.am)?|\.mk|^man/help2man)$$
|
||||
$(tbi_1)|$(tbi_2)
|
||||
|
||||
exclude_file_name_regexp--sc_preprocessor_indentation = \
|
||||
^(gl/lib/rand-isaac\.[ch]|gl/tests/test-rand-isaac\.c)$$
|
||||
|
||||
|
||||
exclude_file_name_regexp--sc_prohibit_stat_st_blocks = \
|
||||
^(src/system\.h|tests/du/2g)$$
|
||||
|
||||
exclude_file_name_regexp--sc_prohibit_continued_string_alpha_in_column_1 = \
|
||||
^src/(system\.h|od\.c|printf\.c)$$
|
||||
|
||||
exclude_file_name_regexp--sc_prohibit_test_backticks = \
|
||||
^tests/(init\.sh|check\.mk|misc/stdbuf)$$
|
||||
|
||||
# Exempt test.c, since it's nominally shared, and relatively static.
|
||||
exclude_file_name_regexp--sc_prohibit_operator_at_end_of_line = \
|
||||
^src/(ptx|test|head)\.c$$
|
||||
|
||||
54
configure.ac
54
configure.ac
@@ -1,7 +1,7 @@
|
||||
# -*- autoconf -*-
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
# Copyright (C) 1991, 1993-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1991-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -32,9 +32,23 @@ AC_CONFIG_SRCDIR([src/ls.c])
|
||||
AC_CONFIG_AUX_DIR([build-aux])
|
||||
AC_CONFIG_HEADERS([lib/config.h:lib/config.hin])
|
||||
|
||||
AM_INIT_AUTOMAKE([1.11.1 dist-xz color-tests parallel-tests])
|
||||
AM_INIT_AUTOMAKE([1.11.1 no-dist-gzip dist-xz color-tests parallel-tests])
|
||||
AM_SILENT_RULES([yes]) # make --enable-silent-rules the default.
|
||||
|
||||
dnl POSIXCHECK is worthwhile for maintainers, but adds several seconds
|
||||
dnl (more than 10% execution time) to ./configure, with no benefit for
|
||||
dnl most users. Using it to look for bugs requires:
|
||||
dnl GNULIB_POSIXCHECK=1 autoreconf -f
|
||||
dnl ./configure
|
||||
dnl make
|
||||
dnl make -C src clean
|
||||
dnl make CFLAGS=-DGNULIB_POSIXCHECK=1
|
||||
dnl FIXME: Once we figure out how to avoid false positives, we should
|
||||
dnl have 'make my-distcheck' in dist-check.mk exercise this.
|
||||
m4_syscmd([test "${GNULIB_POSIXCHECK+set}" = set])
|
||||
m4_if(m4_sysval, [0], [], [dnl
|
||||
gl_ASSERT_NO_GNULIB_POSIXCHECK])
|
||||
|
||||
AC_PROG_CC_STDC
|
||||
AM_PROG_CC_C_O
|
||||
AC_PROG_CPP
|
||||
@@ -56,6 +70,24 @@ AC_ARG_ENABLE([gcc-warnings],
|
||||
[gl_gcc_warnings=no]
|
||||
)
|
||||
|
||||
# gl_GCC_VERSION_IFELSE([major], [minor], [run-if-found], [run-if-not-found])
|
||||
# ------------------------------------------------
|
||||
# If $CPP is gcc-MAJOR.MINOR or newer, then run RUN-IF-FOUND.
|
||||
# Otherwise, run RUN-IF-NOT-FOUND.
|
||||
AC_DEFUN([gl_GCC_VERSION_IFELSE],
|
||||
[AC_PREPROC_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[[
|
||||
#if ($1) < __GNUC__ || (($1) == __GNUC__ && ($2) <= __GNUC_MINOR__)
|
||||
/* ok */
|
||||
#else
|
||||
# error "your version of gcc is older than $1.$2"
|
||||
#endif
|
||||
]]),
|
||||
], [$3], [$4])
|
||||
]
|
||||
)
|
||||
|
||||
if test "$gl_gcc_warnings" = yes; then
|
||||
gl_WARN_ADD([-Werror], [WERROR_CFLAGS])
|
||||
AC_SUBST([WERROR_CFLAGS])
|
||||
@@ -102,8 +134,15 @@ if test "$gl_gcc_warnings" = yes; then
|
||||
gl_WARN_ADD([-Wno-sign-compare]) # Too many warnings for now
|
||||
gl_WARN_ADD([-Wno-unused-parameter]) # Too many warnings for now
|
||||
gl_WARN_ADD([-Wsuggest-attribute=const])
|
||||
gl_WARN_ADD([-Wsuggest-attribute=pure])
|
||||
gl_WARN_ADD([-Wsuggest-attribute=noreturn])
|
||||
gl_WARN_ADD([-Wno-format-nonliteral])
|
||||
|
||||
# Enable this warning only with gcc-4.7 and newer. With 4.6.2 20111027,
|
||||
# it suggests test.c's advance function may be pure, even though it
|
||||
# increments a global variable. Oops.
|
||||
# Normally we'd write code to test for the precise failure, but that
|
||||
# requires a relatively large input to make gcc exhibit the failure.
|
||||
gl_GCC_VERSION_IFELSE([4], [7], [gl_WARN_ADD([-Wsuggest-attribute=pure])])
|
||||
|
||||
# In spite of excluding -Wlogical-op above, it is enabled, as of
|
||||
# gcc 4.5.0 20090517, and it provokes warnings in cat.c, dd.c, truncate.c
|
||||
@@ -127,15 +166,18 @@ if test "$gl_gcc_warnings" = yes; then
|
||||
nw="$nw -Wunused-macros"
|
||||
nw="$nw -Wmissing-prototypes"
|
||||
nw="$nw -Wold-style-definition"
|
||||
# FIXME: remove/reenable the following two, once gnulib is adjusted.
|
||||
nw="$nw -Wsuggest-attribute=const"
|
||||
nw="$nw -Wsuggest-attribute=pure"
|
||||
# FIXME: it may be easy to remove this, since it affects only one file:
|
||||
# the snprintf call at ftoastr.c:132.
|
||||
nw="$nw -Wdouble-promotion"
|
||||
gl_MANYWARN_COMPLEMENT([GNULIB_WARN_CFLAGS], [$WARN_CFLAGS], [$nw])
|
||||
AC_SUBST([GNULIB_WARN_CFLAGS])
|
||||
|
||||
# For gnulib-tests, the set is slightly smaller still.
|
||||
nw=
|
||||
nw="$nw -Wstrict-prototypes"
|
||||
# It's not worth being this picky about test programs.
|
||||
nw="$nw -Wsuggest-attribute=const"
|
||||
nw="$nw -Wsuggest-attribute=pure"
|
||||
gl_MANYWARN_COMPLEMENT([GNULIB_TEST_WARN_CFLAGS],
|
||||
[$GNULIB_WARN_CFLAGS], [$nw])
|
||||
AC_SUBST([GNULIB_TEST_WARN_CFLAGS])
|
||||
|
||||
@@ -96,43 +96,6 @@ define my-instcheck
|
||||
}
|
||||
endef
|
||||
|
||||
# The hard-linking for-loop below ensures that there is a bin/ directory
|
||||
# full of all of the programs under test (except the ones that are required
|
||||
# for basic Makefile rules), all symlinked to the just-built "false" program.
|
||||
# This is to ensure that if ever a test neglects to make PATH include
|
||||
# the build srcdir, these always-failing programs will run.
|
||||
# Otherwise, it is too easy to test the wrong programs.
|
||||
# Note that "false" itself is a symlink to true, so it too will malfunction.
|
||||
define coreutils-path-check
|
||||
{ \
|
||||
echo running coreutils-path-check; \
|
||||
if test -f $(srcdir)/src/true.c; then \
|
||||
fail=1; \
|
||||
mkdir $(bin) \
|
||||
&& ($(write_loser)) > $(bin)/loser \
|
||||
&& chmod a+x $(bin)/loser \
|
||||
&& for i in $(built_programs); do \
|
||||
case $$i in \
|
||||
rm|expr|basename|echo|sort|ls|tr);; \
|
||||
cat|dirname|mv|wc);; \
|
||||
*) ln $(bin)/loser $(bin)/$$i;; \
|
||||
esac; \
|
||||
done \
|
||||
&& ln -sf ../src/true $(bin)/false \
|
||||
&& PATH=`pwd`/$(bin)$(PATH_SEPARATOR)$$PATH \
|
||||
$(MAKE) -C tests check \
|
||||
&& { test -d gnulib-tests \
|
||||
&& $(MAKE) -C gnulib-tests check \
|
||||
|| :; } \
|
||||
&& rm -rf $(bin) \
|
||||
&& fail=0; \
|
||||
else \
|
||||
fail=0; \
|
||||
fi; \
|
||||
test $$fail = 1 && exit 1 || :; \
|
||||
}
|
||||
endef
|
||||
|
||||
# Use this to make sure we don't run these programs when building
|
||||
# from a virgin compressed tarball file, below.
|
||||
null_AM_MAKEFLAGS ?= \
|
||||
@@ -156,7 +119,6 @@ my-distcheck: $(DIST_ARCHIVES) $(local-check)
|
||||
$(MAKE) dvi; \
|
||||
$(install-transform-check); \
|
||||
$(my-instcheck); \
|
||||
$(coreutils-path-check); \
|
||||
$(MAKE) distclean \
|
||||
)
|
||||
(cd $(t) && mv $(distdir) $(distdir).old \
|
||||
|
||||
@@ -2002,7 +2002,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2001-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Make coreutils documentation. -*-Makefile-*-
|
||||
|
||||
# Copyright (C) 1995-1998, 2001-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1995-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -87,7 +87,7 @@ sc-avoid-path:
|
||||
&& fail=1; \
|
||||
exit $$fail
|
||||
|
||||
# Use `time zone', not `timezone'.
|
||||
# Use "time zone", not "timezone".
|
||||
sc-avoid-timezone:
|
||||
$(AM_V_GEN)$(EGREP) timezone $(srcdir)/*.texi && exit 1 || :
|
||||
|
||||
@@ -108,7 +108,7 @@ sc-avoid-io:
|
||||
sc-avoid-non-zero:
|
||||
$(AM_V_GEN)$(EGREP) non-zero $(srcdir)/*.texi && exit 1 || :
|
||||
|
||||
# Use `zeros', not `zeroes' (nothing wrong with `zeroes'. just be consistent).
|
||||
# Use "zeros", not "zeroes" (nothing wrong with "zeroes"; just be consistent).
|
||||
sc-avoid-zeroes:
|
||||
$(AM_V_GEN)$(EGREP) -i '$(_W)zeroes$(W_)' $(srcdir)/*.texi \
|
||||
&& exit 1 || :
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
@dircategory Basics
|
||||
@direntry
|
||||
* Coreutils: (coreutils). Core GNU (file, text, shell) utilities.
|
||||
* Common options: (coreutils)Common options. Common options.
|
||||
* Common options: (coreutils)Common options.
|
||||
* File permissions: (coreutils)File permissions. Access modes.
|
||||
* Date input formats: (coreutils)Date input formats.
|
||||
@end direntry
|
||||
@@ -94,6 +94,7 @@
|
||||
* ptx: (coreutils)ptx invocation. Produce permuted indexes.
|
||||
* pwd: (coreutils)pwd invocation. Print working directory.
|
||||
* readlink: (coreutils)readlink invocation. Print referent of a symlink.
|
||||
* realpath: (coreutils)readpath invocation. Print resolved file names.
|
||||
* rm: (coreutils)rm invocation. Remove files.
|
||||
* rmdir: (coreutils)rmdir invocation. Remove empty directories.
|
||||
* runcon: (coreutils)runcon invocation. Run in specified SELinux CTX.
|
||||
@@ -139,7 +140,7 @@
|
||||
This manual documents version @value{VERSION} of the @sc{gnu} core
|
||||
utilities, including the standard programs for text and file manipulation.
|
||||
|
||||
Copyright @copyright{} 1994-1996, 2000-2011 Free Software Foundation, Inc.
|
||||
Copyright @copyright{} 1994-2012 Free Software Foundation, Inc.
|
||||
|
||||
@quotation
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
@@ -194,7 +195,7 @@ Free Documentation License''.
|
||||
* Printing text:: echo printf yes
|
||||
* Conditions:: false true test expr
|
||||
* Redirection:: tee
|
||||
* File name manipulation:: dirname basename pathchk mktemp
|
||||
* File name manipulation:: dirname basename pathchk mktemp realpath
|
||||
* Working context:: pwd stty printenv tty
|
||||
* User information:: id logname whoami groups users who
|
||||
* System context:: date arch nproc uname hostname hostid uptime
|
||||
@@ -381,6 +382,7 @@ File name manipulation
|
||||
* dirname invocation:: Strip last file name component
|
||||
* pathchk invocation:: Check file name validity and portability
|
||||
* mktemp invocation:: Create temporary file or directory
|
||||
* realpath invocation:: Print resolved file names
|
||||
|
||||
Working context
|
||||
|
||||
@@ -901,10 +903,10 @@ A block size specification can be a positive integer specifying the number
|
||||
of bytes per block, or it can be @code{human-readable} or @code{si} to
|
||||
select a human-readable format. Integers may be followed by suffixes
|
||||
that are upward compatible with the
|
||||
@uref{http://www.bipm.fr/enus/3_SI/si-prefixes.html, SI prefixes}
|
||||
@uref{http://www.bipm.org/en/si/si_brochure/chapter3/prefixes.html, SI prefixes}
|
||||
for decimal multiples and with the
|
||||
@uref{http://physics.nist.gov/cuu/Units/binary.html, IEC 60027-2
|
||||
prefixes for binary multiples}.
|
||||
@uref{http://physics.nist.gov/cuu/Units/binary.html, ISO/IEC 80000-13
|
||||
(formerly IEC 60027-2) prefixes} for binary multiples.
|
||||
|
||||
With human-readable formats, output sizes are followed by a size letter
|
||||
such as @samp{M} for megabytes. @code{BLOCK_SIZE=human-readable} uses
|
||||
@@ -946,7 +948,7 @@ kilobyte: @math{10^3 = 1000}.
|
||||
@itemx KiB
|
||||
@cindex kibibyte, definition of
|
||||
kibibyte: @math{2^{10} = 1024}. @samp{K} is special: the SI prefix is
|
||||
@samp{k} and the IEC 60027-2 prefix is @samp{Ki}, but tradition and
|
||||
@samp{k} and the ISO/IEC 80000-13 prefix is @samp{Ki}, but tradition and
|
||||
@acronym{POSIX} use @samp{k} to mean @samp{KiB}.
|
||||
@item MB
|
||||
@cindex megabyte, definition of
|
||||
@@ -989,14 +991,12 @@ zettabyte: @math{10^{21} = 1,000,000,000,000,000,000,000}
|
||||
@item Z
|
||||
@itemx ZiB
|
||||
@math{2^{70} = 1,180,591,620,717,411,303,424}.
|
||||
(@samp{Zi} is a @acronym{GNU} extension to IEC 60027-2.)
|
||||
@item YB
|
||||
@cindex yottabyte, definition of
|
||||
yottabyte: @math{10^{24} = 1,000,000,000,000,000,000,000,000}.
|
||||
@item Y
|
||||
@itemx YiB
|
||||
@math{2^{80} = 1,208,925,819,614,629,174,706,176}.
|
||||
(@samp{Yi} is a @acronym{GNU} extension to IEC 60027-2.)
|
||||
@end table
|
||||
|
||||
@opindex -k
|
||||
@@ -1327,7 +1327,7 @@ other parts of that standard.
|
||||
@cindex symbolic link to directory, controlling traversal of
|
||||
|
||||
The following options modify how @command{chown} and @command{chgrp}
|
||||
@c FIXME: note that `du' has these options, too, but they have slightly
|
||||
@c FIXME: note that 'du' has these options, too, but they have slightly
|
||||
@c different meaning.
|
||||
traverse a hierarchy when the @option{--recursive} (@option{-R})
|
||||
option is also specified.
|
||||
@@ -2203,9 +2203,15 @@ between sentences to two spaces.
|
||||
@opindex -@var{width}
|
||||
@opindex -w
|
||||
@opindex --width
|
||||
Fill output lines up to @var{width} characters (default 75). @command{fmt}
|
||||
initially tries to make lines about 7% shorter than this, to give it
|
||||
room to balance line lengths.
|
||||
Fill output lines up to @var{width} characters (default 75 or @var{goal}
|
||||
plus 10, if @var{goal} is provided).
|
||||
|
||||
@itemx -g @var{goal}
|
||||
@itemx --goal=@var{goal}
|
||||
@opindex -g
|
||||
@opindex --goal
|
||||
@command{fmt} initially tries to make lines @var{goal} characters wide.
|
||||
By default, this is 7% shorter than @var{width}.
|
||||
|
||||
@item -p @var{prefix}
|
||||
@itemx --prefix=@var{prefix}
|
||||
@@ -2299,8 +2305,8 @@ The program accepts the following options. Also see @ref{Common options}.
|
||||
|
||||
@item +@var{first_page}[:@var{last_page}]
|
||||
@itemx --pages=@var{first_page}[:@var{last_page}]
|
||||
@c The two following @opindex lines evoke warnings because they contain `:'
|
||||
@c The `info' spec does not permit that. If we use those lines, we end
|
||||
@c The two following @opindex lines evoke warnings because they contain ':'
|
||||
@c The 'info' spec does not permit that. If we use those lines, we end
|
||||
@c up with truncated index entries that don't work.
|
||||
@c @opindex +@var{first_page}[:@var{last_page}]
|
||||
@c @opindex --pages=@var{first_page}[:@var{last_page}]
|
||||
@@ -2360,7 +2366,7 @@ Double space the output.
|
||||
@cindex time formats
|
||||
@cindex formatting times
|
||||
Format header dates using @var{format}, using the same conventions as
|
||||
for the command @samp{date +@var{format}}; @xref{date invocation}.
|
||||
for the command @samp{date +@var{format}}. @xref{date invocation}.
|
||||
Except for directives, which start with
|
||||
@samp{%}, characters in @var{format} are printed unchanged. You can use
|
||||
this option to specify an arbitrary string in place of the header date,
|
||||
@@ -2518,7 +2524,7 @@ three column options (@option{-COLUMN}|@option{-a -COLUMN}|@option{-m}) unless
|
||||
@option{-w} is set. This is a @acronym{POSIX}-compliant formulation.
|
||||
|
||||
|
||||
@item -S@var{string}
|
||||
@item -S[@var{string}]
|
||||
@itemx --sep-string[=@var{string}]
|
||||
@opindex -S
|
||||
@opindex --sep-string
|
||||
@@ -2528,8 +2534,8 @@ does not affect line truncation or column alignment.
|
||||
Without @option{-S}, and with @option{-J}, @command{pr} uses the default output
|
||||
separator, TAB@.
|
||||
Without @option{-S} or @option{-J}, @command{pr} uses a @samp{space}
|
||||
(same as @option{-S"@w{ }"}). @option{--sep-string} with no
|
||||
@samp{=@var{string}} is equivalent to @option{--sep-string=""}.
|
||||
(same as @option{-S"@w{ }"}).
|
||||
If no @samp{@var{string}} argument is specified, @samp{""} is assumed.
|
||||
|
||||
@item -t
|
||||
@itemx --omit-header
|
||||
@@ -2990,8 +2996,15 @@ The output files' names consist of @var{prefix} (@samp{x} by default)
|
||||
followed by a group of characters (@samp{aa}, @samp{ab}, @dots{} by
|
||||
default), such that concatenating the output files in traditional
|
||||
sorted order by file name produces the original input file (except
|
||||
@option{-r}). If the output file names are exhausted, @command{split}
|
||||
reports an error without deleting the output files that it did create.
|
||||
@option{-nr/@var{n}}). By default split will initially create files
|
||||
with two generated suffix characters, and will increase this width by two
|
||||
when the next most significant position reaches the last character.
|
||||
(@samp{yz}, @samp{zaaa}, @samp{zaab}, @dots{}). In this way an arbitrary
|
||||
number of output files are supported, which sort as described above,
|
||||
even in the presence of an @option{--additional-suffix} option.
|
||||
If the @option{-a} option is specified and the output file names are
|
||||
exhausted, @command{split} reports an error without deleting the
|
||||
output files that it did create.
|
||||
|
||||
The program accepts the following options. Also see @ref{Common options}.
|
||||
|
||||
@@ -3040,7 +3053,7 @@ xz -dc BIG.xz | split -b200G --filter='xz > $FILE.xz' - big-
|
||||
@end example
|
||||
|
||||
Assuming a 10:1 compression ratio, that would create about fifty 20GiB files
|
||||
with names @file{big-xaa.xz}, @file{big-xab.xz}, @file{big-xac.xz}, etc.
|
||||
with names @file{big-aa.xz}, @file{big-ab.xz}, @file{big-ac.xz}, etc.
|
||||
|
||||
@item -n @var{chunks}
|
||||
@itemx --number=@var{chunks}
|
||||
@@ -3081,13 +3094,26 @@ and so can be a pipe for example.
|
||||
@itemx --suffix-length=@var{length}
|
||||
@opindex -a
|
||||
@opindex --suffix-length
|
||||
Use suffixes of length @var{length}. The default @var{length} is 2.
|
||||
Use suffixes of length @var{length}. If a @var{length} of 0 is specified,
|
||||
this is the same as if (any previous) @option{-a} was not specified, and
|
||||
thus enables the default behavior, which starts the suffix length at 2,
|
||||
and unless @option{-n} or @option{--numeric-suffixes=@var{from}} is
|
||||
specified, will auto increase the length by 2 as required.
|
||||
|
||||
@item -d
|
||||
@itemx --numeric-suffixes
|
||||
@itemx --numeric-suffixes[=@var{from}]
|
||||
@opindex -d
|
||||
@opindex --numeric-suffixes
|
||||
Use digits in suffixes rather than lower-case letters.
|
||||
Use digits in suffixes rather than lower-case letters. The numerical
|
||||
suffix counts from @var{from} if specified, 0 otherwise.
|
||||
Note specifying a @var{from} value also disables the default
|
||||
auto suffix length expansion described above, and so you may also
|
||||
want to specify @option{-a} to allow suffixes beyond @samp{99}.
|
||||
|
||||
@itemx --additional-suffix=@var{suffix}
|
||||
@opindex --additional-suffix
|
||||
Append an additional @var{suffix} to output file names. @var{suffix}
|
||||
must not contain slash.
|
||||
|
||||
@item -e
|
||||
@itemx --elide-empty-files
|
||||
@@ -3612,7 +3638,7 @@ md5sum [@var{option}]@dots{} [@var{file}]@dots{}
|
||||
@end example
|
||||
|
||||
For each @var{file}, @samp{md5sum} outputs the MD5 checksum, a flag
|
||||
indicating a binary or text input file, and the file name.
|
||||
indicating binary or text input mode, and the file name.
|
||||
If @var{file} contains a backslash or newline, the
|
||||
line is started with a backslash, and each problematic character in
|
||||
the file name is escaped with a backslash, making the output
|
||||
@@ -3631,7 +3657,7 @@ The program accepts the following options. Also see @ref{Common options}.
|
||||
Treat each input file as binary, by reading it in binary mode and
|
||||
outputting a @samp{*} flag. This is the inverse of @option{--text}.
|
||||
On systems like @acronym{GNU} that do not distinguish between binary
|
||||
and text files, this option merely flags each input file as binary:
|
||||
and text files, this option merely flags each input mode as binary:
|
||||
the MD5 checksum is unaffected. This option is the default on systems
|
||||
like MS-DOS that distinguish between binary and text files, except
|
||||
for reading standard input when standard input is a terminal.
|
||||
@@ -3645,7 +3671,7 @@ The input to this mode of @command{md5sum} is usually the output of
|
||||
a prior, checksum-generating run of @samp{md5sum}.
|
||||
Each valid line of input consists of an MD5 checksum, a binary/text
|
||||
flag, and then a file name.
|
||||
Binary files are marked with @samp{*}, text with @samp{ }.
|
||||
Binary mode is indicated with @samp{*}, text with @samp{ } (space).
|
||||
For each such line, @command{md5sum} reads the named file and computes its
|
||||
MD5 checksum. Then, if the computed message digest does not match the
|
||||
one on the line with the file name, the file is noted as having
|
||||
@@ -4362,7 +4388,7 @@ sort -n -r
|
||||
@end example
|
||||
|
||||
@item
|
||||
Run no more that 4 sorts concurrently, using a buffer size of 10M.
|
||||
Run no more than 4 sorts concurrently, using a buffer size of 10M.
|
||||
|
||||
@example
|
||||
sort --parallel=4 -S 10M
|
||||
@@ -4813,7 +4839,7 @@ contains lines unique to @var{file1}, column two contains lines unique
|
||||
to @var{file2}, and column three contains lines common to both files.
|
||||
Columns are separated by a single TAB character.
|
||||
@c FIXME: when there's an option to supply an alternative separator
|
||||
@c string, append `by default' to the above sentence.
|
||||
@c string, append "by default" to the above sentence.
|
||||
|
||||
@opindex -1
|
||||
@opindex -2
|
||||
@@ -4884,7 +4910,7 @@ all @sc{gnu} extensions and reverts to traditional mode, thus introducing some
|
||||
limitations and changing several of the program's default option values.
|
||||
When @option{-G} is not specified, @sc{gnu} extensions are always enabled.
|
||||
@sc{gnu} extensions to @command{ptx} are documented wherever appropriate in this
|
||||
document. For the full list, see @xref{Compatibility in ptx}.
|
||||
document. @xref{Compatibility in ptx}, for the full list.
|
||||
|
||||
Individual options are explained in the following sections.
|
||||
|
||||
@@ -5021,8 +5047,9 @@ if it is listed in the Only file and not in the Ignore file.
|
||||
|
||||
On each input line, the leading sequence of non-white space characters will be
|
||||
taken to be a reference that has the purpose of identifying this input
|
||||
line in the resulting permuted index. For more information about reference
|
||||
production, see @xref{Output formatting in ptx}.
|
||||
line in the resulting permuted index.
|
||||
@xref{Output formatting in ptx},
|
||||
for more information about reference production.
|
||||
Using this option changes the default value for option @option{-S}.
|
||||
|
||||
Using this option, the program does not try very hard to remove
|
||||
@@ -7127,10 +7154,19 @@ Append @samp{*} for executable regular files, otherwise behave as for
|
||||
@end table
|
||||
|
||||
@item -k
|
||||
@itemx --kibibytes
|
||||
@opindex -k
|
||||
Print file sizes in 1024-byte blocks, overriding the default block
|
||||
size (@pxref{Block size}).
|
||||
This option is equivalent to @option{--block-size=1K}.
|
||||
@opindex --kibibytes
|
||||
Set the default block size to its normal value of 1024 bytes,
|
||||
overriding any contrary specification in environment variables
|
||||
(@pxref{Block size}). This option is in turn overridden by the
|
||||
@option{--block-size}, @option{-h} or @option{--human-readable}, and
|
||||
@option{--si} options.
|
||||
|
||||
The @option{-k} or @option{--kibibytes} option affects the
|
||||
per-directory block count written by the @option{-l} and similar
|
||||
options, and the size written by the @option{-s} or @option{--size}
|
||||
option. It does not affect the file size written by @option{-l}.
|
||||
|
||||
@item -m
|
||||
@itemx --format=commas
|
||||
@@ -7192,6 +7228,7 @@ a date like @samp{Mar 30@ @ 2002} for non-recent timestamps, and a
|
||||
date-without-year and time like @samp{Mar 30 23:45} for recent timestamps.
|
||||
This format can change depending on the current locale as detailed below.
|
||||
|
||||
@cindex clock skew
|
||||
A timestamp is considered to be @dfn{recent} if it is less than six
|
||||
months old, and is not dated in the future. If a timestamp dated
|
||||
today is not listed in recent form, the timestamp is in the future,
|
||||
@@ -7391,7 +7428,7 @@ locale.
|
||||
@c Use @t instead of @samp to avoid duplicate quoting in some output styles.
|
||||
Quote strings as for C character string literals, except use
|
||||
surrounding quotation marks appropriate for the locale, and quote
|
||||
@t{`like this'} instead of @t{"like
|
||||
@t{'like this'} instead of @t{"like
|
||||
this"} in the default C locale. This looks nicer on many displays.
|
||||
@end table
|
||||
|
||||
@@ -7444,7 +7481,7 @@ terminal for color output from @command{ls} (and @command{dir}, etc.).
|
||||
Typical usage:
|
||||
|
||||
@example
|
||||
eval "`dircolors [@var{option}]@dots{} [@var{file}]`"
|
||||
eval "$(dircolors [@var{option}]@dots{} [@var{file}])"
|
||||
@end example
|
||||
|
||||
If @var{file} is specified, @command{dircolors} reads it to determine which
|
||||
@@ -7619,9 +7656,9 @@ Equivalent to @option{-dR --preserve=all} with the reduced diagnostics.
|
||||
|
||||
@itemx --attributes-only
|
||||
@opindex --attributes-only
|
||||
Preserve the specified attributes of the original files in the copy,
|
||||
but do not copy any data. See the @option{--preserve} option for
|
||||
controlling which attributes to copy.
|
||||
Copy only the specified attributes of the source file to the destination.
|
||||
If the destination already exists, do not alter its contents.
|
||||
See the @option{--preserve} option for controlling which attributes to copy.
|
||||
|
||||
@item -b
|
||||
@itemx @w{@kbd{--backup}[=@var{method}]}
|
||||
@@ -8047,18 +8084,24 @@ When converting variable-length records to fixed-length ones
|
||||
(@option{conv=block}) or the reverse (@option{conv=unblock}),
|
||||
use @var{bytes} as the fixed record length.
|
||||
|
||||
@item skip=@var{blocks}
|
||||
@item skip=@var{n}
|
||||
@opindex skip
|
||||
Skip @var{blocks} @samp{ibs}-byte blocks in the input file before copying.
|
||||
Skip @var{n} @samp{ibs}-byte blocks in the input file before copying.
|
||||
If @samp{iflag=skip_bytes} is specified, @var{n} is interpreted
|
||||
as a byte count rather than a block count.
|
||||
|
||||
@item seek=@var{blocks}
|
||||
@item seek=@var{n}
|
||||
@opindex seek
|
||||
Skip @var{blocks} @samp{obs}-byte blocks in the output file before copying.
|
||||
Skip @var{n} @samp{obs}-byte blocks in the output file before copying.
|
||||
if @samp{oflag=seek_bytes} is specified, @var{n} is interpreted
|
||||
as a byte count rather than a block count.
|
||||
|
||||
@item count=@var{blocks}
|
||||
@item count=@var{n}
|
||||
@opindex count
|
||||
Copy @var{blocks} @samp{ibs}-byte blocks from the input file, instead
|
||||
Copy @var{n} @samp{ibs}-byte blocks from the input file, instead
|
||||
of everything until the end of the file.
|
||||
if @samp{iflag=count_bytes} is specified, @var{n} is interpreted
|
||||
as a byte count rather than a block count.
|
||||
|
||||
@item status=noxfer
|
||||
@opindex status
|
||||
@@ -8117,6 +8160,20 @@ Change lowercase letters to uppercase.
|
||||
|
||||
The @samp{lcase} and @samp{ucase} conversions are mutually exclusive.
|
||||
|
||||
@item sparse
|
||||
@opindex sparse
|
||||
Try to seek rather than write @sc{nul} output blocks.
|
||||
On a file system that supports sparse files, this will create
|
||||
sparse output when extending the output file.
|
||||
Be careful when using this option in conjunction with
|
||||
@samp{conv=notrunc} or @samp{oflag=append}.
|
||||
With @samp{conv=notrunc}, existing data in the output file
|
||||
corresponding to @sc{nul} blocks from the input, will be untouched.
|
||||
With @samp{oflag=append} the seeks performed will be ineffective.
|
||||
Similarly, when the output is a device rather than a file,
|
||||
@sc{nul} input blocks are not copied, and therefore this option
|
||||
is most useful with virtual or pre zeroed devices.
|
||||
|
||||
@item swab
|
||||
@opindex swab @r{(byte-swapping)}
|
||||
@cindex byte-swapping
|
||||
@@ -8311,6 +8368,27 @@ When that happens, continue calling @code{read} to fill the remainder
|
||||
of the block.
|
||||
This flag can be used only with @code{iflag}.
|
||||
|
||||
@item count_bytes
|
||||
@opindex count_bytes
|
||||
Interpret the @samp{count=} operand as a byte count,
|
||||
rather than a block count, which allows specifying
|
||||
a length that is not a multiple of the I/O block size.
|
||||
This flag can be used only with @code{iflag}.
|
||||
|
||||
@item skip_bytes
|
||||
@opindex skip_bytes
|
||||
Interpret the @samp{skip=} operand as a byte count,
|
||||
rather than a block count, which allows specifying
|
||||
an offset that is not a multiple of the I/O block size.
|
||||
This flag can be used only with @code{iflag}.
|
||||
|
||||
@item seek_bytes
|
||||
@opindex seek_bytes
|
||||
Interpret the @samp{seek=} operand as a byte count,
|
||||
rather than a block count, which allows specifying
|
||||
an offset that is not a multiple of the I/O block size.
|
||||
This flag can be used only with @code{oflag}.
|
||||
|
||||
@end table
|
||||
|
||||
These flags are not supported on all systems, and @samp{dd} rejects
|
||||
@@ -8333,10 +8411,13 @@ should not be too large---values larger than a few megabytes
|
||||
are generally wasteful or (as in the gigabyte..exabyte case) downright
|
||||
counterproductive or error-inducing.
|
||||
|
||||
Use different @command{dd} invocations to use different block sizes for
|
||||
skipping and I/O@. For example, the following shell commands copy data
|
||||
in 512 KiB blocks between a disk and a tape, but do not save or restore a
|
||||
4 KiB label at the start of the disk:
|
||||
To process data that is at an offset or size that is not a
|
||||
multiple of the I/O@ block size, you can use the @samp{skip_bytes},
|
||||
@samp{seek_bytes} and @samp{count_bytes} flags. Alternatively
|
||||
the traditional method of separate @command{dd} invocations can be used.
|
||||
For example, the following shell commands copy data
|
||||
in 512 KiB blocks between a disk and a tape, but do not save
|
||||
or restore a 4 KiB label at the start of the disk:
|
||||
|
||||
@example
|
||||
disk=/dev/rdsk/c0t1d0s2
|
||||
@@ -8729,7 +8810,7 @@ The program accepts the following options. Also see @ref{Common options}.
|
||||
@itemx --force
|
||||
@opindex -f
|
||||
@opindex --force
|
||||
Ignore nonexistent files and never prompt the user.
|
||||
Ignore nonexistent files and missing operands, and never prompt the user.
|
||||
Ignore any previous @option{--interactive} (@option{-i}) option.
|
||||
|
||||
@item -i
|
||||
@@ -9060,7 +9141,7 @@ The intended use of this is to shred a removed temporary file.
|
||||
For example:
|
||||
|
||||
@example
|
||||
i=`mktemp`
|
||||
i=$(mktemp)
|
||||
exec 3<>"$i"
|
||||
rm -- "$i"
|
||||
echo "Hello, world" >&3
|
||||
@@ -9318,6 +9399,22 @@ symbolic link with identical contents; since symbolic link contents
|
||||
cannot be edited, any file name resolution performed through either
|
||||
link will be the same as if a hard link had been created.
|
||||
|
||||
@item -r
|
||||
@itemx --relative
|
||||
@opindex -r
|
||||
@opindex --relative
|
||||
Make symbolic links relative to the link location.
|
||||
|
||||
Example:
|
||||
|
||||
@smallexample
|
||||
ln -srv /a/file /tmp
|
||||
'/tmp/file' -> '../a/file'
|
||||
@end smallexample
|
||||
|
||||
@xref{realpath invocation}, which gives greater control
|
||||
over relative file name generation.
|
||||
|
||||
@item -s
|
||||
@itemx --symbolic
|
||||
@opindex -s
|
||||
@@ -9547,7 +9644,7 @@ for a FIFO
|
||||
for a block special file
|
||||
|
||||
@item c
|
||||
@c Don't document the `u' option -- it's just a synonym for `c'.
|
||||
@c Don't document the 'u' option -- it's just a synonym for 'c'.
|
||||
@c Do *any* versions of mknod still use it?
|
||||
@c @itemx u
|
||||
@opindex c @r{for character special file}
|
||||
@@ -9595,7 +9692,6 @@ Set the default SELinux security context to be used for created files.
|
||||
@cindex displaying value of a symbolic link
|
||||
@cindex canonical file name
|
||||
@cindex canonicalize a file name
|
||||
@pindex realpath
|
||||
@findex realpath
|
||||
|
||||
@command{readlink} may work in one of two supported modes:
|
||||
@@ -9678,8 +9774,8 @@ Report error messages.
|
||||
|
||||
The @command{readlink} utility first appeared in OpenBSD 2.1.
|
||||
|
||||
There is a @command{realpath} command on some systems
|
||||
which operates like @command{readlink} in canonicalize mode.
|
||||
The @command{realpath} command without options, operates like
|
||||
@command{readlink} in canonicalize mode.
|
||||
|
||||
@exitstatus
|
||||
|
||||
@@ -10254,11 +10350,39 @@ A @var{file} argument string of @samp{-} is handled specially and
|
||||
causes @command{touch} to change the times of the file associated with
|
||||
standard output.
|
||||
|
||||
@cindex clock skew
|
||||
By default, @command{touch} sets file timestamps to the current time.
|
||||
Because @command{touch} acts on its operands left to right, the
|
||||
resulting timestamps of earlier and later operands may disagree.
|
||||
Also, the determination of what time is ``current'' depends on the
|
||||
platform. Platforms with network file systems often use different
|
||||
clocks for the operating system and for file systems; because
|
||||
@command{touch} typically uses file systems' clocks by default, clock
|
||||
skew can cause the resulting file timestamps to appear to be in a
|
||||
program's ``future'' or ``past''.
|
||||
|
||||
@cindex file timestamp resolution
|
||||
The @command{touch} command sets the file's timestamp to the greatest
|
||||
representable value that is not greater than the requested time. This
|
||||
can differ from the requested time for several reasons. First, the
|
||||
requested time may have a higher resolution than supported. Second, a
|
||||
file system may use different resolutions for different types of
|
||||
times. Third, file timestamps may use a different resolution than
|
||||
operating system timestamps. Fourth, the operating system primitives
|
||||
used to update timestamps may employ yet a different resolution. For
|
||||
example, in theory a file system might use 10-microsecond resolution
|
||||
for access time and 100-nanosecond resolution for modification time,
|
||||
and the operating system might use nanosecond resolution for the
|
||||
current time and microsecond resolution for the primitive that
|
||||
@command{touch} uses to set a file's timestamp to an arbitrary value.
|
||||
|
||||
@cindex permissions, for changing file timestamps
|
||||
If changing both the access and modification times to the current
|
||||
time, @command{touch} can change the timestamps for files that the user
|
||||
running it does not own but has write permission for. Otherwise, the
|
||||
user must own the files.
|
||||
When setting file timestamps to the current time, @command{touch} can
|
||||
change the timestamps for files that the user does not own but has
|
||||
write permission for. Otherwise, the user must own the files. Some
|
||||
older systems have a further restriction: the user must own the files
|
||||
unless both the access and modification times are being set to the
|
||||
current time.
|
||||
|
||||
Although @command{touch} provides options for changing two of the times---the
|
||||
times of last access and modification---of a file, there is actually
|
||||
@@ -10994,7 +11118,7 @@ The valid @var{format} directives for files with @option{--format} and
|
||||
@item %m - Mount point (See note below)
|
||||
@item %n - File name
|
||||
@item %N - Quoted file name with dereference if symbolic link
|
||||
@item %o - I/O block size
|
||||
@item %o - Optimal I/O transfer size hint
|
||||
@item %s - Total size, in bytes
|
||||
@item %t - Major device type in hex
|
||||
@item %T - Minor device type in hex
|
||||
@@ -12108,7 +12232,7 @@ Here are a few examples, including quoting for shell metacharacters.
|
||||
To add 1 to the shell variable @code{foo}, in Bourne-compatible shells:
|
||||
|
||||
@example
|
||||
foo=`expr $foo + 1`
|
||||
foo=$(expr $foo + 1)
|
||||
@end example
|
||||
|
||||
To print the non-directory part of the file name stored in
|
||||
@@ -12318,6 +12442,7 @@ This section describes commands that manipulate file names.
|
||||
* dirname invocation:: Strip last file name component.
|
||||
* pathchk invocation:: Check file name validity and portability.
|
||||
* mktemp invocation:: Create temporary file or directory.
|
||||
* realpath invocation:: Print resolved file names.
|
||||
@end menu
|
||||
|
||||
|
||||
@@ -12336,6 +12461,7 @@ This section describes commands that manipulate file names.
|
||||
|
||||
@example
|
||||
basename @var{name} [@var{suffix}]
|
||||
basename @var{option}... @var{name}...
|
||||
@end example
|
||||
|
||||
If @var{suffix} is specified and is identical to the end of @var{name},
|
||||
@@ -12359,8 +12485,33 @@ for everything except file names containing a trailing newline.
|
||||
result is @samp{//} on platforms where @var{//} is distinct from
|
||||
@var{/}, and @samp{/} on platforms where there is no difference.
|
||||
|
||||
The only options are @option{--help} and @option{--version}. @xref{Common
|
||||
options}. Options must precede operands.
|
||||
The program accepts the following options. Also see @ref{Common options}.
|
||||
Options must precede operands.
|
||||
|
||||
@table @samp
|
||||
|
||||
@item -a
|
||||
@itemx --multiple
|
||||
@opindex -a
|
||||
@opindex --multiple
|
||||
Support more than one argument. Treat every argument as a @var{name}.
|
||||
With this, an optional @var{suffix} must be specified using the
|
||||
@option{-s} option.
|
||||
|
||||
@item -s @var{suffix}
|
||||
@itemx --suffix=@var{suffix}
|
||||
@opindex -s
|
||||
@opindex --suffix
|
||||
Remove a trailing @var{suffix}.
|
||||
This option implies the @option{-a} option.
|
||||
|
||||
@item -z
|
||||
@itemx --zero
|
||||
@opindex -z
|
||||
@opindex --zero
|
||||
Separate output items with @sc{nul} characters.
|
||||
|
||||
@end table
|
||||
|
||||
@exitstatus
|
||||
|
||||
@@ -12372,6 +12523,12 @@ basename /usr/bin/sort
|
||||
|
||||
# Output "stdio".
|
||||
basename include/stdio.h .h
|
||||
|
||||
# Output "stdio".
|
||||
basename -s .h include/stdio.h
|
||||
|
||||
# Output "stdio" followed by "stdlib"
|
||||
basename -a -s .h include/stdio.h include/stdlib.h
|
||||
@end smallexample
|
||||
|
||||
|
||||
@@ -12383,13 +12540,13 @@ basename include/stdio.h .h
|
||||
@cindex stripping non-directory suffix
|
||||
@cindex non-directory suffix, stripping
|
||||
|
||||
@command{dirname} prints all but the final slash-delimited component of
|
||||
@var{name}. Slashes on either side of the final component are also
|
||||
removed. If the string contains no slash, @command{dirname} prints
|
||||
@samp{.} (meaning the current directory). Synopsis:
|
||||
@command{dirname} prints all but the final slash-delimited component
|
||||
of each @var{name}. Slashes on either side of the final component are
|
||||
also removed. If the string contains no slash, @command{dirname}
|
||||
prints @samp{.} (meaning the current directory). Synopsis:
|
||||
|
||||
@example
|
||||
dirname @var{name}
|
||||
dirname [@var{option}] @var{name}...
|
||||
@end example
|
||||
|
||||
@var{name} need not be a file name, but if it is, this operation
|
||||
@@ -12403,8 +12560,17 @@ including the case when the final component is itself a directory.
|
||||
result is @samp{//} on platforms where @var{//} is distinct from
|
||||
@var{/}, and @samp{/} on platforms where there is no difference.
|
||||
|
||||
The only options are @option{--help} and @option{--version}. @xref{Common
|
||||
options}.
|
||||
The program accepts the following option. Also see @ref{Common options}.
|
||||
|
||||
@table @samp
|
||||
|
||||
@item -z
|
||||
@itemx --zero
|
||||
@opindex -z
|
||||
@opindex --zero
|
||||
Separate output items with @sc{nul} characters.
|
||||
|
||||
@end table
|
||||
|
||||
@exitstatus
|
||||
|
||||
@@ -12415,6 +12581,9 @@ Examples:
|
||||
dirname /usr/bin/sort
|
||||
dirname /usr/bin//.//
|
||||
|
||||
# Output "dir1" followed by "dir2"
|
||||
dirname dir1/str dir2/str
|
||||
|
||||
# Output ".".
|
||||
dirname stdio.h
|
||||
@end smallexample
|
||||
@@ -12671,6 +12840,123 @@ Exit status:
|
||||
@end display
|
||||
|
||||
|
||||
@node realpath invocation
|
||||
@section @command{realpath}: Print the resolved file name.
|
||||
|
||||
@pindex realpath
|
||||
@cindex file names, canonicalization
|
||||
@cindex symlinks, resolution
|
||||
@cindex canonical file name
|
||||
@cindex canonicalize a file name
|
||||
@pindex realpath
|
||||
@findex realpath
|
||||
|
||||
@command{realpath} expands all symbolic links and resolves references to
|
||||
@samp{/./}, @samp{/../} and extra @samp{/} characters. By default,
|
||||
all but the last component of the specified files must exist. Synopsis:
|
||||
|
||||
@example
|
||||
realpath [@var{option}]@dots{} @var{file}@dots{}
|
||||
@end example
|
||||
|
||||
The program accepts the following options. Also see @ref{Common options}.
|
||||
|
||||
@table @samp
|
||||
|
||||
@item -e
|
||||
@itemx --canonicalize-existing
|
||||
@opindex -e
|
||||
@opindex --canonicalize-existing
|
||||
Ensure that all components of the specified file names exist.
|
||||
If any component is missing or unavailable, @command{realpath} will output
|
||||
a diagnostic unless the @option{-q} option is specified, and exit with a
|
||||
nonzero exit code. A trailing slash requires that the name resolve to a
|
||||
directory.
|
||||
|
||||
@item -m
|
||||
@itemx --canonicalize-missing
|
||||
@opindex -m
|
||||
@opindex --canonicalize-missing
|
||||
If any component of a specified file name is missing or unavailable,
|
||||
treat it as a directory.
|
||||
|
||||
@item -L
|
||||
@itemx --logical
|
||||
@opindex -L
|
||||
@opindex --logical
|
||||
Symbolic links are resolved in the specified file names,
|
||||
but they are resolved after any subsequent @samp{..} components are processed.
|
||||
|
||||
@item -P
|
||||
@itemx --physical
|
||||
@opindex -P
|
||||
@opindex --physical
|
||||
Symbolic links are resolved in the specified file names,
|
||||
and they are resolved before any subsequent @samp{..} components are processed.
|
||||
This is the default mode of operation.
|
||||
|
||||
@item -q
|
||||
@itemx --quiet
|
||||
@opindex -q
|
||||
@opindex --quiet
|
||||
Suppress diagnostic messages for specified file names.
|
||||
|
||||
@item -s
|
||||
@itemx --strip
|
||||
@itemx --no-symlinks
|
||||
@opindex -s
|
||||
@opindex --strip
|
||||
@opindex --no-symlinks
|
||||
Do not resolve symbolic links. Only resolve references to
|
||||
@samp{/./}, @samp{/../} and remove extra @samp{/} characters.
|
||||
When combined with the @option{-m} option, realpath operates
|
||||
only on the file name, and does not touch any actual file.
|
||||
|
||||
@item -z
|
||||
@itemx --zero
|
||||
@opindex -z
|
||||
@opindex --zero
|
||||
Separate output items with @sc{nul} characters.
|
||||
|
||||
@itemx --relative-to=@var{file}
|
||||
@opindex --relative-to
|
||||
@cindex relpath
|
||||
Print the resolved file names relative to the specified file.
|
||||
Note this option honors the @option{-m} and @option{-e} options
|
||||
pertaining to file existence.
|
||||
|
||||
@itemx --relative-base=@var{base}
|
||||
@opindex --relative-base
|
||||
This option is valid when used with @option{--relative-to}, and will restrict
|
||||
the output of @option{--relative-to} so that relative names are output,
|
||||
only when @var{file}s are descendants of @var{base}. Otherwise output the
|
||||
absolute file name. If @option{--relative-to} was not specified, then
|
||||
the descendants of @var{base} are printed relative to @var{base}. If
|
||||
@option{--relative-to} is specified, then that directory must be a
|
||||
descendant of @var{base} for this option to have an effect.
|
||||
Note: this option honors the @option{-m} and @option{-e}
|
||||
options pertaining to file existence. For example:
|
||||
|
||||
@example
|
||||
realpath --relative-to=/usr /tmp /usr/bin
|
||||
@result{} ../tmp
|
||||
@result{} bin
|
||||
realpath --relative-base=/usr /tmp /usr/bin
|
||||
@result{} /tmp
|
||||
@result{} bin
|
||||
@end example
|
||||
|
||||
@end table
|
||||
|
||||
@cindex exit status of @command{realpath}
|
||||
Exit status:
|
||||
|
||||
@display
|
||||
0 if all file names were printed without issue.
|
||||
1 otherwise.
|
||||
@end display
|
||||
|
||||
|
||||
@node Working context
|
||||
@chapter Working context
|
||||
|
||||
@@ -13952,7 +14238,6 @@ This is a @acronym{GNU} extension.
|
||||
locale's 12-hour clock time (e.g., @samp{11:11:04 PM})
|
||||
@item %R
|
||||
24-hour hour and minute. Same as @samp{%H:%M}.
|
||||
This is a @acronym{GNU} extension.
|
||||
@item %s
|
||||
@cindex epoch, seconds since
|
||||
@cindex seconds since the epoch
|
||||
@@ -13976,7 +14261,6 @@ appropriate for the current time, using the time zone rules specified
|
||||
by the @env{TZ} environment variable.
|
||||
The time (and optionally, the time zone rules) can be overridden
|
||||
by the @option{--date} option.
|
||||
This is a @acronym{GNU} extension.
|
||||
@item %:z
|
||||
@w{@acronym{RFC} 3339/@acronym{ISO} 8601} style numeric time zone with
|
||||
@samp{:} (e.g., @samp{-06:00} or @samp{+05:30}), or nothing if no time
|
||||
@@ -14033,14 +14317,12 @@ full date in @acronym{ISO} 8601 format; same as @samp{%Y-%m-%d}.
|
||||
This is a good choice for a date format, as it is standard and
|
||||
is easy to sort in the usual case where years are in the range
|
||||
0000@dots{}9999.
|
||||
This is a @acronym{GNU} extension.
|
||||
@item %g
|
||||
year corresponding to the @acronym{ISO} week number, but without the century
|
||||
(range @samp{00} through @samp{99}). This has the same format and value
|
||||
as @samp{%y}, except that if the @acronym{ISO} week number (see
|
||||
@samp{%V}) belongs
|
||||
to the previous or next year, that year is used instead.
|
||||
This is a @acronym{GNU} extension.
|
||||
@item %G
|
||||
year corresponding to the @acronym{ISO} week number. This has the
|
||||
same format and value as @samp{%Y}, except that if the @acronym{ISO}
|
||||
@@ -14050,7 +14332,6 @@ instead.
|
||||
It is normally useful only if @samp{%V} is also used;
|
||||
for example, the format @samp{%G-%m-%d} is probably a mistake,
|
||||
since it combines the ISO week number year with the conventional month and day.
|
||||
This is a @acronym{GNU} extension.
|
||||
@item %h
|
||||
same as @samp{%b}
|
||||
@item %j
|
||||
@@ -14188,11 +14469,9 @@ is available, it is ignored.
|
||||
If given an argument that does not start with @samp{+}, @command{date} sets
|
||||
the system clock to the date and time specified by that argument (as
|
||||
described below). You must have appropriate privileges to set the
|
||||
system clock. The @option{--date} and @option{--set} options may not be
|
||||
used with such an argument. The @option{--universal} option may be used
|
||||
with such an argument to indicate that the specified date and time are
|
||||
relative to Coordinated Universal Time rather than to the local time
|
||||
zone.
|
||||
system clock. Note for changes to persist across a reboot, the
|
||||
hardware clock may need to be updated from the system clock, which
|
||||
might not happen automatically on your system.
|
||||
|
||||
The argument must consist entirely of digits, which have the following
|
||||
meaning:
|
||||
@@ -14214,7 +14493,10 @@ last two digits of year (optional)
|
||||
second (optional)
|
||||
@end table
|
||||
|
||||
The @option{--set} option also sets the system clock; see the next section.
|
||||
Note, the @option{--date} and @option{--set} options may not be used with an
|
||||
argument in the above format. The @option{--universal} option may be used
|
||||
with such an argument to indicate that the specified date and time are
|
||||
relative to Coordinated Universal Time rather than to the local time zone.
|
||||
|
||||
|
||||
@node Options for date
|
||||
@@ -14262,6 +14544,34 @@ input. This is useful when you have many dates to process, because the
|
||||
system overhead of starting up the @command{date} executable many times can
|
||||
be considerable.
|
||||
|
||||
@item -I[@var{timespec}]
|
||||
@itemx --iso-8601[=@var{timespec}]
|
||||
@opindex -I[@var{timespec}]
|
||||
@opindex --iso-8601[=@var{timespec}]
|
||||
Display the date using the @acronym{ISO} 8601 format, @samp{%Y-%m-%d}.
|
||||
|
||||
The argument @var{timespec} specifies the number of additional
|
||||
terms of the time to include. It can be one of the following:
|
||||
@table @samp
|
||||
@item auto
|
||||
Print just the date. This is the default if @var{timespec} is omitted.
|
||||
|
||||
@item hours
|
||||
Append the hour of the day to the date.
|
||||
|
||||
@item minutes
|
||||
Append the hours and minutes.
|
||||
|
||||
@item seconds
|
||||
Append the hours, minutes and seconds.
|
||||
|
||||
@item ns
|
||||
Append the hours, minutes, seconds and nanoseconds.
|
||||
@end table
|
||||
|
||||
If showing any time terms, then include the time zone using the format
|
||||
@samp{%z}.
|
||||
|
||||
@item -r @var{file}
|
||||
@itemx --reference=@var{file}
|
||||
@opindex -r
|
||||
@@ -14327,6 +14637,7 @@ This is equivalent to the format @samp{%Y-%m-%d %H:%M:%S.%N%:z}.
|
||||
@opindex -s
|
||||
@opindex --set
|
||||
Set the date and time to @var{datestr}. See @option{-d} above.
|
||||
See also @ref{Setting the time}.
|
||||
|
||||
@item -u
|
||||
@itemx --utc
|
||||
@@ -14583,7 +14894,7 @@ parsed reliably. In the following example, @var{release} is
|
||||
|
||||
@smallexample
|
||||
uname -a
|
||||
@result{} Linux dum 2.2.18 #4 SMP Tue Jun 5 11:24:08 PDT 2001 i686@c
|
||||
@result{} Linux dumdum 2.2.18 #4 SMP Tue Jun 5 11:24:08 PDT 2001 i686@c
|
||||
unknown unknown GNU/Linux
|
||||
@end smallexample
|
||||
|
||||
@@ -15693,7 +16004,7 @@ the @var{command}.
|
||||
@opindex --signal
|
||||
Send this @var{signal} to @var{command} on timeout, rather than the
|
||||
default @samp{TERM} signal. @var{signal} may be a name like @samp{HUP}
|
||||
or a number. Also see @xref{Signal specifications}.
|
||||
or a number. @xref{Signal specifications}.
|
||||
@end table
|
||||
|
||||
@cindex time units
|
||||
@@ -15716,6 +16027,7 @@ Exit status:
|
||||
125 if @command{timeout} itself fails
|
||||
126 if @var{command} is found but cannot be invoked
|
||||
127 if @var{command} cannot be found
|
||||
137 if @var{command} is sent the KILL(9) signal (128+9)
|
||||
the exit status of @var{command} otherwise
|
||||
@end display
|
||||
|
||||
@@ -15800,8 +16112,9 @@ number like @samp{1}, or an exit status of a process terminated by the
|
||||
signal. A signal name can be given in canonical form or prefixed by
|
||||
@samp{SIG}. The case of the letters is ignored, except for the
|
||||
@option{-@var{signal}} option which must use upper case to avoid
|
||||
ambiguity with lower case option letters. For a list of supported
|
||||
signal names and numbers see @xref{Signal specifications}.
|
||||
ambiguity with lower case option letters.
|
||||
@xref{Signal specifications}, for a list of supported
|
||||
signal names and numbers.
|
||||
|
||||
@node Delaying
|
||||
@chapter Delaying
|
||||
@@ -15903,8 +16216,10 @@ Factoring the product of the eighth and ninth Mersenne primes
|
||||
takes about 30 milliseconds of CPU time on a 2.2 GHz Athlon.
|
||||
|
||||
@example
|
||||
M8=`echo 2^31-1|bc` ; M9=`echo 2^61-1|bc`
|
||||
/usr/bin/time -f '%U' factor $(echo "$M8 * $M9" | bc)
|
||||
M8=$(echo 2^31-1|bc)
|
||||
M9=$(echo 2^61-1|bc)
|
||||
n=$(echo "$M8 * $M9" | bc)
|
||||
/usr/bin/time -f %U factor $n
|
||||
4951760154835678088235319297: 2147483647 2305843009213693951
|
||||
0.03
|
||||
@end example
|
||||
@@ -16004,7 +16319,7 @@ If you want hexadecimal integer output, you can use @command{printf}
|
||||
to perform the conversion:
|
||||
|
||||
@example
|
||||
$ printf '%x\n' `seq 1048575 1024 1050623`
|
||||
$ printf '%x\n' $(seq 1048575 1024 1050623)
|
||||
fffff
|
||||
1003ff
|
||||
1007ff
|
||||
@@ -16064,7 +16379,7 @@ outputs 1.0000000000000000007 twice and skips 1.0000000000000000008.
|
||||
|
||||
An earlier version of this chapter appeared in
|
||||
@uref{http://www.linuxjournal.com/article.php?sid=2762, the
|
||||
@cite{What's GNU?} column of @cite{Linux Journal}, 2 (June, 1994)}.
|
||||
@cite{What's GNU?} column of the June 1994 @cite{Linux Journal}}.
|
||||
It was written by Arnold Robbins.
|
||||
|
||||
@menu
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
@c File mode bits
|
||||
|
||||
@c Copyright (C) 1994, 1996, 1999-2001, 2003-2006, 2008-2011 Free Software
|
||||
@c Foundation, Inc.
|
||||
@c Copyright (C) 1994-2012 Free Software Foundation, Inc.
|
||||
|
||||
@c Permission is granted to copy, distribute and/or modify this document
|
||||
@c under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
@@ -18,6 +17,7 @@ symbolic form or as an octal number.
|
||||
* Mode Structure:: Structure of file mode bits.
|
||||
* Symbolic Modes:: Mnemonic representation of file mode bits.
|
||||
* Numeric Modes:: File mode bits as octal numbers.
|
||||
* Operator Numeric Modes:: ANDing, ORing, and setting modes octally.
|
||||
* Directory Setuid and Setgid:: Set-user-ID and set-group-ID on directories.
|
||||
@end menu
|
||||
|
||||
@@ -496,13 +496,16 @@ alternative to giving a symbolic mode, you can give an octal (base 8)
|
||||
number that represents the mode.
|
||||
This number is always interpreted in octal; you do not have to add a
|
||||
leading @samp{0}, as you do in C. Mode @samp{0055} is the same as
|
||||
mode @samp{55}.
|
||||
mode @samp{55}. (However, modes of five digits or more, such as
|
||||
@samp{00055}, are sometimes special. @xref{Directory Setuid and Setgid}.)
|
||||
|
||||
A numeric mode is usually shorter than the corresponding symbolic
|
||||
mode, but it is limited in that normally it cannot take into account the
|
||||
previous file mode bits; it can only set them absolutely.
|
||||
(As discussed in the next section, the set-user-ID and set-group-ID
|
||||
bits of directories are an exception to this general limitation.)
|
||||
The set-user-ID and set-group-ID bits of directories are an exception
|
||||
to this general limitation. @xref{Directory Setuid and Setgid}.
|
||||
Also, operator numeric modes can take previous file mode bits into
|
||||
account. @xref{Operator Numeric Modes}.
|
||||
|
||||
The permissions granted to the user,
|
||||
to other users in the file's group,
|
||||
@@ -542,6 +545,26 @@ For example, numeric mode @samp{4755} corresponds to symbolic mode
|
||||
@samp{ug=rw,o=r}. Numeric mode @samp{0} corresponds to symbolic mode
|
||||
@samp{a=}.
|
||||
|
||||
@node Operator Numeric Modes
|
||||
@section Operator Numeric Modes
|
||||
|
||||
An operator numeric mode is a numeric mode that is prefixed by a
|
||||
@samp{-}, @samp{+}, or @samp{=} operator, which has the same
|
||||
interpretation as in symbolic modes. For example, @samp{+440} enables
|
||||
read permission for the file's owner and group, @samp{-1} disables
|
||||
execute permission for other users, and @samp{=600} clears all
|
||||
permissions except for enabling read-write permissions for the file's
|
||||
owner. Operator numeric modes can be combined with symbolic modes by
|
||||
separating them with a comma; for example, @samp{=0,u+r} clears all
|
||||
permissions except for enabling read permission for the file's owner.
|
||||
|
||||
The commands @samp{chmod =755 @var{dir}} and @samp{chmod 755
|
||||
@var{dir}} differ in that the former clears the directory @var{dir}'s
|
||||
setuid and setgid bits, whereas the latter preserves them.
|
||||
@xref{Directory Setuid and Setgid}.
|
||||
|
||||
Operator numeric modes are a @acronym{GNU} extension.
|
||||
|
||||
@node Directory Setuid and Setgid
|
||||
@section Directories and the Set-User-ID and Set-Group-ID Bits
|
||||
|
||||
@@ -560,8 +583,10 @@ bits of directories. If commands like @command{chmod} and
|
||||
mechanisms would be less convenient and it would be harder to share
|
||||
files. Therefore, a command like @command{chmod} does not affect the
|
||||
set-user-ID or set-group-ID bits of a directory unless the user
|
||||
specifically mentions them in a symbolic mode, or sets them in
|
||||
a numeric mode. For example, on systems that support
|
||||
specifically mentions them in a symbolic mode, or uses an operator
|
||||
numeric mode such as @samp{=755}, or sets them in a numeric mode, or
|
||||
clears them in a numeric mode that has five or more octal digits.
|
||||
For example, on systems that support
|
||||
set-group-ID inheritance:
|
||||
|
||||
@example
|
||||
@@ -583,22 +608,32 @@ explicitly in the symbolic or numeric modes, e.g.:
|
||||
@example
|
||||
# These commands try to set the set-user-ID
|
||||
# and set-group-ID bits of the subdirectories.
|
||||
mkdir G H
|
||||
mkdir G
|
||||
chmod 6755 G
|
||||
chmod u=rwx,go=rx,a+s H
|
||||
mkdir -m 6755 I
|
||||
chmod +6000 G
|
||||
chmod u=rwx,go=rx,a+s G
|
||||
mkdir -m 6755 H
|
||||
mkdir -m +6000 I
|
||||
mkdir -m u=rwx,go=rx,a+s J
|
||||
@end example
|
||||
|
||||
If you want to try to clear these bits, you must mention them
|
||||
explicitly in a symbolic mode, e.g.:
|
||||
explicitly in a symbolic mode, or use an operator numeric mode, or
|
||||
specify a numeric mode with five or more octal digits, e.g.:
|
||||
|
||||
@example
|
||||
# This command tries to clear the set-user-ID
|
||||
# These commands try to clear the set-user-ID
|
||||
# and set-group-ID bits of the directory D.
|
||||
chmod a-s D
|
||||
chmod -6000 D
|
||||
chmod =755 D
|
||||
chmod 00755 D
|
||||
@end example
|
||||
|
||||
This behavior is a @acronym{GNU} extension. Portable scripts should
|
||||
not rely on requests to set or clear these bits on directories, as
|
||||
@acronym{POSIX} allows implementations to ignore these requests.
|
||||
The @acronym{GNU} behavior with numeric modes of four or fewer digits
|
||||
is intended for scripts portable to systems that preserve these bits;
|
||||
the behavior with numeric modes of five or more digits is for scripts
|
||||
portable to systems that do not preserve the bits.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Declare an access pattern hint for files.
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Declare an access pattern hint for files.
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Barebones heap implementation supporting only insert and pop.
|
||||
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Barebones heap implementation supporting only insert and pop.
|
||||
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Align/Truncate a string in a given screen width
|
||||
Copyright (C) 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2009-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Align/Truncate a string in a given screen width
|
||||
Copyright (C) 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2009-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Bob Jenkins's cryptographic random number generators, ISAAC and ISAAC64.
|
||||
|
||||
Copyright (C) 1999-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999-2012 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997, 1998, 1999 Colin Plumb.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Bob Jenkins's cryptographic random number generators, ISAAC and ISAAC64.
|
||||
|
||||
Copyright (C) 1999-2005, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999-2012 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997, 1998, 1999 Colin Plumb.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Generate random integers.
|
||||
|
||||
Copyright (C) 2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Generate random integers.
|
||||
|
||||
Copyright (C) 2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Generate random permutations.
|
||||
|
||||
Copyright (C) 2006-2007, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Generate buffers of random data.
|
||||
|
||||
Copyright (C) 2006, 2008-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -17,6 +17,9 @@
|
||||
|
||||
/* Written by Paul Eggert. */
|
||||
|
||||
/* FIXME: Improve performance by adding support for the RDRAND machine
|
||||
instruction if available (e.g., Ivy Bridge processors). */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "randread.h"
|
||||
@@ -26,6 +29,7 @@
|
||||
#include <exitfail.h>
|
||||
#include <fcntl.h>
|
||||
#include <quotearg.h>
|
||||
#include <stdalign.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
@@ -59,7 +63,6 @@
|
||||
#if _STRING_ARCH_unaligned
|
||||
# define ALIGNED_POINTER(ptr, type) true
|
||||
#else
|
||||
# define alignof(type) offsetof (struct { char c; type x; }, x)
|
||||
# define ALIGNED_POINTER(ptr, type) ((size_t) (ptr) % alignof (type) == 0)
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Generate buffers of random data.
|
||||
|
||||
Copyright (C) 2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2006-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -11,7 +11,7 @@ index d5968bd..4926676 100644
|
||||
char *_Restrict_ errbuf, size_t errbuf_size)
|
||||
#endif
|
||||
{
|
||||
@@ -1383,7 +1383,7 @@ calc_first (void *extra, bin_tree_t *node)
|
||||
@@ -1415,7 +1415,7 @@ calc_first (void *extra, bin_tree_t *node)
|
||||
|
||||
/* Pass 2: compute NEXT on the tree. Preorder visit. */
|
||||
static reg_errcode_t
|
||||
@@ -20,17 +20,20 @@ index d5968bd..4926676 100644
|
||||
{
|
||||
switch (node->token.type)
|
||||
{
|
||||
@@ -2744,7 +2744,8 @@ static reg_errcode_t
|
||||
@@ -2792,8 +2792,10 @@ build_range_exp (const reg_syntax_t synt
|
||||
static reg_errcode_t
|
||||
internal_function
|
||||
build_collating_symbol (bitset_t sbcset,
|
||||
# ifdef RE_ENABLE_I18N
|
||||
- re_charset_t *mbcset, Idx *coll_sym_alloc,
|
||||
+ re_charset_t *mbcset _UNUSED_PARAMETER_,
|
||||
-build_collating_symbol (bitset_t sbcset, re_charset_t *mbcset,
|
||||
- Idx *coll_sym_alloc, const unsigned char *name)
|
||||
+build_collating_symbol (bitset_t sbcset,
|
||||
+ re_charset_t *mbcset _UNUSED_PARAMETER_,
|
||||
+ Idx *coll_sym_alloc _UNUSED_PARAMETER_,
|
||||
# endif
|
||||
const unsigned char *name)
|
||||
{
|
||||
@@ -3323,7 +3324,8 @@ parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa, re_token_t *token,
|
||||
+ const unsigned char *name)
|
||||
# else /* not RE_ENABLE_I18N */
|
||||
build_collating_symbol (bitset_t sbcset, const unsigned char *name)
|
||||
# endif /* not RE_ENABLE_I18N */
|
||||
@@ -3377,7 +3379,8 @@ parse_bracket_exp (re_string_t *regexp,
|
||||
|
||||
static reg_errcode_t
|
||||
parse_bracket_element (bracket_elem_t *elem, re_string_t *regexp,
|
||||
@@ -40,19 +43,20 @@ index d5968bd..4926676 100644
|
||||
reg_syntax_t syntax, bool accept_hyphen)
|
||||
{
|
||||
#ifdef RE_ENABLE_I18N
|
||||
@@ -3410,8 +3412,9 @@ parse_bracket_symbol (bracket_elem_t *elem, re_string_t *regexp,
|
||||
@@ -3464,8 +3467,10 @@ parse_bracket_symbol (bracket_elem_t *elem, re_string_t *regexp,
|
||||
|
||||
static reg_errcode_t
|
||||
#ifdef RE_ENABLE_I18N
|
||||
-build_equiv_class (bitset_t sbcset, re_charset_t *mbcset,
|
||||
- Idx *equiv_class_alloc, const unsigned char *name)
|
||||
+build_equiv_class (bitset_t sbcset, re_charset_t *mbcset _UNUSED_PARAMETER_,
|
||||
+build_equiv_class (bitset_t sbcset,
|
||||
+ re_charset_t *mbcset _UNUSED_PARAMETER_,
|
||||
+ Idx *equiv_class_alloc _UNUSED_PARAMETER_,
|
||||
+ const unsigned char *name)
|
||||
#else /* not RE_ENABLE_I18N */
|
||||
build_equiv_class (bitset_t sbcset, const unsigned char *name)
|
||||
#endif /* not RE_ENABLE_I18N */
|
||||
@@ -3816,7 +3819,7 @@ free_token (re_token_t *node)
|
||||
@@ -3869,7 +3874,7 @@ free_token (re_token_t *node)
|
||||
and its children. */
|
||||
|
||||
static reg_errcode_t
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* root-dev-ino.c -- get the device and inode numbers for `/'.
|
||||
Copyright (C) 2003, 2005-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
/* root-dev-ino.c -- get the device and inode numbers for '/'.
|
||||
Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
/* Call lstat to get the device and inode numbers for `/'.
|
||||
/* Call lstat to get the device and inode numbers for '/'.
|
||||
Upon failure, return NULL. Otherwise, set the members of
|
||||
*ROOT_D_I accordingly and return ROOT_D_I. */
|
||||
struct dev_ino *
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Root device and inode number checking.
|
||||
|
||||
Copyright (C) 2003, 2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#serial 3
|
||||
dnl Copyright (C) 2005-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
dnl Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
|
||||
@@ -17,7 +17,7 @@ lib_SOURCES += heap.c heap.h
|
||||
Include:
|
||||
"heap.h"
|
||||
|
||||
License
|
||||
License:
|
||||
GPL
|
||||
|
||||
Maintainer:
|
||||
|
||||
@@ -17,7 +17,7 @@ lib_SOURCES += randint.c randint.h
|
||||
Include:
|
||||
"randint.h"
|
||||
|
||||
License
|
||||
License:
|
||||
GPL
|
||||
|
||||
Maintainer:
|
||||
|
||||
@@ -18,7 +18,7 @@ lib_SOURCES += randperm.c randperm.h
|
||||
Include:
|
||||
"randperm.h"
|
||||
|
||||
License
|
||||
License:
|
||||
GPL
|
||||
|
||||
Maintainer:
|
||||
|
||||
@@ -14,6 +14,7 @@ inline
|
||||
fopen-safer
|
||||
gettimeofday
|
||||
quotearg
|
||||
stdalign
|
||||
stdbool
|
||||
stdint
|
||||
unlocked-io
|
||||
@@ -27,7 +28,7 @@ lib_SOURCES += randread.c randread.h rand-isaac.c rand-isaac.h
|
||||
Include:
|
||||
"randread.h"
|
||||
|
||||
License
|
||||
License:
|
||||
GPL
|
||||
|
||||
Maintainer:
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
--- /gnulib/modules/tempname 2011-06-17 11:41:46.070787376 +0200
|
||||
+++ gl/modules/tempname 2011-06-17 11:43:49.571154551 +0200
|
||||
@@ -1,2 +1,2 @@
|
||||
--- tempname 2011-10-27 18:55:14.672722002 +0200
|
||||
+++ tempname 2011-10-27 18:55:25.200999149 +0200
|
||||
@@ -1,5 +1,5 @@
|
||||
Description:
|
||||
-gen_tempname() function: create a private temporary file or directory.
|
||||
+gen_tempname, gen_tempname_len: create a private temporary file or directory.
|
||||
|
||||
Files:
|
||||
lib/tempname.c
|
||||
@@ -10,6 +10,8 @@ Depends-on:
|
||||
extensions
|
||||
@@ -11,6 +11,8 @@ extensions
|
||||
fcntl-h
|
||||
gettimeofday
|
||||
lstat
|
||||
+randint
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Test that fadvise works as advertised.
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Test that mbsalign works as advertised.
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Test the ISAAC or ISAAC64 pseudorandom number generator.
|
||||
|
||||
Copyright (C) 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2010-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
2
gnulib
2
gnulib
Submodule gnulib updated: da1717b7f9...a3a049672d
@@ -2729,7 +2729,7 @@
|
||||
(local_zone): Accumulate dsts_seen rather than relying on tm_isdst
|
||||
not being INT_MAX.
|
||||
(get_date): Initialize dsts_seen, and check that it doesn't go over 1.
|
||||
Use pc_rels_seen to decide whther a date is absolute.
|
||||
Use pc_rels_seen to decide whether a date is absolute.
|
||||
|
||||
* getdate.y (number): Don't overwrite year.
|
||||
(get_date): Initialize pc.year.digits to 0, not 4, to enable above
|
||||
@@ -8746,7 +8746,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2000-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2000-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
## Makefile for gnulib/lib -*-Makefile-*-
|
||||
|
||||
# Copyright (C) 1995-2007, 2009-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1995-2012 Free Software Foundation, Inc.
|
||||
|
||||
## This program is free software: you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License as published by
|
||||
@@ -15,6 +15,17 @@
|
||||
## You should have received a copy of the GNU General Public License
|
||||
## along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
AM_CFLAGS =
|
||||
AM_CPPFLAGS =
|
||||
BUILT_SOURCES =
|
||||
CLEANFILES =
|
||||
EXTRA_DIST =
|
||||
MAINTAINERCLEANFILES =
|
||||
MOSTLYCLEANDIRS =
|
||||
MOSTLYCLEANFILES =
|
||||
SUFFIXES =
|
||||
noinst_LIBRARIES =
|
||||
|
||||
include gnulib.mk
|
||||
|
||||
AM_CFLAGS += $(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* buffer-lcm.c - compute a good buffer size for dealing with two files
|
||||
|
||||
Copyright (C) 2002, 2005, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,134 +0,0 @@
|
||||
/* euidaccess-stat -- check if effective user id can access lstat'd file
|
||||
This function is probably useful only for choosing whether to issue
|
||||
a prompt in an implementation of POSIX-specified rm.
|
||||
|
||||
Copyright (C) 2005-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* Adapted for use in GNU remove.c by Jim Meyering. */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "euidaccess-stat.h"
|
||||
|
||||
#include <unistd.h>
|
||||
|
||||
#include "stat-macros.h"
|
||||
|
||||
/* Return true if the current user has permission of type MODE
|
||||
on the file from which stat buffer *ST was obtained, ignoring
|
||||
ACLs, attributes, `read-only'ness, etc...
|
||||
Otherwise, return false.
|
||||
|
||||
Like the reentrant version of euidaccess, but starting with
|
||||
a stat buffer rather than a file name. Hence, this function
|
||||
never calls access or accessx, and doesn't take into account
|
||||
whether the file has ACLs or other attributes, or resides on
|
||||
a read-only file system. */
|
||||
|
||||
bool
|
||||
euidaccess_stat (struct stat const *st, int mode)
|
||||
{
|
||||
uid_t euid;
|
||||
unsigned int granted;
|
||||
|
||||
/* Convert the mode to traditional form, clearing any bogus bits. */
|
||||
if (R_OK == 4 && W_OK == 2 && X_OK == 1 && F_OK == 0)
|
||||
mode &= 7;
|
||||
else
|
||||
mode = ((mode & R_OK ? 4 : 0)
|
||||
+ (mode & W_OK ? 2 : 0)
|
||||
+ (mode & X_OK ? 1 : 0));
|
||||
|
||||
if (mode == 0)
|
||||
return true; /* The file exists. */
|
||||
|
||||
euid = geteuid ();
|
||||
|
||||
/* The super-user can read and write any file, and execute any file
|
||||
that anyone can execute. */
|
||||
if (euid == 0 && ((mode & X_OK) == 0
|
||||
|| (st->st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))))
|
||||
return true;
|
||||
|
||||
/* Convert the file's permission bits to traditional form. */
|
||||
if ( S_IRUSR == (4 << 6)
|
||||
&& S_IWUSR == (2 << 6)
|
||||
&& S_IXUSR == (1 << 6)
|
||||
&& S_IRGRP == (4 << 3)
|
||||
&& S_IWGRP == (2 << 3)
|
||||
&& S_IXGRP == (1 << 3)
|
||||
&& S_IROTH == (4 << 0)
|
||||
&& S_IWOTH == (2 << 0)
|
||||
&& S_IXOTH == (1 << 0))
|
||||
granted = st->st_mode;
|
||||
else
|
||||
granted = ( (st->st_mode & S_IRUSR ? 4 << 6 : 0)
|
||||
+ (st->st_mode & S_IWUSR ? 2 << 6 : 0)
|
||||
+ (st->st_mode & S_IXUSR ? 1 << 6 : 0)
|
||||
+ (st->st_mode & S_IRGRP ? 4 << 3 : 0)
|
||||
+ (st->st_mode & S_IWGRP ? 2 << 3 : 0)
|
||||
+ (st->st_mode & S_IXGRP ? 1 << 3 : 0)
|
||||
+ (st->st_mode & S_IROTH ? 4 << 0 : 0)
|
||||
+ (st->st_mode & S_IWOTH ? 2 << 0 : 0)
|
||||
+ (st->st_mode & S_IXOTH ? 1 << 0 : 0));
|
||||
|
||||
if (euid == st->st_uid)
|
||||
granted >>= 6;
|
||||
else
|
||||
{
|
||||
gid_t egid = getegid ();
|
||||
if (egid == st->st_gid || group_member (st->st_gid))
|
||||
granted >>= 3;
|
||||
}
|
||||
|
||||
if ((mode & ~granted) == 0)
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
#ifdef TEST
|
||||
# include <errno.h>
|
||||
# include <stdio.h>
|
||||
# include <stdlib.h>
|
||||
|
||||
# include "error.h"
|
||||
# define _(msg) msg
|
||||
|
||||
char *program_name;
|
||||
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
char *file;
|
||||
int mode;
|
||||
bool ok;
|
||||
struct stat st;
|
||||
|
||||
program_name = argv[0];
|
||||
if (argc < 3)
|
||||
abort ();
|
||||
file = argv[1];
|
||||
mode = atoi (argv[2]);
|
||||
if (lstat (file, &st) != 0)
|
||||
error (EXIT_FAILURE, errno, _("cannot stat %s"), file);
|
||||
|
||||
ok = euidaccess_stat (&st, mode);
|
||||
printf ("%s: %s\n", file, ok ? "y" : "n");
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
@@ -1,5 +0,0 @@
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
bool euidaccess_stat (struct stat const *st, int mode);
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Invoke open, but return either a desired file descriptor or -1.
|
||||
|
||||
Copyright (C) 2005-2006, 2008-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -26,7 +26,7 @@
|
||||
#include <unistd.h>
|
||||
|
||||
/* Open a file to a particular file descriptor. This is like standard
|
||||
`open', except it always returns DESIRED_FD if successful. */
|
||||
'open', except it always returns DESIRED_FD if successful. */
|
||||
|
||||
int
|
||||
fd_reopen (int desired_fd, char const *file, int flags, mode_t mode)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Invoke open, but return either a desired file descriptor or -1.
|
||||
|
||||
Copyright (C) 2005, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Compare integer strings.
|
||||
|
||||
Copyright (C) 2005-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
/* Compare numeric strings. This is an internal include file.
|
||||
|
||||
Copyright (C) 1988, 1991-1993, 1995-1996, 1998-2000, 2003-2006, 2009-2011
|
||||
Free Software Foundation, Inc.
|
||||
Copyright (C) 1988-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@@ -34,7 +33,7 @@
|
||||
- It's typically faster.
|
||||
POSIX says that only '0' through '9' are digits. Prefer ISDIGIT to
|
||||
isdigit unless it's important to use the locale's definition
|
||||
of `digit' even when the host does not conform to POSIX. */
|
||||
of 'digit' even when the host does not conform to POSIX. */
|
||||
# define ISDIGIT(c) ((unsigned int) (c) - '0' <= 9)
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* Compare numeric strings.
|
||||
|
||||
Copyright (C) 2005-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
# Exercise chdir-long's sample main program.
|
||||
|
||||
# Copyright (C) 2005-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* xfts.c -- a wrapper for fts_open
|
||||
|
||||
Copyright (C) 2003, 2005-2007, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -5004,7 +5004,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 1997-2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
# boottime.m4 serial 4
|
||||
# Determine whether this system has infrastructure for obtaining the boot time.
|
||||
|
||||
# Copyright (C) 1996, 2000, 2002-2004, 2006, 2008-2011 Free Software
|
||||
# Foundation, Inc.
|
||||
# Copyright (C) 1996-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
#serial 26
|
||||
# Check declarations for this package.
|
||||
|
||||
dnl Copyright (C) 1997-2001, 2003-2006, 2008-2011 Free Software Foundation,
|
||||
dnl Inc.
|
||||
dnl Copyright (C) 1997-2012 Free Software Foundation, Inc.
|
||||
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
# serial 1
|
||||
dnl Copyright (C) 2005, 2009-2011 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
|
||||
AC_DEFUN([gl_EUIDACCESS_STAT],
|
||||
[
|
||||
AC_LIBSOURCES([euidaccess-stat.c, euidaccess-stat.h])
|
||||
AC_LIBOBJ([euidaccess-stat])
|
||||
])
|
||||
@@ -1,6 +1,6 @@
|
||||
# Invoke open, but return either a desired file descriptor or -1.
|
||||
|
||||
dnl Copyright (C) 2005, 2009-2011 Free Software Foundation, Inc.
|
||||
dnl Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Tests for GNU GMP (or any compatible replacement).
|
||||
|
||||
dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
|
||||
dnl Copyright (C) 2008-2012 Free Software Foundation, Inc.
|
||||
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#serial 2
|
||||
dnl Copyright (C) 2007, 2009-2011 Free Software Foundation, Inc.
|
||||
dnl Copyright (C) 2007-2012 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
dnl Misc type-related macros for coreutils.
|
||||
|
||||
# Copyright (C) 1998, 2000-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -71,23 +71,33 @@ AC_DEFUN([coreutils_MACROS],
|
||||
[AC_DEFINE([HAVE_INOTIFY], [1],
|
||||
[Define to 1 if you have usable inotify support.])])
|
||||
|
||||
AC_CHECK_FUNCS_ONCE( \
|
||||
endgrent \
|
||||
endpwent \
|
||||
fchown \
|
||||
fchmod \
|
||||
ftruncate \
|
||||
iswspace \
|
||||
mkfifo \
|
||||
mbrlen \
|
||||
setgroups \
|
||||
sethostname \
|
||||
siginterrupt \
|
||||
sync \
|
||||
sysctl \
|
||||
sysinfo \
|
||||
tcgetpgrp \
|
||||
)
|
||||
AC_CHECK_FUNCS_ONCE([
|
||||
endgrent
|
||||
endpwent
|
||||
fchown
|
||||
fchmod
|
||||
ftruncate
|
||||
iswspace
|
||||
mkfifo
|
||||
mbrlen
|
||||
setgroups
|
||||
sethostname
|
||||
siginterrupt
|
||||
sync
|
||||
sysctl
|
||||
sysinfo
|
||||
tcgetpgrp
|
||||
])
|
||||
|
||||
# These checks are for Interix, to avoid its getgr* functions, in favor
|
||||
# of these replacements. The replacement functions are much more efficient
|
||||
# because they do not query the domain controller for user information
|
||||
# when it is not needed.
|
||||
AC_CHECK_FUNCS_ONCE([
|
||||
getgrgid_nomembers
|
||||
getgrnam_nomembers
|
||||
getgrent_nomembers
|
||||
])
|
||||
|
||||
dnl This can't use AC_REQUIRE; I'm not quite sure why.
|
||||
cu_PREREQ_STAT_PROG
|
||||
@@ -131,7 +141,7 @@ AC_DEFUN([coreutils_MACROS],
|
||||
fi
|
||||
AC_SUBST([LIB_CAP])
|
||||
|
||||
# See if linking `seq' requires -lm.
|
||||
# See if linking 'seq' requires -lm.
|
||||
# It does on nearly every system. The single exception (so far) is
|
||||
# BeOS which has all the math functions in the normal runtime library
|
||||
# and doesn't have a separate math library.
|
||||
@@ -173,16 +183,15 @@ AC_DEFUN([coreutils_MACROS],
|
||||
|
||||
AC_DEFUN([gl_CHECK_ALL_HEADERS],
|
||||
[
|
||||
AC_CHECK_HEADERS_ONCE( \
|
||||
hurd.h \
|
||||
paths.h \
|
||||
priv.h \
|
||||
stropts.h \
|
||||
sys/param.h \
|
||||
sys/resource.h \
|
||||
sys/systeminfo.h \
|
||||
syslog.h \
|
||||
)
|
||||
AC_CHECK_HEADERS_ONCE([
|
||||
hurd.h
|
||||
paths.h
|
||||
priv.h
|
||||
stropts.h
|
||||
sys/param.h
|
||||
sys/systeminfo.h
|
||||
syslog.h
|
||||
])
|
||||
AC_CHECK_HEADERS([sys/sysctl.h], [], [],
|
||||
[AC_INCLUDES_DEFAULT
|
||||
[#if HAVE_SYS_PARAM_H
|
||||
@@ -193,11 +202,6 @@ AC_DEFUN([gl_CHECK_ALL_HEADERS],
|
||||
# This macro must be invoked before any tests that run the compiler.
|
||||
AC_DEFUN([gl_CHECK_ALL_TYPES],
|
||||
[
|
||||
dnl This test must precede tests of compiler characteristics like
|
||||
dnl that for the inline keyword, since it may change the degree to
|
||||
dnl which the compiler supports such features.
|
||||
AC_REQUIRE([AM_C_PROTOTYPES])
|
||||
|
||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_REQUIRE([gl_BIGENDIAN])
|
||||
AC_REQUIRE([AC_C_VOLATILE])
|
||||
|
||||
@@ -2,8 +2,7 @@
|
||||
|
||||
dnl Misc lib-related macros for coreutils.
|
||||
|
||||
# Copyright (C) 1993-1997, 2000-2001, 2003-2006, 2008-2011 Free Software
|
||||
# Foundation, Inc.
|
||||
# Copyright (C) 1993-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#serial 77
|
||||
#serial 78
|
||||
|
||||
dnl We use gl_ for non Autoconf macros.
|
||||
m4_pattern_forbid([^gl_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
|
||||
@@ -7,7 +7,7 @@ m4_pattern_forbid([^gl_[ABCDEFGHIJKLMNOPQRSTUVXYZ]])dnl
|
||||
# directory of the coreutils package.
|
||||
|
||||
|
||||
# Copyright (C) 1998, 2000-2001, 2003-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -36,7 +36,6 @@ AC_DEFUN([gl_PREREQ],
|
||||
# Invoke macros of modules that may migrate into gnulib.
|
||||
# There's no need to list gnulib modules here, since gnulib-tool
|
||||
# handles that; see ../bootstrap.conf.
|
||||
AC_REQUIRE([gl_EUIDACCESS_STAT])
|
||||
AC_REQUIRE([gl_FD_REOPEN])
|
||||
AC_REQUIRE([gl_FUNC_XATTR])
|
||||
AC_REQUIRE([gl_FUNC_XFTS])
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# stat-prog.m4 serial 7
|
||||
# Record the prerequisites of src/stat.c from the coreutils package.
|
||||
|
||||
# Copyright (C) 2002-2004, 2006, 2008-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Compare numeric strings.
|
||||
|
||||
dnl Copyright (C) 2005, 2009-2011 Free Software Foundation, Inc.
|
||||
dnl Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# xattr.m4 - check for Extended Attributes (Linux)
|
||||
# serial 3
|
||||
|
||||
# Copyright (C) 2003, 2008-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2003-2012 Free Software Foundation, Inc.
|
||||
# This file is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#serial 1
|
||||
dnl Copyright (C) 2005, 2009-2011 Free Software Foundation, Inc.
|
||||
dnl Copyright (C) 2005-2012 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
|
||||
1
man/.gitignore
vendored
1
man/.gitignore
vendored
@@ -59,6 +59,7 @@ printf.1
|
||||
ptx.1
|
||||
pwd.1
|
||||
readlink.1
|
||||
realpath.1
|
||||
rm.1
|
||||
rmdir.1
|
||||
seq.1
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Make coreutils man pages. -*-Makefile-*-
|
||||
|
||||
# Copyright (C) 2002-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -19,7 +19,8 @@ dist_man1_MANS = $(MAN)
|
||||
|
||||
man_aux = $(dist_man1_MANS:.1=.x)
|
||||
|
||||
EXTRA_DIST = $(man_aux) $(NO_INSTALL_PROGS_DEFAULT:%=%.x) help2man
|
||||
EXTRA_DIST = $(man_aux) $(NO_INSTALL_PROGS_DEFAULT:%=%.x) help2man \
|
||||
$(NO_INSTALL_PROGS_DEFAULT:%=%.1)
|
||||
MAINTAINERCLEANFILES = $(dist_man1_MANS)
|
||||
|
||||
# Depend on ../.version to get version number changes.
|
||||
@@ -91,6 +92,7 @@ printf.1: $(common_dep) $(srcdir)/printf.x ../src/printf.c
|
||||
ptx.1: $(common_dep) $(srcdir)/ptx.x ../src/ptx.c
|
||||
pwd.1: $(common_dep) $(srcdir)/pwd.x ../src/pwd.c
|
||||
readlink.1: $(common_dep) $(srcdir)/readlink.x ../src/readlink.c
|
||||
realpath.1: $(common_dep) $(srcdir)/realpath.x ../src/realpath.c
|
||||
rm.1: $(common_dep) $(srcdir)/rm.x ../src/rm.c
|
||||
rmdir.1: $(common_dep) $(srcdir)/rmdir.x ../src/rmdir.c
|
||||
runcon.1: $(common_dep) $(srcdir)/runcon.x ../src/runcon.c
|
||||
@@ -141,12 +143,12 @@ $(MAN): $(top_srcdir)/src/system.h
|
||||
SUFFIXES = .x .1
|
||||
|
||||
# Ensure that help2man runs the ../src/ginstall binary as
|
||||
# `install' when creating install.1.
|
||||
# 'install' when creating install.1.
|
||||
# Similarly, ensure that it uses the ../src/[ binary to create test.1.
|
||||
t = $*.td
|
||||
mapped_name = `echo $*|sed 's/^install$$/ginstall/; s/^test$$/[/'`
|
||||
|
||||
# Note the use of $t/$*, rather than just `$*' as in other packages.
|
||||
# Note the use of $t/$*, rather than just '$*' as in other packages.
|
||||
# That is necessary to avoid failures for programs that are also shell built-in
|
||||
# functions like echo, false, printf, pwd.
|
||||
.x.1:
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
'\" Copyright (C) 1998-1999, 2001, 2006-2007, 2009-2011 Free Software
|
||||
'\" Foundation, Inc.
|
||||
'\" Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
'\"
|
||||
'\" This is free software. You may redistribute copies of it under the terms
|
||||
'\" of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
'\" Copyright (C) 1998-1999, 2001, 2006, 2009-2011 Free Software Foundation,
|
||||
'\" Inc.
|
||||
'\" Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
'\"
|
||||
'\" This is free software. You may redistribute copies of it under the terms
|
||||
'\" of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
|
||||
|
||||
2
man/df.x
2
man/df.x
@@ -1,4 +1,4 @@
|
||||
'\" Copyright (C) 1998-1999, 2004, 2009-2011 Free Software Foundation, Inc.
|
||||
'\" Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
'\"
|
||||
'\" This is free software. You may redistribute copies of it under the terms
|
||||
'\" of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
|
||||
|
||||
2
man/du.x
2
man/du.x
@@ -1,4 +1,4 @@
|
||||
'\" Copyright (C) 1998-2000, 2002, 2009-2011 Free Software Foundation, Inc.
|
||||
'\" Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
'\"
|
||||
'\" This is free software. You may redistribute copies of it under the terms
|
||||
'\" of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
|
||||
|
||||
22
man/help2man
22
man/help2man
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/perl -w
|
||||
|
||||
# Generate a short man page from --help and --version output.
|
||||
# Copyright (C) 1997-2004, 2008-2011 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1997-2012 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -72,7 +72,7 @@ Written by Brendan O'Dea <bod@debian.org>
|
||||
EOT
|
||||
|
||||
my $help_info = sprintf _(<<'EOT'), $this_program, $this_program;
|
||||
`%s' generates a man page out of `--help' and `--version' output.
|
||||
'%s' generates a man page out of '--help' and '--version' output.
|
||||
|
||||
Usage: %s [OPTION]... EXECUTABLE
|
||||
|
||||
@@ -81,15 +81,15 @@ Usage: %s [OPTION]... EXECUTABLE
|
||||
-m, --manual=TEXT name of manual (User Commands, ...)
|
||||
-S, --source=TEXT source of program (FSF, Debian, ...)
|
||||
-L, --locale=STRING select locale (default "C")
|
||||
-i, --include=FILE include material from `FILE'
|
||||
-I, --opt-include=FILE include material from `FILE' if it exists
|
||||
-o, --output=FILE send output to `FILE'
|
||||
-i, --include=FILE include material from 'FILE'
|
||||
-I, --opt-include=FILE include material from 'FILE' if it exists
|
||||
-o, --output=FILE send output to 'FILE'
|
||||
-p, --info-page=TEXT name of Texinfo manual
|
||||
-N, --no-info suppress pointer to Texinfo manual
|
||||
--help print this help, then exit
|
||||
--version print version number, then exit
|
||||
|
||||
EXECUTABLE should accept `--help' and `--version' options although
|
||||
EXECUTABLE should accept '--help' and '--version' options although
|
||||
alternatives may be specified using:
|
||||
|
||||
-h, --help-option=STRING help option string
|
||||
@@ -157,7 +157,7 @@ while (@opt_include)
|
||||
my ($inc, $required) = @{shift @opt_include};
|
||||
|
||||
next unless -f $inc or $required;
|
||||
kark N_("%s: can't open `%s' (%s)"), $this_program, $inc, $!
|
||||
kark N_("%s: can't open '%s' (%s)"), $this_program, $inc, $!
|
||||
unless open INC, $inc;
|
||||
|
||||
my $key;
|
||||
@@ -214,7 +214,7 @@ while (@opt_include)
|
||||
|
||||
close INC;
|
||||
|
||||
kark N_("%s: no valid information found in `%s'"), $this_program, $inc
|
||||
kark N_("%s: no valid information found in '%s'"), $this_program, $inc
|
||||
unless $key;
|
||||
}
|
||||
|
||||
@@ -227,7 +227,7 @@ for my $hash (\(%include, %append))
|
||||
# Grab help and version info from executable.
|
||||
my ($help_text, $version_text) = map {
|
||||
join '', map { s/ +$//; expand $_ } `$ARGV[0] $_ 2>/dev/null`
|
||||
or kark N_("%s: can't get `%s' info from %s"), $this_program,
|
||||
or kark N_("%s: can't get '%s' info from %s"), $this_program,
|
||||
$_, $ARGV[0]
|
||||
} $help_option, $version_option;
|
||||
|
||||
@@ -254,7 +254,7 @@ if ($opt_output)
|
||||
# <program> ({GNU,Free} <package>) <version>
|
||||
# <program> - {GNU,Free} <package> <version>
|
||||
#
|
||||
# and seperated from any copyright/author details by a blank line.
|
||||
# and separated from any copyright/author details by a blank line.
|
||||
|
||||
($_, $version_text) = split /\n+/, $version_text, 2;
|
||||
|
||||
@@ -278,7 +278,7 @@ else
|
||||
|
||||
$program =~ s!.*/!!;
|
||||
|
||||
# No info for `info' itself.
|
||||
# No info for 'info' itself.
|
||||
$opt_no_info = 1 if $program eq 'info';
|
||||
|
||||
for ($include{_('NAME')})
|
||||
|
||||
6
man/realpath.x
Normal file
6
man/realpath.x
Normal file
@@ -0,0 +1,6 @@
|
||||
[NAME]
|
||||
realpath \- print the resolved path
|
||||
[DESCRIPTION]
|
||||
.\" Add any additional description here
|
||||
[SEE ALSO]
|
||||
readlink(1), readlink(2), realpath(3)
|
||||
3
man/rm.x
3
man/rm.x
@@ -1,5 +1,4 @@
|
||||
'\" Copyright (C) 1998-1999, 2001, 2003-2004, 2006, 2009-2011 Free Software
|
||||
'\" Foundation, Inc.
|
||||
'\" Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
'\"
|
||||
'\" This is free software. You may redistribute copies of it under the terms
|
||||
'\" of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
'\" Copyright (C) 2009-2011 Free Software Foundation, Inc.
|
||||
'\" Copyright (C) 2009-2012 Free Software Foundation, Inc.
|
||||
'\"
|
||||
'\" This is free software. You may redistribute copies of it under the terms
|
||||
'\" of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
|
||||
|
||||
@@ -4,3 +4,5 @@ timeout \- run a command with a time limit
|
||||
.\" Add any additional description here
|
||||
[SEE ALSO]
|
||||
kill(1)
|
||||
[BUGS]
|
||||
Some platforms don't curently support timeouts beyond 2038
|
||||
|
||||
@@ -8390,7 +8390,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 1998-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -2542,7 +2542,7 @@ Thu Feb 15 23:08:41 1996 Jim Meyering (meyering@na-net.ornl.gov)
|
||||
Mon Feb 12 23:23:25 1996 Jim Meyering (meyering@na-net.ornl.gov)
|
||||
|
||||
* configure.in (LIBOBJS): Split assignment into two statements to
|
||||
accomodate automake-0.29 buglet.
|
||||
accommodate automake-0.29 buglet.
|
||||
|
||||
Update for automake-0.29.
|
||||
* Makefile.am (CONFIG_HEADER): Don't define. Automake now does it.
|
||||
@@ -6158,8 +6158,7 @@ Mon Feb 5 17:29:20 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
|
||||
Foundation, Inc.
|
||||
Copyright (C) 1990-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
* Any time style can be preceded by "posix-"; this causes "ls" to
|
||||
use traditional timestamp format when in the POSIX locale.
|
||||
* The default time style is now posix-long-iso instead of posix-iso.
|
||||
Set TIME_STYLE="posix-iso" to revert to the behavior of 4.1.1 thru 4.1.9.
|
||||
Set TIME_STYLE="posix-iso" to revert to the behavior of 4.1.1 through 4.1.9.
|
||||
* `rm dangling-symlink' doesn't prompt [introduced in 4.1.9]
|
||||
* stat: remove support for --secure/-s option and related %S and %C format specs
|
||||
* stat: rename --link/-l to --dereference/-L.
|
||||
@@ -749,7 +749,7 @@ Major changes in release 3.3:
|
||||
|
||||
========================================================================
|
||||
|
||||
Copyright (C) 1992-2003, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1992-2012 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
|
||||
@@ -4858,8 +4858,7 @@ Thu Nov 17 23:47:26 1994 Jim Meyering (meyering@comco.com)
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 1994-1997, 1999-2002, 2006, 2010-2011 Free Software
|
||||
Foundation, Inc.
|
||||
Copyright (C) 1994-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -269,7 +269,7 @@ Mon Aug 01 21:58:14 1994 Jim Meyering (meyering@comco.com)
|
||||
* date.1: Correct the documentation, too.
|
||||
|
||||
* date.c (main, show_date): For -u, use gmtime instead of relying on
|
||||
localtime's ability to interpret the TZ enviroment variable.
|
||||
localtime's ability to interpret the TZ environment variable.
|
||||
`date -u' failed (by reporting local time) on romp-ibm-bsd and PCs
|
||||
(DOS and OS/2) running emx 0.8h. From R. Bernstein
|
||||
<rocky@watson.ibm.com>.
|
||||
@@ -1362,7 +1362,7 @@ Mon Jul 22 15:21:21 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
||||
|
||||
* stty.c: Use tcflag_t for termios bitmasks.
|
||||
Use speed_t for speeds. Use unsigned long for baud rates to
|
||||
accomodate large values, and support 57600 and 115200 if available.
|
||||
accommodate large values, and support 57600 and 115200 if available.
|
||||
|
||||
* date.c, configure: Instead of SIZE_T_MISSING,
|
||||
define size_t if it's missing.
|
||||
@@ -1706,7 +1706,7 @@ Sat Oct 28 13:20:43 1989 David J. MacKenzie (djm at spiff)
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 1989-1994, 2010-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1989-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -273,7 +273,7 @@ Major changes in release 1.7:
|
||||
|
||||
========================================================================
|
||||
|
||||
Copyright (C) 1992-2003, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1992-2012 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
|
||||
@@ -4869,7 +4869,7 @@ Fri Dec 27 17:29:02 1996 Jim Meyering <meyering@na-net.ornl.gov>
|
||||
this time with duplicates removed.
|
||||
|
||||
* src/pr.c (usage): Break long string literal into two separate
|
||||
printf statements to accomodate default maximum of 2048 characters
|
||||
printf statements to accommodate default maximum of 2048 characters
|
||||
for Irix-4.0.5. Reported by Kaveh Ghazi.
|
||||
|
||||
* Makefile.am (aclocal.m4): No longer depend on acinclude.m4.
|
||||
@@ -5203,7 +5203,7 @@ Fri Oct 4 07:20:37 1996 Jim Meyering <meyering@na-net.ornl.gov>
|
||||
(PACKAGE_VERSION): Remove now-unused variable.
|
||||
|
||||
* lib/long-options.c (parse_long_options): Separate package name
|
||||
and version number to accomodate new --version output requirement.
|
||||
and version number to accommodate new --version output requirement.
|
||||
* lib/long-options.h: Update prototype.
|
||||
|
||||
Thu Oct 3 23:27:31 1996 Jim Meyering <meyering@na-net.ornl.gov>
|
||||
@@ -5245,7 +5245,7 @@ Thu Sep 26 21:02:54 1996 Jim Meyering <meyering@na-net.ornl.gov>
|
||||
removed soon. Using this option can provoke a memory access
|
||||
violation on some systems because of (unavoidable in an efficient
|
||||
implementation) alignment assumptions made by functions in md5.c.
|
||||
md5sum.c could leave the option in and accomodate the alignment
|
||||
md5sum.c could leave the option in and accommodate the alignment
|
||||
restriction, but this option was intended solely for testing, and
|
||||
the tests are now all file-oriented, so it's not necessary.
|
||||
|
||||
@@ -8697,7 +8697,7 @@ Tue Feb 20 17:09:19 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
|
||||
Sat Feb 10 02:16:40 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
|
||||
|
||||
* cmp.c (cmp): Rename `r' to `first_diff', and `x' to `smaller'.
|
||||
Remove unneccessary variable `c1'. If -l was given, increase
|
||||
Remove unnecessary variable `c1'. If -l was given, increase
|
||||
`char_number' by the number of bytes read, after producing output,
|
||||
rather than by the offset of the first differing bytes, before
|
||||
producing output.
|
||||
@@ -8745,7 +8745,7 @@ Sat Dec 16 15:15:50 1989 David J. MacKenzie (djm at hobbes.ai.mit.edu)
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 1998-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
@@ -461,7 +461,7 @@ Major changes in release 1.4:
|
||||
|
||||
========================================================================
|
||||
|
||||
Copyright (C) 1992-2002, 2006, 2009-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 1992-2012 Free Software Foundation, Inc.
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
|
||||
@@ -246,7 +246,7 @@
|
||||
|
||||
-----
|
||||
|
||||
Copyright (C) 2002-2011 Free Software Foundation, Inc.
|
||||
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without
|
||||
modification, are permitted provided the copyright notice
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user