1 |
commit: 0edff67f453a7509c08fce538d3da9c947daa433 |
2 |
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Nov 6 16:20:43 2017 +0000 |
4 |
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Nov 6 16:20:57 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0edff67f |
7 |
|
8 |
sys-apps/coreutils: Rev bump to address multiple test failures |
9 |
|
10 |
- Running test suite with FEATURES=usersandbox is no longer supported |
11 |
due to various sandbox issues. (bug #413621, #439574, #629660) |
12 |
|
13 |
- Due to sandbox failures previously disabled tests |
14 |
re-enabled. (bug #415487) |
15 |
|
16 |
- tests/ls/readdir-mountpoint-inode test failure fixed. (bug #353164) |
17 |
|
18 |
- "caps" USE flag description more specified. (bug #617702 |
19 |
|
20 |
- Tools/programs/libraries used in test suite now listed in |
21 |
DEPEND="test? (...)" which requires re-keywording for some |
22 |
architectures. |
23 |
|
24 |
Bug: https://bugs.gentoo.org/413621 |
25 |
Bug: https://bugs.gentoo.org/439574 |
26 |
Bug: https://bugs.gentoo.org/629660 |
27 |
Bug: https://bugs.gentoo.org/415487 |
28 |
Closes: https://bugs.gentoo.org/353164 |
29 |
Closes: https://bugs.gentoo.org/617702 |
30 |
Package-Manager: Portage-2.3.13, Repoman-2.3.4 |
31 |
|
32 |
sys-apps/coreutils/Manifest | 1 + |
33 |
sys-apps/coreutils/coreutils-8.28-r1.ebuild | 210 ++++++++++++++++++++++++++++ |
34 |
sys-apps/coreutils/metadata.xml | 1 + |
35 |
3 files changed, 212 insertions(+) |
36 |
|
37 |
diff --git a/sys-apps/coreutils/Manifest b/sys-apps/coreutils/Manifest |
38 |
index bee926f1d1e..ad565d4c64d 100644 |
39 |
--- a/sys-apps/coreutils/Manifest |
40 |
+++ b/sys-apps/coreutils/Manifest |
41 |
@@ -9,4 +9,5 @@ DIST coreutils-8.27-patches-1.1.tar.xz 7800 SHA256 8b8996a38913971c955c7b7e428d0 |
42 |
DIST coreutils-8.27.tar.xz 5285648 SHA256 8891d349ee87b9ff7870f52b6d9312a9db672d2439d289bc57084771ca21656b SHA512 abf3280aaa54e9bd5851df0eda2af1de1017ca174633e52d1e592455d46ea0e99812dda46d2f320e979553cef271485d8818c595bba6ed31264511a511c93679 WHIRLPOOL dcc092f41fb4802563062a4aa5a71e2841a7ddc46dec4acc47af3d9a4bee2372ddae7990ac6f3cf00568f43c3103c8290338964040e111861f080e064960803d |
43 |
DIST coreutils-8.28-man.tar.xz 43832 SHA256 d72c3fa79ae328a4fd1107102e8946755aa2e908044e1efcf1e71ef206dca042 SHA512 363cf595e0f6fc69eb6a9d1ca258a5f012404cee99887494ab6e40fe2c6de5e49e7cad953aecb394c5612043efe6b407e657811d8251b10e159c97b849dd8b3e WHIRLPOOL 7b10dbde06caf00d4b789cdb60a7d0c73aec65a90e889698daeccd04eefd8df08142261ea5fde8d3d455f35b2eddf07182bf92e2522e63e8ece412379e0cb0d1 |
44 |
DIST coreutils-8.28-patches-1.0.tar.xz 7264 SHA256 fe9e8f347d104472d357ad80212996d0c9ddb97cec6166d38f4c340a02f4633c SHA512 b358b827eaff789ea8a3838f53f81efb08a6caa5318ac93dab112ec90052174c05d219e1c0170106bb1ed65bd4e37ffc36b742bf3661cc64ee4b166db741bbbc WHIRLPOOL ece3be79d296507341433bf60b0e7bd6846c3d0a8acfff19d1fba17ec45a13f5504c41bb320bd39358ae9f5e2efd5311e2a7ef6ec1119872f990455f9aa9c94d |
45 |
+DIST coreutils-8.28-patches-1.1.tar.xz 7336 SHA256 bdd7ed0ef973bc1095df329225659a928ed061695651e2b54de79ac15690f517 SHA512 af47aaa614550e5cd82b2386fafd9f90beb0564b8bbedfe92238906e7c6f040fb7468c1929f0951d4f98038b6e1df7da2408204be78219e6a041658507385957 WHIRLPOOL 4a90ffa0a35b81d3d20c29128b0d39e08136d499201ac875781d9e851142d36c111031b333b6bfb81db692e75e7b3cc9673c4339d8d183d0d8df2371444dca4e |
46 |
DIST coreutils-8.28.tar.xz 5252336 SHA256 1117b1a16039ddd84d51a9923948307cfa28c2cea03d1a2438742253df0a0c65 SHA512 1e592d0dd03b9227bf92af9a82bed6dc3bcbee46e984c7fb09833dea0962e86b309aa34d5e43823b73d4522c066bfa5cdc8ec694aa190910fb246ff32ceb63a1 WHIRLPOOL 58bdd9681d07794da70dc012d03de2f791bc8e40a16de85302cbb5ea247f6d81f0a92c3b90d655b9947057c5e5eb99b9347152d41150c1a613dd1f891942a73f |
47 |
|
48 |
diff --git a/sys-apps/coreutils/coreutils-8.28-r1.ebuild b/sys-apps/coreutils/coreutils-8.28-r1.ebuild |
49 |
new file mode 100644 |
50 |
index 00000000000..e4ab5f9b371 |
51 |
--- /dev/null |
52 |
+++ b/sys-apps/coreutils/coreutils-8.28-r1.ebuild |
53 |
@@ -0,0 +1,210 @@ |
54 |
+# Copyright 1999-2017 Gentoo Foundation |
55 |
+# Distributed under the terms of the GNU General Public License v2 |
56 |
+ |
57 |
+# To generate the man pages, unpack the upstream tarball and run: |
58 |
+# ./configure --enable-install-program=arch,coreutils,hostname,kill |
59 |
+# make |
60 |
+# cd .. |
61 |
+# tar cf - coreutils-*/man/*.[0-9] | xz > coreutils-<ver>-man.tar.xz |
62 |
+ |
63 |
+EAPI="6" |
64 |
+ |
65 |
+PYTHON_COMPAT=( python{2_7,3_4,3_5} ) |
66 |
+ |
67 |
+inherit eutils flag-o-matic python-any-r1 toolchain-funcs |
68 |
+ |
69 |
+PATCH_VER="1.1" |
70 |
+DESCRIPTION="Standard GNU utilities (chmod, cp, dd, ls, sort, tr, head, wc, who,...)" |
71 |
+HOMEPAGE="https://www.gnu.org/software/coreutils/" |
72 |
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz |
73 |
+ mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz |
74 |
+ https://dev.gentoo.org/~whissi/dist/${PN}/${P}-patches-${PATCH_VER}.tar.xz |
75 |
+ mirror://gentoo/${P}-man.tar.xz |
76 |
+ https://dev.gentoo.org/~polynomial-c/dist/${P}-man.tar.xz" |
77 |
+ |
78 |
+LICENSE="GPL-3" |
79 |
+SLOT="0" |
80 |
+KEYWORDS="~amd64 ~m68k ~ppc ~s390 ~sh ~sparc ~x86 ~arm-linux ~x86-linux" |
81 |
+IUSE="acl caps gmp hostname kill multicall nls selinux static test userland_BSD vanilla xattr" |
82 |
+ |
83 |
+LIB_DEPEND="acl? ( sys-apps/acl[static-libs] ) |
84 |
+ caps? ( sys-libs/libcap ) |
85 |
+ gmp? ( dev-libs/gmp:=[static-libs] ) |
86 |
+ xattr? ( !userland_BSD? ( sys-apps/attr[static-libs] ) )" |
87 |
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs]} ) |
88 |
+ selinux? ( sys-libs/libselinux ) |
89 |
+ nls? ( virtual/libintl )" |
90 |
+DEPEND="${RDEPEND} |
91 |
+ static? ( ${LIB_DEPEND} ) |
92 |
+ app-arch/xz-utils |
93 |
+ test? ( |
94 |
+ dev-lang/perl |
95 |
+ dev-perl/Expect |
96 |
+ !userland_BSD? ( |
97 |
+ dev-util/strace |
98 |
+ ) |
99 |
+ ${PYTHON_DEPS} |
100 |
+ $(python_gen_any_dep 'dev-python/pyinotify[${PYTHON_USEDEP}]') |
101 |
+ )" |
102 |
+RDEPEND+=" |
103 |
+ hostname? ( !sys-apps/net-tools[hostname] ) |
104 |
+ kill? ( |
105 |
+ !sys-apps/util-linux[kill] |
106 |
+ !sys-process/procps[kill] |
107 |
+ ) |
108 |
+ !app-misc/realpath |
109 |
+ !<sys-apps/util-linux-2.13 |
110 |
+ !<sys-apps/sandbox-2.10-r4 |
111 |
+ !sys-apps/stat |
112 |
+ !net-mail/base64 |
113 |
+ !sys-apps/mktemp |
114 |
+ !<app-forensics/tct-1.18-r1 |
115 |
+ !<net-fs/netatalk-2.0.3-r4" |
116 |
+ |
117 |
+pkg_setup() { |
118 |
+ if use test ; then |
119 |
+ python-any-r1_pkg_setup |
120 |
+ fi |
121 |
+} |
122 |
+ |
123 |
+src_prepare() { |
124 |
+ if ! use vanilla ; then |
125 |
+ use_if_iuse unicode || rm -f "${WORKDIR}"/patch/000_all_coreutils-i18n.patch |
126 |
+ #rm "${WORKDIR}"/patch/001_all_coreutils-gen-progress-bar.patch || die |
127 |
+ eapply "${WORKDIR}"/patch/*.patch |
128 |
+ fi |
129 |
+ |
130 |
+ eapply_user |
131 |
+ |
132 |
+ # Since we've patched many .c files, the make process will try to |
133 |
+ # re-build the manpages by running `./bin --help`. When doing a |
134 |
+ # cross-compile, we can't do that since 'bin' isn't a native bin. |
135 |
+ # Also, it's not like we changed the usage on any of these things, |
136 |
+ # so let's just update the timestamps and skip the help2man step. |
137 |
+ set -- man/*.x |
138 |
+ touch ${@/%x/1} |
139 |
+ |
140 |
+ # Avoid perl dep for compiled in dircolors default #348642 |
141 |
+ if ! has_version dev-lang/perl ; then |
142 |
+ touch src/dircolors.h |
143 |
+ touch ${@/%x/1} |
144 |
+ fi |
145 |
+} |
146 |
+ |
147 |
+src_configure() { |
148 |
+ local myconf=( |
149 |
+ --with-packager="Gentoo" |
150 |
+ --with-packager-version="${PVR} (p${PATCH_VER:-0})" |
151 |
+ --with-packager-bug-reports="https://bugs.gentoo.org/" |
152 |
+ --enable-install-program="arch,$(usev hostname),$(usev kill)" |
153 |
+ --enable-no-install-program="groups,$(usev !hostname),$(usev !kill),su,uptime" |
154 |
+ --enable-largefile |
155 |
+ $(use caps || echo --disable-libcap) |
156 |
+ $(use_enable nls) |
157 |
+ $(use_enable acl) |
158 |
+ $(use_enable multicall single-binary) |
159 |
+ $(use_enable xattr) |
160 |
+ $(use_with gmp) |
161 |
+ ) |
162 |
+ if tc-is-cross-compiler && [[ ${CHOST} == *linux* ]] ; then |
163 |
+ export fu_cv_sys_stat_statfs2_bsize=yes #311569 |
164 |
+ export gl_cv_func_realpath_works=yes #416629 |
165 |
+ fi |
166 |
+ |
167 |
+ export gl_cv_func_mknod_works=yes #409919 |
168 |
+ use static && append-ldflags -static && sed -i '/elf_sys=yes/s:yes:no:' configure #321821 |
169 |
+ use selinux || export ac_cv_{header_selinux_{context,flash,selinux}_h,search_setfilecon}=no #301782 |
170 |
+ use userland_BSD && myconf+=( -program-prefix=g --program-transform-name=s/stat/nustat/ ) |
171 |
+ # kill/uptime - procps |
172 |
+ # groups/su - shadow |
173 |
+ # hostname - net-tools |
174 |
+ econf ${myconf[@]} |
175 |
+} |
176 |
+ |
177 |
+src_test() { |
178 |
+ # Known to fail with FEATURES=usersandbox (bug #439574): |
179 |
+ # - tests/du/long-from-unreadable.sh} (bug #413621) |
180 |
+ # - tests/rm/deep-2.sh (bug #413621) |
181 |
+ # - tests/dd/no-allocate.sh (bug #629660) |
182 |
+ if has usersandbox $FEATURES ; then |
183 |
+ ewarn "You are emerging ${P} with 'usersandbox' enabled." \ |
184 |
+ "Expect some test failures or emerge with 'FEATURES=-usersandbox'!" |
185 |
+ fi |
186 |
+ |
187 |
+ # Non-root tests will fail if the full path isn't |
188 |
+ # accessible to non-root users |
189 |
+ chmod -R go-w "${WORKDIR}" |
190 |
+ chmod a+rx "${WORKDIR}" |
191 |
+ |
192 |
+ # coreutils tests like to do `mount` and such with temp dirs |
193 |
+ # so make sure /etc/mtab is writable #265725 |
194 |
+ # make sure /dev/loop* can be mounted #269758 |
195 |
+ mkdir -p "${T}"/mount-wrappers |
196 |
+ mkwrap() { |
197 |
+ local w ww |
198 |
+ for w in "$@" ; do |
199 |
+ ww="${T}/mount-wrappers/${w}" |
200 |
+ cat <<-EOF > "${ww}" |
201 |
+ #!${EPREFIX}/bin/sh |
202 |
+ exec env SANDBOX_WRITE="\${SANDBOX_WRITE}:/etc/mtab:/dev/loop" $(type -P $w) "\$@" |
203 |
+ EOF |
204 |
+ chmod a+rx "${ww}" |
205 |
+ done |
206 |
+ } |
207 |
+ mkwrap mount umount |
208 |
+ |
209 |
+ addwrite /dev/full |
210 |
+ #export RUN_EXPENSIVE_TESTS="yes" |
211 |
+ #export FETISH_GROUPS="portage wheel" |
212 |
+ env PATH="${T}/mount-wrappers:${PATH}" \ |
213 |
+ emake -j1 -k check |
214 |
+} |
215 |
+ |
216 |
+src_install() { |
217 |
+ default |
218 |
+ |
219 |
+ insinto /etc |
220 |
+ newins src/dircolors.hin DIR_COLORS |
221 |
+ |
222 |
+ if [[ ${USERLAND} == "GNU" ]] ; then |
223 |
+ cd "${ED%/}"/usr/bin || die |
224 |
+ dodir /bin |
225 |
+ # move critical binaries into /bin (required by FHS) |
226 |
+ local fhs="cat chgrp chmod chown cp date dd df echo false ln ls |
227 |
+ mkdir mknod mv pwd rm rmdir stty sync true uname" |
228 |
+ mv ${fhs} ../../bin/ || die "could not move fhs bins" |
229 |
+ if use kill; then |
230 |
+ mv kill ../../bin/ || die |
231 |
+ fi |
232 |
+ # move critical binaries into /bin (common scripts) |
233 |
+ local com="basename chroot cut dir dirname du env expr head mkfifo |
234 |
+ mktemp readlink seq sleep sort tail touch tr tty vdir wc yes" |
235 |
+ mv ${com} ../../bin/ || die "could not move common bins" |
236 |
+ # create a symlink for uname in /usr/bin/ since autotools require it |
237 |
+ local x |
238 |
+ for x in ${com} uname ; do |
239 |
+ dosym ../../bin/${x} /usr/bin/${x} |
240 |
+ done |
241 |
+ else |
242 |
+ # For now, drop the man pages, collides with the ones of the system. |
243 |
+ rm -rf "${ED%/}"/usr/share/man |
244 |
+ fi |
245 |
+ |
246 |
+} |
247 |
+ |
248 |
+pkg_postinst() { |
249 |
+ ewarn "Make sure you run 'hash -r' in your active shells." |
250 |
+ ewarn "You should also re-source your shell settings for LS_COLORS" |
251 |
+ ewarn " changes, such as: source /etc/profile" |
252 |
+ |
253 |
+ # Help out users using experimental filesystems |
254 |
+ if grep -qs btrfs "${EROOT%/}"/etc/fstab /proc/mounts ; then |
255 |
+ case $(uname -r) in |
256 |
+ 2.6.[12][0-9]|2.6.3[0-7]*) |
257 |
+ ewarn "You are running a system with a buggy btrfs driver." |
258 |
+ ewarn "Please upgrade your kernel to avoid silent corruption." |
259 |
+ ewarn "See: https://bugs.gentoo.org/353907" |
260 |
+ ;; |
261 |
+ esac |
262 |
+ fi |
263 |
+} |
264 |
|
265 |
diff --git a/sys-apps/coreutils/metadata.xml b/sys-apps/coreutils/metadata.xml |
266 |
index b75c0df6a5f..9241968a469 100644 |
267 |
--- a/sys-apps/coreutils/metadata.xml |
268 |
+++ b/sys-apps/coreutils/metadata.xml |
269 |
@@ -8,6 +8,7 @@ |
270 |
<longdescription>Standard GNU file utilities (chmod, cp, dd, dir, ls, ...), text utilities (sort, tr, head, wc, ...), and shell utilities (whoami, who, ...) |
271 |
</longdescription> |
272 |
<use> |
273 |
+ <flag name="caps">Add Linux capabilities support in output of file utilities (ls, dir, ...) via <pkg>sys-libs/libcap</pkg></flag> |
274 |
<flag name="hostname">Build the hostname program</flag> |
275 |
<flag name="kill">Build the kill program</flag> |
276 |
<flag name="multicall">Build all tools into a single `coreutils` program akin to busybox to save space</flag> |