3
0
forked from pool/coreutils
coreutils/coreutils.spec

188 lines
6.0 KiB
RPMSpec
Raw Normal View History

#
# spec file for package coreutils (Version 8.5)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: coreutils
Summary: GNU Core Utilities
BuildRequires: help2man libacl-devel libcap-devel libselinux-devel pam-devel xz
Url: http://www.gnu.org/software/coreutils/
License: GFDLv1.2 ; GPLv2+ ; GPLv3+
Group: System/Base
Version: 8.5
Release: 2
Provides: fileutils = %{version}, sh-utils = %{version}, stat = %version}, textutils = %{version}, mktemp = %{version}
Obsoletes: fileutils < %{version}, sh-utils < %{version}, stat < %version}, textutils < %{version}, mktemp < %{version}
Obsoletes: libselinux <= 1.23.11-3 libselinux-32bit = 9 libselinux-64bit = 9 libselinux-x86 = 9
AutoReqProv: on
PreReq: %{install_info_prereq}
Recommends: %{name}-lang = %version
Requires: pam >= 1.1.1.90
Source: coreutils-%{version}.tar.xz
Source1: su.pamd
Source2: su.default
Source3: baselibs.conf
Patch0: coreutils-%{version}.patch
Patch1: coreutils-no_hostname_and_hostid.patch
Patch2: coreutils-gl_printf_safe.patch
Patch4: coreutils-8.5-i18n.patch
Patch5: coreutils-i18n-uninit.patch
Patch6: coreutils-i18n-infloop.patch
Patch8: coreutils-sysinfo.patch
Patch16: coreutils-invalid-ids.patch
Patch20: coreutils-6.8-su.patch
Patch21: coreutils-6.8.0-pie.patch
Patch22: coreutils-5.3.0-sbin4su.patch
Patch23: coreutils-getaddrinfo.patch
Patch26: coreutils-add_ogv.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Basic file, shell, and text manipulation utilities. The package
contains the following programs:
[ arch base64 basename cat chcon chgrp chmod chown chroot cksum comm cp
csplit cut date dd df dir dircolors dirname du echo env expand expr
factor false fmt fold groups head id install join kill link ln logname
ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup 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 stty su sum sync tac tail tee test timeout touch tr true tsort tty
uname unexpand uniq unlink uptime users vdir wc who whoami yes
Authors:
--------
Arnold Robbins <arnold@audiofax.com>
Colin Plumb <colin@nyx.net>
David M. Ihnat
David MacKenzie <djm@gnu.org>
Fran<EFBFBD>ois Pinard <pinard@iro.umontreal.ca>
H. Peter Anvin <hpa@transmeta.com>
Ian Lance Taylor <ian@airs.com>
Jay Lepreau <lepreau@cs.utah.edu>
Jim Kingdon
Jim Meyering <jim@meyering.net>
Joseph Arceneaux
Kaveh Ghazi
Kayvan Aghaiepour
Larry McVoy <lm@sgi.com>
Mark Kettenis <kettenis@phys.uva.nl>
Michael Meskes
Michael Stone <mstone@debian.org>
Mike Haertel
Mike Parker
Paul Eggert <eggert@twinsun.com>
Paul Rubin <phr@ocf.berkeley.edu>
Pete TerMaat
Randy Smith
Richard M. Stallman <rms@gnu.org>
Richard Mlynarik
Roland Huebner <ro-huebner@gmx.de>
Roland McGrath <roland@redhat.com>
Ross Paterson <rap@doc.ic.ac.uk>
Scott Bartram
Scott Miller
Stuart Kemp <skemp@peter.bmc.com>
Torbjorn Granlund <tege@nada.kth.se>
Ulrich Drepper <drepper@redhat.com>
%lang_package
%prep
%setup -q
%patch4
%patch5
%patch6
%patch0
%patch1
%patch2
%patch8
%patch16
%patch20
%patch21
%patch22
%patch23
%patch26
%build
AUTOPOINT=true autoreconf -fi
export CFLAGS="%optflags -Wall"
%configure --without-included-regex \
--enable-install-program=arch,su \
gl_cv_func_printf_directive_n=yes \
gl_cv_func_isnanl_works=yes \
DEFAULT_POSIX2_VERSION=199209
make %{?_smp_mflags} PAMLIBS="-lpam -ldl" V=1
%check
if test $EUID -eq 0; then
su nobody -c make %{?_smp_mflags} check VERBOSE=yes V=1
make %{?_smp_mflags} check-root VERBOSE=yes V=1
else
%ifarch %arm
make -k %{?_smp_mflags} check VERBOSE=yes V=1 || echo make check failed
Accepting request 783998 from home:berny:branches:Base:System - Update to 8.32: * Noteworthy changes in release 8.32 (2020-03-05) [stable] ** Bug fixes cp now copies /dev/fd/N correctly on platforms like Solaris where it is a character-special file whose minor device number is N. [bug introduced in fileutils-4.1.6] dd conv=fdatasync no longer reports a "Bad file descriptor" error when fdatasync is interrupted, and dd now retries interrupted calls to close, fdatasync, fstat and fsync instead of incorrectly reporting an "Interrupted system call" error. [bugs introduced in coreutils-6.0] df now correctly parses the /proc/self/mountinfo file for unusual entries like ones with '\r' in a field value ("mount -t tmpfs tmpfs /foo$'\r'bar"), when the source field is empty ('mount -t tmpfs "" /mnt'), and when the filesystem type contains characters like a blank which need escaping. [bugs introduced in coreutils-8.24 with the introduction of reading the /proc/self/mountinfo file] factor again outputs immediately when stdout is a tty but stdin is not. [bug introduced in coreutils-8.24] ln works again on old systems without O_DIRECTORY support (like Solaris 10), and on systems where symlink ("x", ".") fails with errno == EINVAL (like Solaris 10 and Solaris 11). [bug introduced in coreutils-8.31] rmdir --ignore-fail-on-non-empty now works correctly for directories that fail to be removed due to permission issues. Previously the exit status was reversed, failing for non empty and succeeding for empty directories. [bug introduced in coreutils-6.11] 'shuf -r -n 0 file' no longer mistakenly reads from standard input. [bug introduced with the --repeat feature in coreutils-8.22] split no longer reports a "output file suffixes exhausted" error when the specified number of files is evenly divisible by 10, 16, 26, for --numeric, --hex, or default alphabetic suffixes respectively. [bug introduced in coreutils-8.24] seq no longer prints an extra line under certain circumstances (such as 'seq -f "%g " 1000000 1000000'). [bug introduced in coreutils-6.10] ** Changes in behavior Several programs now check that numbers end properly. For example, 'du -d 1x' now reports an error instead of silently ignoring the 'x'. Affected programs and options include du -d, expr's numeric operands on non-GMP builds, install -g and -o, ls's TABSIZE environment variable, mknod b and c, ptx -g and -w, shuf -n, and sort --batch-size and --parallel. date now parses military time zones in accordance with common usage: "A" to "M" are equivalent to UTC+1 to UTC+12 "N" to "Y" are equivalent to UTC-1 to UTC-12 "Z" is "zulu" time (UTC). For example, 'date -d "09:00B" is now equivalent to 9am in UTC+2 time zone. Previously, military time zones were parsed according to the obsolete rfc822, with their value negated (e.g., "B" was equivalent to UTC-2). [The old behavior was introduced in sh-utils 2.0.15 ca. 1999, predating coreutils package.] ls issues an error message on a removed directory, on GNU/Linux systems. Previously no error and no entries were output, and so indistinguishable from an empty directory, with default ls options. uniq no longer uses strcoll() to determine string equivalence, and so will operate more efficiently and consistently. ** New Features ls now supports the --time=birth option to display and sort by file creation time, where available. od --skip-bytes now can use lseek even if the input is not a regular file, greatly improving performance in some cases. stat(1) supports a new --cached= option, used on systems with statx(2) to control cache coherency of file system attributes, useful on network file systems. ** Improvements stat and ls now use the statx() system call where available, which can operate more efficiently by only retrieving requested attributes. stat and tail now know about the "binderfs", "dma-buf-fs", "erofs", "ppc-cmm-fs", and "z3fold" file systems. stat -f -c%T now reports the file system type, and tail -f uses inotify. ** Build-related gzip-compressed tarballs are distributed once again - Refresh patches: * coreutils-disable_tests.patch * coreutils-getaddrinfo.patch * coreutils-i18n.patch * coreutils-invalid-ids.patch * coreutils-remove_hostname_documentation.patch * coreutils-remove_kill_documentation.patch * coreutils-skip-gnulib-test-tls.patch * coreutils-tests-shorten-extreme-factor-tests.patch - coreutils-i18n.patch: * uniq: remove collation handling as required by newer POSIX; see - https://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=8e81d44b5 - https://www.austingroupbugs.net/view.php?id=963 - coreutils-ls-restore-8.31-behavior-on-removed-dirs.patch: * Add patch for 'ls' to restore 8.31 behavior on removed directories. - coreutils.spec: * Version: bump version. * %check: re-enable regular 'make check' for non-multibuild package. * reference the above new patch. - coreutils.keyring: * Update from upstream (Savannah). OBS-URL: https://build.opensuse.org/request/show/783998 OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=305
2020-03-18 12:50:56 +01:00
%else
make %{?_smp_mflags} check VERBOSE=yes V=1
%endif
fi
%install
%makeinstall
test -f $RPM_BUILD_ROOT%{_bindir}/su || \
install src/su $RPM_BUILD_ROOT%{_bindir}/su
install -d $RPM_BUILD_ROOT/bin
for i in arch basename cat chgrp chmod chown cp date dd df echo false kill ln ls mkdir mknod mktemp mv pwd rm rmdir sleep sort stat stty su sync touch true uname readlink md5sum
do
mv $RPM_BUILD_ROOT%{_bindir}/$i $RPM_BUILD_ROOT/bin/$i
test $i = su && echo -n '%%attr(4755,root,root) '
echo /bin/$i
done > bin.files
ln -sf ../../bin/{basename,sort,stat,touch,readlink,md5sum} $RPM_BUILD_ROOT%{_bindir}
install -d -m 755 $RPM_BUILD_ROOT/etc/pam.d
install -m 644 $RPM_SOURCE_DIR/su.pamd $RPM_BUILD_ROOT/etc/pam.d/su
install -m 644 $RPM_SOURCE_DIR/su.pamd $RPM_BUILD_ROOT/etc/pam.d/su-l
install -d -m 755 $RPM_BUILD_ROOT/etc/default
install -m 644 $RPM_SOURCE_DIR/su.default $RPM_BUILD_ROOT/etc/default/su
%find_lang %name
%post
%install_info --info-dir=%{_infodir} %{_infodir}/coreutils.info.gz
%postun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/coreutils.info.gz
%clean
rm -rf $RPM_BUILD_ROOT
- Avoid segmentation fault in "uniq" with long line input (bnc#796243, VUL-1) * src/cut.c: Instead of usig unreliable alloca() stack allocation, use heap allocation via xmalloc()+free(). (coreutils-i18n.patch) - Fix test-suite errors (bnc#798261). * tests/cp/fiemap-FMR: Fix path to src directory and declare require_valgrind_ function. (coreutils-cp-corrupt-fragmented-sparse.patch) * tests/misc/cut: Fix src/cut.c to properly pass output-delimiter tests. Synchronize cut.c related part of the i18n patch with Fedora's. Merge coreutils-i18n-infloop.patch into coreutils-i18n.patch. Merge coreutils-i18n-uninit.patch into coreutils-i18n.patch. In tests/misc/cut, do not replace the non-i18n error messages. (coreutils-i18n.patch) * tests/rm/ext3-perf: This test failed due to heavy parallel CPU and/or disk load because it is based on timeouts. Do not run the test-suite with 'make -jN. (coreutils.spec, coreutils-testsuite.spec) * Further spec changes: Run more tests: also run "very expensive" tests; add acl, python-pyinotify, strace and valgrind to the build requirements. Remove patch5 and patch6 as they are now merged into coreutils-i18n.patch (see above). (coreutils.spec, coreutils-testsuite.spec) - Maintenance changes: (coreutils.spec, coreutils-testsuite.spec) * Add perl and texinfo to the build requirements as they are needed to re-generate the man pages and the texinfo documentation. * Remove already-active "-Wall" compiler option from CFLAGS variable. * Install the compressed test-suite.log into the documentation directory of the coreutils-testsuite package (section %check and %files). * Properly guard the spec sections for the coreutils and the coreutils-testsuite package. * Update patches to reflect new line numbers. OBS-URL: https://build.opensuse.org/package/show/Base:System/coreutils?expand=0&rev=172
2013-01-16 20:09:57 +01:00
%files -f bin.files
%defattr(-,root,root)
%doc README NEWS
%config /etc/pam.d/su
%config /etc/pam.d/su-l
%config(noreplace) /etc/default/su
%{_bindir}/*
%{_libdir}/%{name}
%doc %{_infodir}/coreutils.info*.gz
%doc %{_mandir}/man1/*.1.gz
%dir %{_prefix}/share/locale/*/LC_TIME
%files lang -f %name.lang
%defattr(-,root,root)
%changelog