3 %bcond_with advcopy # progress bar in cp (orphaned patch)
4 %bcond_with multicall # Compile all the tools in a single binary
5 %bcond_with tests # unit tests running
6 %bcond_without y2038 # Y2038 support for 32-bit archs
8 Summary: GNU Core-utils - basic command line utilities
9 Summary(pl.UTF-8): GNU Core-utils - podstawowe narzędzia działające z linii poleceń
14 Group: Applications/System
15 Source0: http://ftp.gnu.org/gnu/coreutils/%{name}-%{version}.tar.xz
16 # Source0-md5: e99adfa059a63db3503cc71f3d151e31
17 Source1: %{name}-non-english-man-pages.tar.bz2
18 # Source1-md5: f7c986ebc74ccb8d08ed70141063f14c
20 Source3: DIR_COLORS.256color
25 Patch0: %{name}-info.patch
26 Patch1: %{name}-getgid.patch
27 Patch2: %{name}-uname-cpuinfo.patch
28 Patch3: %{name}-date-man.patch
30 Patch6: %{name}-fmt-wchars.patch
31 Patch7: %{name}-sparc64.patch
32 # https://github.com/jarun/advcpmv
33 Patch9: %{name}-advcopy.patch
35 URL: http://www.gnu.org/software/coreutils/
36 BuildRequires: acl-devel
37 BuildRequires: attr-devel
38 BuildRequires: autoconf >= 2.69
39 BuildRequires: automake >= 1:1.11.2
40 BuildRequires: gcc >= 5:3.2
41 BuildRequires: gettext-tools >= 0.19.2
42 BuildRequires: gmp-devel
43 BuildRequires: help2man
44 BuildRequires: libcap-devel
45 BuildRequires: libselinux-devel
46 BuildRequires: perl-base
47 BuildRequires: rpmbuild(find_lang) >= 1.24
48 BuildRequires: smack-devel
49 BuildRequires: tar >= 1:1.22
50 BuildRequires: texinfo >= 4.2
55 Requires: setup >= 2.4.6-2
57 Provides: mktemp = %{version}-%{release}
61 Obsoletes: fileutils < 4.2
62 Obsoletes: mktemp < 1.6
63 Obsoletes: sh-utils < 2.1
65 Obsoletes: textutils < 1:2.2
66 Conflicts: shadow < 1:4.0.3-6
67 Conflicts: tetex < 1:2.0.2
68 # ensure util-linux has su included
69 Conflicts: util-linux < 2.22
70 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
73 These are the GNU core utilities. This package is the union of the GNU
74 fileutils, sh-utils, and textutils packages.
76 Most of these programs have significant advantages over their Unix
77 counterparts, such as greater speed, additional options, and fewer
80 The programs that can be built with this package are:
82 [ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date
83 dd df dir dircolors dirname du echo env expand expr factor false fmt
84 fold install groups head hostid id join link ln logname ls md5sum
85 mkdir mkfifo mknod mv nice nl nohup od paste pathchk pinky pr printenv
86 printf ptx pwd realpath rm rmdir seq sha1sum shred sleep sort split
87 stat stty sum sync tac tail tee test touch tr true tsort tty uname
88 unexpand uniq unlink users vdir wc who whoami yes
90 %description -l pl.UTF-8
91 Narzędzia podstawowe (core utilities) GNU to połączone paczki GNU
92 fileutils, sh-utils i textutils.
94 Większość z zawartych programów jest znacznie ulepszona w porównaniu
95 z ich uniksowymi odpowiednikami, np. szybciej działają, mają dodatkowe
96 opcje i mniej ograniczeń.
98 Programy zawarte w tym pakiecie to:
100 [ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date
101 dd df dir dircolors dirname du echo env expand expr factor false fmt
102 fold ginstall groups head hostid id join link ln logname ls md5sum
103 mkdir mkfifo mknod mv nice nl nohup od paste pathchk pinky pr printenv
104 printf ptx pwd realpath rm rmdir seq sha1sum shred sleep sort split
105 stat stty sum sync tac tail tee test touch tr true tsort tty uname
106 unexpand uniq unlink users vdir wc who whoami yes
120 # progress-bar patch, -g,--progress-bar //if in doubt, comment it out
125 %{__mv} man/pt_BR man/pt
127 %{__perl} -pi -e 's@GNU/Linux@PLD Linux@' m4/host-os.m4
129 # allow rebuilding *.gmo
132 # 8-bit-pfx test fails under C locale:
133 # LC_ALL=C echo -e "ça\nçb\n"|LC_ALL=C fmt -p 'ç'
134 # fmt: memory exhausted
135 %{__sed} -i -e 25,27d tests/fmt/base.pl
137 # /etc/resolv.conf is blocked in pld builders, try some other file
138 %{__sed} -i -e 's,/etc/resolv.conf,/etc/hosts,' gnulib-tests/test-read-file.c
140 # getgid needs to be fixed:
141 # getgid: missing operand
142 # Try `getgid --help' for more information.
143 %{__rm} tests/help/help-version.sh
144 %{__sed} -i -e '/help\/help-version/d' tests/local.mk
146 # fails on some filesystems (like XFS), where readdir returns d_type=DT_UNKNOWN
147 %{__rm} tests/ls/stat-free-color.sh
148 %{__sed} -i -e '/ls\/stat-free-color/d' tests/local.mk
150 # filesystem layout dependant (fails on some xfs fs)
151 %{__rm} tests/dd/sparse.sh
152 %{__sed} -i -e '/dd\/sparse/d' tests/local.mk
154 # mksh is too smart for those, won't let programs fail on ulimit
155 # would need bash here
156 %{__rm} tests/sort/sort-merge-fdlimit.sh
157 %{__sed} -i -e '/sort\/sort-merge-fdlimit/d' tests/local.mk
158 %{__rm} tests/split/r-chunk.sh
159 %{__sed} -i -e '/split\/r-chunk/d' tests/local.mk
162 build-aux/gen-lists-of-programs.sh --autoconf > m4/cu-progs.m4
163 build-aux/gen-lists-of-programs.sh --automake > src/cu-progs.mk
170 CFLAGS="%{rpmcflags} -DSYSLOG_SUCCESS -DSYSLOG_FAILURE -DSYSLOG_NON_ROOT" \
171 %{?with_multicall:--enable-single-binary=symlinks} \
172 --disable-silent-rules \
173 --enable-install-program=arch \
174 --enable-no-install-program=hostname,kill,uptime \
175 %{!?with_y2038:--disable-year2038}
180 sed -i -e 's#COLUMNS##g' tests/envvar-check
181 LC_ALL=C LANG=C %{__make} -j1 tests check
185 rm -rf $RPM_BUILD_ROOT
186 install -d $RPM_BUILD_ROOT{/bin,/sbin,%{_bindir},%{_sbindir},/etc/shrc.d}
189 DESTDIR=$RPM_BUILD_ROOT
191 %{__mv} $RPM_BUILD_ROOT%{_bindir}/{arch,basename,cat,chgrp,chmod,chown,cp,date,dd,\
192 df,echo,false,id,link,ln,ls,mkdir,mknod,mktemp,mv,nice,printf,pwd,readlink,rm,rmdir,\
193 sleep,sort,stat,stty,sync,touch,true,unlink,uname} $RPM_BUILD_ROOT/bin
195 %if %{with multicall}
196 %{__mv} $RPM_BUILD_ROOT{%{_bindir},/bin}/coreutils
197 ln -s ../../bin/coreutils $RPM_BUILD_ROOT%{_bindir}
200 %{__mv} $RPM_BUILD_ROOT%{_bindir}/chroot $RPM_BUILD_ROOT%{_sbindir}
202 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}
203 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}
204 cp -p %{SOURCE4} %{SOURCE5} %{SOURCE7} $RPM_BUILD_ROOT/etc/shrc.d
206 for d in cs da de es fi fr hu id it ja ko nl pl pt ru zh_CN; do
207 install -d $RPM_BUILD_ROOT%{_mandir}/$d/man1
208 cp -p man/$d/*.1 $RPM_BUILD_ROOT%{_mandir}/$d/man1
210 cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_mandir}/pl/man1/mktemp.1
211 # unwanted (-f left intentionally - some manuals could have no translations)
212 rm -f $RPM_BUILD_ROOT%{_mandir}/*/man1/{hostname,kill,su,uptime}.1
213 # always remove, never packaged but sometimes installed
214 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
219 rm -rf $RPM_BUILD_ROOT
221 %post -p /sbin/postshell
222 -/usr/sbin/fix-info-dir -c %{_infodir}
224 %postun -p /sbin/postshell
225 -/usr/sbin/fix-info-dir -c %{_infodir}
227 %files -f %{name}.lang
228 %defattr(644,root,root,755)
229 %doc AUTHORS ChangeLog NEWS README THANKS THANKS-to-translators TODO
230 %attr(755,root,root) /bin/arch
231 %attr(755,root,root) /bin/basename
232 %attr(755,root,root) /bin/cat
233 %attr(755,root,root) /bin/chgrp
234 %attr(755,root,root) /bin/chmod
235 %attr(755,root,root) /bin/chown
236 %attr(755,root,root) /bin/cp
237 %attr(755,root,root) /bin/date
238 %attr(755,root,root) /bin/dd
239 %attr(755,root,root) /bin/df
240 %attr(755,root,root) /bin/echo
241 %attr(755,root,root) /bin/false
242 %attr(755,root,root) /bin/id
243 %attr(755,root,root) /bin/link
244 %attr(755,root,root) /bin/ln
245 %attr(755,root,root) /bin/ls
246 %attr(755,root,root) /bin/mkdir
247 %attr(755,root,root) /bin/mknod
248 %attr(755,root,root) /bin/mktemp
249 %attr(755,root,root) /bin/mv
250 %attr(755,root,root) /bin/nice
251 %attr(755,root,root) /bin/printf
252 %attr(755,root,root) /bin/pwd
253 %attr(755,root,root) /bin/readlink
254 %attr(755,root,root) /bin/rm
255 %attr(755,root,root) /bin/rmdir
256 %attr(755,root,root) /bin/sleep
257 %attr(755,root,root) /bin/sort
258 %attr(755,root,root) /bin/stat
259 %attr(755,root,root) /bin/stty
260 %attr(755,root,root) /bin/sync
261 %attr(755,root,root) /bin/touch
262 %attr(755,root,root) /bin/true
263 %attr(755,root,root) /bin/uname
264 %attr(755,root,root) /bin/unlink
265 %attr(755,root,root) %{_bindir}/[
266 %attr(755,root,root) %{_bindir}/b2sum
267 %attr(755,root,root) %{_bindir}/base32
268 %attr(755,root,root) %{_bindir}/base64
269 %attr(755,root,root) %{_bindir}/basenc
270 %attr(755,root,root) %{_bindir}/chcon
271 %attr(755,root,root) %{_bindir}/cksum
272 %attr(755,root,root) %{_bindir}/comm
273 %attr(755,root,root) %{_bindir}/csplit
274 %attr(755,root,root) %{_bindir}/cut
275 %attr(755,root,root) %{_bindir}/dir
276 %attr(755,root,root) %{_bindir}/dircolors
277 %attr(755,root,root) %{_bindir}/dirname
278 %attr(755,root,root) %{_bindir}/du
279 %attr(755,root,root) %{_bindir}/env
280 %attr(755,root,root) %{_bindir}/expand
281 %attr(755,root,root) %{_bindir}/expr
282 %attr(755,root,root) %{_bindir}/factor
283 %attr(755,root,root) %{_bindir}/fmt
284 %attr(755,root,root) %{_bindir}/fold
285 %attr(755,root,root) %{_bindir}/getgid
286 %attr(755,root,root) %{_bindir}/groups
287 %attr(755,root,root) %{_bindir}/head
288 %attr(755,root,root) %{_bindir}/hostid
289 %attr(755,root,root) %{_bindir}/install
290 %attr(755,root,root) %{_bindir}/join
291 %attr(755,root,root) %{_bindir}/logname
292 %attr(755,root,root) %{_bindir}/md5sum
293 %attr(755,root,root) %{_bindir}/mkfifo
294 %attr(755,root,root) %{_bindir}/nl
295 %attr(755,root,root) %{_bindir}/nohup
296 %attr(755,root,root) %{_bindir}/nproc
297 %attr(755,root,root) %{_bindir}/numfmt
298 %attr(755,root,root) %{_bindir}/od
299 %attr(755,root,root) %{_bindir}/paste
300 %attr(755,root,root) %{_bindir}/pathchk
301 %attr(755,root,root) %{_bindir}/pinky
302 %attr(755,root,root) %{_bindir}/pr
303 %attr(755,root,root) %{_bindir}/printenv
304 %attr(755,root,root) %{_bindir}/ptx
305 %attr(755,root,root) %{_bindir}/realpath
306 %attr(755,root,root) %{_bindir}/runcon
307 %attr(755,root,root) %{_bindir}/seq
308 %attr(755,root,root) %{_bindir}/sha1sum
309 %attr(755,root,root) %{_bindir}/sha224sum
310 %attr(755,root,root) %{_bindir}/sha256sum
311 %attr(755,root,root) %{_bindir}/sha384sum
312 %attr(755,root,root) %{_bindir}/sha512sum
313 %attr(755,root,root) %{_bindir}/shred
314 %attr(755,root,root) %{_bindir}/shuf
315 %attr(755,root,root) %{_bindir}/split
316 %attr(755,root,root) %{_bindir}/stdbuf
317 %attr(755,root,root) %{_bindir}/sum
318 %attr(755,root,root) %{_bindir}/tac
319 %attr(755,root,root) %{_bindir}/tail
320 %attr(755,root,root) %{_bindir}/tee
321 %attr(755,root,root) %{_bindir}/test
322 %attr(755,root,root) %{_bindir}/timeout
323 %attr(755,root,root) %{_bindir}/tr
324 %attr(755,root,root) %{_bindir}/truncate
325 %attr(755,root,root) %{_bindir}/tsort
326 %attr(755,root,root) %{_bindir}/tty
327 %attr(755,root,root) %{_bindir}/unexpand
328 %attr(755,root,root) %{_bindir}/uniq
329 %attr(755,root,root) %{_bindir}/users
330 %attr(755,root,root) %{_bindir}/vdir
331 %attr(755,root,root) %{_bindir}/wc
332 %attr(755,root,root) %{_bindir}/who
333 %attr(755,root,root) %{_bindir}/whoami
334 %attr(755,root,root) %{_bindir}/yes
335 %attr(755,root,root) %{_sbindir}/chroot
336 %if %{with multicall}
337 %attr(755,root,root) /bin/coreutils
338 %attr(755,root,root) %{_bindir}/coreutils
339 %{_mandir}/man1/coreutils.1*
341 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/DIR_COLORS
342 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/DIR_COLORS.256color
343 %config(noreplace) /etc/shrc.d/colorls.csh
344 %config(noreplace) /etc/shrc.d/colorls.sh
345 %config(noreplace) /etc/shrc.d/%{name}.sh
346 %dir %{_libexecdir}/coreutils
347 %attr(755,root,root) %{_libexecdir}/coreutils/libstdbuf.so
348 %{_mandir}/man1/arch.1*
349 %{_mandir}/man1/b2sum.1*
350 %{_mandir}/man1/base32.1*
351 %{_mandir}/man1/base64.1*
352 %{_mandir}/man1/basenc.1*
353 %{_mandir}/man1/basename.1*
354 %{_mandir}/man1/cat.1*
355 %{_mandir}/man1/chcon.1*
356 %{_mandir}/man1/chgrp.1*
357 %{_mandir}/man1/chmod.1*
358 %{_mandir}/man1/chown.1*
359 %{_mandir}/man1/chroot.1*
360 %{_mandir}/man1/cksum.1*
361 %{_mandir}/man1/comm.1*
362 %{_mandir}/man1/cp.1*
363 %{_mandir}/man1/csplit.1*
364 %{_mandir}/man1/cut.1*
365 %{_mandir}/man1/date.1*
366 %{_mandir}/man1/dd.1*
367 %{_mandir}/man1/df.1*
368 %{_mandir}/man1/dir.1*
369 %{_mandir}/man1/dircolors.1*
370 %{_mandir}/man1/dirname.1*
371 %{_mandir}/man1/du.1*
372 %{_mandir}/man1/echo.1*
373 %{_mandir}/man1/env.1*
374 %{_mandir}/man1/expand.1*
375 %{_mandir}/man1/expr.1*
376 %{_mandir}/man1/factor.1*
377 %{_mandir}/man1/false.1*
378 %{_mandir}/man1/fmt.1*
379 %{_mandir}/man1/fold.1*
380 %{_mandir}/man1/getgid.1*
381 %{_mandir}/man1/groups.1*
382 %{_mandir}/man1/head.1*
383 %{_mandir}/man1/hostid.1*
384 %{_mandir}/man1/id.1*
385 %{_mandir}/man1/install.1*
386 %{_mandir}/man1/join.1*
387 %{_mandir}/man1/link.1*
388 %{_mandir}/man1/ln.1*
389 %{_mandir}/man1/logname.1*
390 %{_mandir}/man1/ls.1*
391 %{_mandir}/man1/md5sum.1*
392 %{_mandir}/man1/mkdir.1*
393 %{_mandir}/man1/mkfifo.1*
394 %{_mandir}/man1/mknod.1*
395 %{_mandir}/man1/mktemp.1*
396 %{_mandir}/man1/mv.1*
397 %{_mandir}/man1/nice.1*
398 %{_mandir}/man1/nl.1*
399 %{_mandir}/man1/nohup.1*
400 %{_mandir}/man1/nproc.1*
401 %{_mandir}/man1/numfmt.1*
402 %{_mandir}/man1/od.1*
403 %{_mandir}/man1/paste.1*
404 %{_mandir}/man1/pathchk.1*
405 %{_mandir}/man1/pinky.1*
406 %{_mandir}/man1/pr.1*
407 %{_mandir}/man1/printenv.1*
408 %{_mandir}/man1/printf.1*
409 %{_mandir}/man1/ptx.1*
410 %{_mandir}/man1/pwd.1*
411 %{_mandir}/man1/readlink.1*
412 %{_mandir}/man1/realpath.1*
413 %{_mandir}/man1/rm.1*
414 %{_mandir}/man1/rmdir.1*
415 %{_mandir}/man1/runcon.1*
416 %{_mandir}/man1/seq.1*
417 %{_mandir}/man1/sha1sum.1*
418 %{_mandir}/man1/sha224sum.1*
419 %{_mandir}/man1/sha256sum.1*
420 %{_mandir}/man1/sha384sum.1*
421 %{_mandir}/man1/sha512sum.1*
422 %{_mandir}/man1/shred.1*
423 %{_mandir}/man1/shuf.1*
424 %{_mandir}/man1/sleep.1*
425 %{_mandir}/man1/sort.1*
426 %{_mandir}/man1/split.1*
427 %{_mandir}/man1/stat.1*
428 %{_mandir}/man1/stdbuf.1*
429 %{_mandir}/man1/stty.1*
430 %{_mandir}/man1/sum.1*
431 %{_mandir}/man1/sync.1*
432 %{_mandir}/man1/tac.1*
433 %{_mandir}/man1/tail.1*
434 %{_mandir}/man1/tee.1*
435 %{_mandir}/man1/test.1*
436 %{_mandir}/man1/timeout.1*
437 %{_mandir}/man1/touch.1*
438 %{_mandir}/man1/tr.1*
439 %{_mandir}/man1/true.1*
440 %{_mandir}/man1/truncate.1*
441 %{_mandir}/man1/tsort.1*
442 %{_mandir}/man1/tty.1*
443 %{_mandir}/man1/uname.1*
444 %{_mandir}/man1/unexpand.1*
445 %{_mandir}/man1/uniq.1*
446 %{_mandir}/man1/unlink.1*
447 %{_mandir}/man1/users.1*
448 %{_mandir}/man1/vdir.1*
449 %{_mandir}/man1/wc.1*
450 %{_mandir}/man1/who.1*
451 %{_mandir}/man1/whoami.1*
452 %{_mandir}/man1/yes.1*
453 %lang(cs) %{_mandir}/cs/man1/*
454 %lang(da) %{_mandir}/da/man1/*
455 %lang(de) %{_mandir}/de/man1/*
456 %lang(es) %{_mandir}/es/man1/*
457 %lang(fi) %{_mandir}/fi/man1/*
458 %lang(fr) %{_mandir}/fr/man1/*
459 %lang(hu) %{_mandir}/hu/man1/*
460 %lang(id) %{_mandir}/id/man1/*
461 %lang(it) %{_mandir}/it/man1/*
462 %lang(ja) %{_mandir}/ja/man1/*
463 %lang(ko) %{_mandir}/ko/man1/*
464 %lang(nl) %{_mandir}/nl/man1/*
465 %lang(pl) %{_mandir}/pl/man1/*
466 %lang(pt) %{_mandir}/pt/man1/*
467 %lang(ru) %{_mandir}/ru/man1/*
468 %lang(zh_CN) %{_mandir}/zh_CN/man1/*
469 %{_infodir}/coreutils.info*