8a3b577799
There have been 195 commits by 32 people in the 10 months since 8.21 Executive summary: 8.22 is mainly a bug fix and performance improvement release. tail(1) has fixes for handling initially non existent files, and df now has better handling of specified disk device nodes. On the performance side, there have been many improvements to the memory usage of various tools, which are detailed at http://www.pixelbeat.org/programming/avoiding_large_buffers.html There have been large throughput improvements in cut(1) and base64 encoding. Also the md5sum and sha*sum utilities have support for using architecture specific routines to improve performance, if allowed on your distribution. There are also new features available, including SELinux "restorecon" support in various file creation utilities through the -Z option, and shred has a new --repeat option to continually select random items from the input. See the NEWS below for more details. Thanks to everyone who has contributed! The following people contributed changes to this release: Andreas Mohr (1) Anton Ovchinnikov (2) Assaf Gordon (8) Benno Schulenberg (2) Bernhard Voelker (28) Cojocaru Alexandru (4) Colin Leitner (1) D. Hugh Redelmeier (1) Daniel J Walsh (1) Enrico Scholz (1) Eric Blake (1) FUJIWARA Katsunori (1) Filipus Klutiero (1) Gian Piero Carrubba (1) Jarkko Sakkinen (4) Javier López (1) Jim Meyering (6) Joachim Schmitz (2) John (1) Karl Berry (1) Ken Booth (1) Mike Frysinger (1) Ondrej Oprala (2) Ondřej Vašík (2) Paul Eggert (10) Pádraig Brady (106) Rasmus Villemoes (1) Rémy Lefevre (1) Sergio Durigan Junior (1) Stefano Lattarini (3) Tiger Lee (1) Torbjörn Granlund (1) Special thanks to Bernhard Voelker for his many considered patches and reviews, and to Assaf Gordon for his work on new (and future) features. Pádraig [on behalf of the coreutils maintainers] ================================================================== Here is the GNU coreutils home page: http://gnu.org/s/coreutils/ For a summary of changes and contributors, see: http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=shortlog;h=v8.22 or run this command from a git-cloned coreutils directory: git shortlog v8.21..v8.22 To summarize the 255 gnulib-related changes, run these commands From a git-cloned coreutils directory: git checkout v8.22 git submodule summary v8.21 ================================================================== Here are the compressed sources and a GPG detached signature[*]: http://ftp.gnu.org/gnu/coreutils/coreutils-8.22.tar.xz http://ftp.gnu.org/gnu/coreutils/coreutils-8.22.tar.xz.sig Use a mirror for higher download bandwidth: http://ftpmirror.gnu.org/coreutils/coreutils-8.22.tar.xz http://ftpmirror.gnu.org/coreutils/coreutils-8.22.tar.xz.sig [*] Use a .sig file to verify that the corresponding file (without the .sig suffix) is intact. First, be sure to download both the .sig file and the corresponding tarball. Then, run a command like this: gpg --verify coreutils-8.22.tar.xz.sig If that command fails because you don't have the required public key, then run this command to import it: gpg --keyserver keys.gnupg.net --recv-keys DF6FD971306037D9 and rerun the 'gpg --verify' command. This release was bootstrapped with the following tools: Autoconf 2.69 Automake 1.13.4 Gnulib v0.1-38-g0658e50 Bison 2.7 NEWS * Noteworthy changes in release 8.22 (2013-12-13) [stable] ** Bug fixes df now processes the mount list correctly in the presence of unstatable mount points. Previously it may have failed to output some mount points. [bug introduced in coreutils-8.21] df now processes symbolic links and relative paths to special files containing a mounted file system correctly. Previously df displayed the statistics about the file system the file is stored on rather than the one inside. [This bug was present in "the beginning".] df now processes disk device nodes correctly in the presence of bind mounts. Now df shows the base mounted file system rather than the last one mounted. [This bug was present in "the beginning".] install now removes the target file if the strip program failed for any reason. Before, that file was left behind, sometimes even with wrong permissions. [This bug was present in "the beginning".] ln --relative now updates existing symlinks correctly. Previously it based the relative link on the dereferenced path of an existing link. [This bug was introduced when --relative was added in coreutils-8.16.] ls --recursive will no longer exit with "serious" exit code (2), if there is an error reading a directory not specified on the command line. [Bug introduced in coreutils-5.3.0] mkdir, mkfifo, and mknod now work better when creating a file in a directory with a default ACL whose umask disagrees with the process's umask, on a system such as GNU/Linux where directory ACL umasks override process umasks. [bug introduced in coreutils-6.0] mv will now replace empty directories in the destination with directories from the source, when copying across file systems. [This bug was present in "the beginning".] od -wN with N larger than 64K on a system with 32-bit size_t would print approximately 2*N bytes of extraneous padding. [Bug introduced in coreutils-7.0] rm -I now prompts for confirmation before removing a write protected file. [Bug introduced in coreutils-6.8] shred once again uses direct I/O on systems requiring aligned buffers. Also direct I/O failures for odd sized writes at end of file are now handled. [The "last write" bug was introduced in coreutils-5.3.0 but masked by the alignment bug introduced in coreutils-6.0] tail --retry -f now waits for the files specified to appear. Before, tail would immediately exit when such a file is initially inaccessible. [This bug was introduced when inotify support was added in coreutils-7.5] tail -F has improved handling of symlinks. Previously tail didn't respond to the symlink target (re)appearing after being (re)created. [This bug was introduced when inotify support was added in coreutils-7.5] ** New features cp, install, mkdir, mknod, mkfifo and mv now support "restorecon" functionality through the -Z option, to set the SELinux context appropriate for the new item location in the file system. csplit accepts a new option: --suppressed-matched, to elide the lines used to identify the split points. df --output now accepts a 'file' field, to propagate a specified command line argument through to the output. du accepts a new option: --inodes to show the number of inodes instead of the blocks used. id accepts a new option: --zero (-z) to delimit the output entries by a NUL instead of a white space character. id and ls with -Z report the SMACK security context where available. mkdir, mkfifo and mknod with -Z set the SMACK context where available. id can now lookup by user ID, in addition to the existing name lookup. join accepts a new option: --zero-terminated (-z). As with the sort,uniq option of the same name, this makes join consume and produce NUL-terminated lines rather than newline-terminated lines. uniq accepts a new option: --group to print all items, while separating unique groups with empty lines. shred accepts new parameters to the --remove option to give greater control over that operation, which can greatly reduce sync overhead. shuf accepts a new option: --repeat (-r), which can repeat items in the output. ** Changes in behavior cp --link now dereferences a symbolic link as source before creating the hard link in the destination unless the -P,--no-deref option is specified. Previously, it would create a hard link of the symbolic link, even when the dereferencing options -L or -H were specified. cp, install, mkdir, mknod and mkfifo no longer accept an argument to the short -Z option. The --context equivalent still takes an optional argument. dd status=none now suppresses all non fatal diagnostic messages, not just the transfer counts. df no longer accepts the long-obsolescent --megabytes option. stdbuf now requires at least one buffering mode option to be specified, as per the documented interface. ** Improvements base64 encoding throughput for bulk data is increased by about 60%. md5sum can use libcrypto hash routines where allowed to potentially get better performance through using more system specific logic. sha1sum for example has improved throughput by 40% on an i3-2310M. This also affects sha1sum, sha224sum, sha256sum, sha384sum and sha512sum. stat and tail work better with EFIVARFS, EXOFS, F2FS, HOSTFS, SMACKFS, SNFS and UBIFS. stat -f --format=%T now reports the file system type, and tail -f now uses inotify for files on all those except SNFS, rather than the default (for unknown file system types) of issuing a warning and reverting to polling. shuf outputs subsets of large inputs much more efficiently. Reservoir sampling is used to limit memory usage based on the number of outputs, rather than the number of inputs. shred increases the default write block size from 12KiB to 64KiB to align with other utilities and reduce the system call overhead. split --line-bytes=SIZE, now only allocates memory as needed rather than allocating SIZE bytes at program start. stty now supports configuring "stick" (mark/space) parity where available. ** Build-related factor now builds on aarch64 based systems [bug introduced in coreutils-8.20]
55 lines
1.5 KiB
Text
55 lines
1.5 KiB
Text
# $NetBSD: Makefile.common,v 1.7 2014/02/02 07:08:24 richard Exp $
|
|
# used by sysutils/coreutils/Makefile
|
|
# used by misc/gnuls/Makefile
|
|
|
|
DISTNAME= coreutils-8.22
|
|
CATEGORIES= sysutils
|
|
MASTER_SITES= ${MASTER_SITE_GNU:=coreutils/}
|
|
EXTRACT_SUFX= .tar.xz
|
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE= http://www.gnu.org/software/coreutils/
|
|
COMMENT= GNU basic file, shell and text manipulation utilities
|
|
LICENSE= gnu-gpl-v3
|
|
|
|
NOT_FOR_PLATFORM= NetBSD-2.0[D-H]-*
|
|
|
|
PATCHDIR= ${.CURDIR}/../../sysutils/coreutils/patches
|
|
DISTINFO_FILE= ${.CURDIR}/../../sysutils/coreutils/distinfo
|
|
|
|
GNU_CONFIGURE= YES
|
|
USE_TOOLS+= msgfmt msgmerge perl xgettext
|
|
USE_PKGLOCALEDIR= YES
|
|
|
|
TEST_TARGET= check
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
.if ${OPSYS} == "Interix"
|
|
CONFIGURE_ENV+= ac_list_mounted_fs=found
|
|
.endif
|
|
|
|
.if ${OPSYS} == "DragonFly"
|
|
CONFIGURE_ENV+= gl_cv_search_pthread_join=-lpthread
|
|
.endif
|
|
|
|
.if !empty(MACHINE_PLATFORM:MDarwin-[9].*-*)
|
|
CONFIGURE_ENV+= ac_cv_header_sys_acl_h=no jm_cv_func_svid_putenv=yes
|
|
.endif
|
|
|
|
# XXX - this hack is bound to cause fallout on some platform at some point.
|
|
# How can we determine the API version of the builtin gettext?
|
|
.if ${OPSYS} != "Linux"
|
|
CONFIGURE_ENV+= gt_cv_func_gnugettext3_libintl=yes
|
|
.endif
|
|
CONFIGURE_ENV+= MKDIR_P=${MKDIR:Q}
|
|
|
|
CONFIGURE_ARGS+= --program-prefix=g
|
|
|
|
#CONFIGURE_ARGS+= --enable-install-program=su
|
|
#.if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD" || \
|
|
# ${OPSYS} == "OpenBSD"
|
|
#MAKE_FLAGS+= setuid_root_mode=a=rx
|
|
#MESSAGE_SRC= ${.CURDIR}/MESSAGE.gsu
|
|
#MESSAGE_SUBST+= OPSYS=${OPSYS:Q}
|
|
#.endif
|