]> TLD Linux GIT Repositories - packages/coreutils.git/blob - coreutils.spec
- refresh advcopy patch
[packages/coreutils.git] / coreutils.spec
1 #
2 # Conditional build:
3 %bcond_with     advcopy # progress bar in cp
4 %bcond_without  tests   # do not perform "make test check"
5 #
6 Summary:        GNU Core-utils - basic command line utilities
7 Summary(pl.UTF-8):      GNU Core-utils - podstawowe narzędzia działające z linii poleceń
8 Name:           coreutils
9 Version:        8.21
10 Release:        2
11 License:        GPL v3+
12 Group:          Applications/System
13 Source0:        http://ftp.gnu.org/gnu/coreutils/%{name}-%{version}.tar.xz
14 # Source0-md5:  065ba41828644eca5dd8163446de5d64
15 Source1:        %{name}-non-english-man-pages.tar.bz2
16 # Source1-md5:  f7c986ebc74ccb8d08ed70141063f14c
17 Source2:        DIR_COLORS
18 Source3:        fileutils.sh
19 Source4:        fileutils.csh
20 Source5:        mktemp.1.pl
21 Patch0:         %{name}-info.patch
22 Patch1:         %{name}-getgid.patch
23 Patch2:         %{name}-uname-cpuinfo.patch
24 Patch3:         %{name}-date-man.patch
25 Patch5:         %{name}-7.4-sttytcsadrain.patch
26 Patch6:         %{name}-fmt-wchars.patch
27 Patch7:         %{name}-sparc64.patch
28 # http://translationproject.org/latest/coreutils/pl.po (pass through msgcat to generate shorter diff)
29 Patch8:         %{name}-pl.po-update.patch
30 # from http://www.beatex.org/web/advancedcopy.html, edited by shadzik
31 Patch9:         %{name}-advcopy.patch
32 Patch10:        format-security.patch
33 URL:            http://www.gnu.org/software/coreutils/
34 BuildRequires:  acl-devel
35 BuildRequires:  attr-devel
36 BuildRequires:  autoconf >= 2.64
37 BuildRequires:  automake >= 1:1.11.2
38 BuildRequires:  gcc >= 5:3.2
39 BuildRequires:  gettext-devel >= 0.18.1
40 BuildRequires:  gmp-devel
41 BuildRequires:  help2man
42 BuildRequires:  libcap-devel
43 BuildRequires:  libselinux-devel
44 BuildRequires:  rpmbuild(find_lang) >= 1.24
45 BuildRequires:  tar >= 1:1.22
46 BuildRequires:  texinfo >= 4.2
47 BuildRequires:  xz
48 %if %{with tests}
49 BuildRequires:  strace
50 %endif
51 Requires:       setup >= 2.4.6-2
52 Provides:       fileutils
53 Provides:       mktemp = %{version}-%{release}
54 Provides:       sh-utils
55 Provides:       stat
56 Provides:       textutils
57 Obsoletes:      fileutils
58 Obsoletes:      mktemp
59 Obsoletes:      sh-utils
60 Obsoletes:      stat
61 Obsoletes:      textutils
62 Conflicts:      shadow < 1:4.0.3-6
63 Conflicts:      tetex < 1:2.0.2
64 # ensure util-linux has su included
65 Conflicts:      util-linux < 2.22
66 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67
68 %description
69 These are the GNU core utilities. This package is the union of the GNU
70 fileutils, sh-utils, and textutils packages.
71
72 Most of these programs have significant advantages over their Unix
73 counterparts, such as greater speed, additional options, and fewer
74 arbitrary limits.
75
76 The programs that can be built with this package are:
77
78   [ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date
79   dd df dir dircolors dirname du echo env expand expr factor false fmt
80   fold install groups head hostid id join link ln logname ls md5sum
81   mkdir mkfifo mknod mv nice nl nohup od paste pathchk pinky pr printenv
82   printf ptx pwd realpath rm rmdir seq sha1sum shred sleep sort split
83   stat stty sum sync tac tail tee test touch tr true tsort tty uname
84   unexpand uniq unlink users vdir wc who whoami yes
85
86 %description -l pl.UTF-8
87 Narzędzia podstawowe (core utilities) GNU to połączone paczki GNU
88 fileutils, sh-utils i textutils.
89
90 Większość z zawartych programów jest znacznie ulepszona w porównaniu
91 z ich uniksowymi odpowiednikami, np. szybciej działają, mają dodatkowe
92 opcje i mniej ograniczeń.
93
94 Programy zawarte w tym pakiecie to:
95
96   [ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date
97   dd df dir dircolors dirname du echo env expand expr factor false fmt
98   fold ginstall groups head hostid id join link ln logname ls md5sum
99   mkdir mkfifo mknod mv nice nl nohup od paste pathchk pinky pr printenv
100   printf ptx pwd realpath rm rmdir seq sha1sum shred sleep sort split
101   stat stty sum sync tac tail tee test touch tr true tsort tty uname
102   unexpand uniq unlink users vdir wc who whoami yes
103
104 %prep
105 %setup -q -a1
106 #patch8 -p1
107 %patch0 -p1
108 %patch1 -p1
109 %patch2 -p1
110 %patch3 -p1
111 %patch5 -p1
112 %patch6 -p1
113 %ifarch sparc64
114 %patch7 -p1
115 %endif
116 %if %{with advcopy}
117 # progress-bar patch, -g,--progress-bar //if in doubt, comment it out
118 %patch9 -p1
119 %endif
120 %patch10 -p1
121
122 %{__perl} -pi -e 's@GNU/Linux@TLD Linux@' m4/host-os.m4
123
124 # allow rebuilding *.gmo
125 %{__rm} po/stamp-po
126
127 # 8-bit-pfx test fails under C locale:
128 # LC_ALL=C echo -e "ça\nçb\n"|LC_ALL=C fmt -p 'ç'
129 # fmt: memory exhausted
130 %{__sed} -i -e 25,27d tests/fmt/base.pl
131
132 # /etc/resolv.conf is blocked in pld builders, try some other file
133 %{__sed} -i -e 's,/etc/resolv.conf,/etc/hosts,' gnulib-tests/test-read-file.c
134
135 # getgid needs to be fixed:
136 # getgid: missing operand
137 # Try `getgid --help' for more information.
138 %{__rm} tests/misc/help-version.sh
139 %{__sed} -i -e '/misc\/help-version/d' tests/local.mk
140
141 # fails on some filesystems (like XFS), where readdir returns d_type=DT_UNKNOWN
142 %{__rm} tests/ls/stat-free-color.sh
143 %{__sed} -i -e '/ls\/stat-free-color/d' tests/local.mk
144
145 %build
146 build-aux/gen-lists-of-programs.sh --autoconf > m4/cu-progs.m4
147 build-aux/gen-lists-of-programs.sh --automake > src/cu-progs.mk
148 %{__gettextize}
149 %{__aclocal} -I m4
150 %{__autoconf}
151 %{__autoheader}
152 %{__automake}
153 %configure \
154         CFLAGS="%{rpmcflags} -DSYSLOG_SUCCESS -DSYSLOG_FAILURE -DSYSLOG_NON_ROOT" \
155         DEFAULT_POSIX2_VERSION=199209 \
156         --disable-silent-rules \
157         --enable-install-program=arch \
158         --enable-no-install-program=hostname,kill,uptime
159
160 %{__make}
161
162 %if %{with tests}
163 sed -i -e 's#COLUMNS##g' tests/envvar-check
164 %{__make} -j1 tests check
165 %endif
166
167 %install
168 rm -rf $RPM_BUILD_ROOT
169 install -d $RPM_BUILD_ROOT{/bin,/sbin,%{_bindir},%{_sbindir},/etc/shrc.d}
170
171 %{__make} install \
172         DESTDIR=$RPM_BUILD_ROOT
173
174 mv -f $RPM_BUILD_ROOT%{_bindir}/{arch,basename,cat,chgrp,chmod,chown,cp,date,dd,\
175 df,echo,false,id,link,ln,ls,mkdir,mknod,mktemp,mv,nice,printf,pwd,rm,rmdir,\
176 sleep,sort,stat,stty,sync,touch,true,unlink,uname} $RPM_BUILD_ROOT/bin
177
178 mv -f $RPM_BUILD_ROOT%{_bindir}/chroot $RPM_BUILD_ROOT%{_sbindir}
179
180 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}
181 cp -p %{SOURCE3} %{SOURCE4} $RPM_BUILD_ROOT/etc/shrc.d
182
183 cp -a man/pt_BR man/pt
184 for d in cs da de es fi fr hu id it ja ko nl pl pt ru zh_CN; do
185         install -d $RPM_BUILD_ROOT%{_mandir}/$d/man1
186         cp -p man/$d/*.1 $RPM_BUILD_ROOT%{_mandir}/$d/man1
187 done
188 install %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/pl/man1/mktemp.1
189 # unwanted (-f left intentionally - some manuals could have no translations)
190 rm -f $RPM_BUILD_ROOT%{_mandir}/*/man1/{hostname,kill,su,uptime}.1
191 # always remove, never packaged but sometimes installed
192 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
193
194 %find_lang %{name}
195
196 %clean
197 rm -rf $RPM_BUILD_ROOT
198
199 %post   -p /sbin/postshell
200 -/usr/sbin/fix-info-dir -c %{_infodir}
201
202 %postun -p /sbin/postshell
203 -/usr/sbin/fix-info-dir -c %{_infodir}
204
205 %files -f %{name}.lang
206 %defattr(644,root,root,755)
207 %doc AUTHORS ChangeLog NEWS README THANKS THANKS-to-translators TODO
208 %attr(755,root,root) /bin/arch
209 %attr(755,root,root) /bin/basename
210 %attr(755,root,root) /bin/cat
211 %attr(755,root,root) /bin/chgrp
212 %attr(755,root,root) /bin/chmod
213 %attr(755,root,root) /bin/chown
214 %attr(755,root,root) /bin/cp
215 %attr(755,root,root) /bin/date
216 %attr(755,root,root) /bin/dd
217 %attr(755,root,root) /bin/df
218 %attr(755,root,root) /bin/echo
219 %attr(755,root,root) /bin/false
220 %attr(755,root,root) /bin/id
221 %attr(755,root,root) /bin/link
222 %attr(755,root,root) /bin/ln
223 %attr(755,root,root) /bin/ls
224 %attr(755,root,root) /bin/mkdir
225 %attr(755,root,root) /bin/mknod
226 %attr(755,root,root) /bin/mktemp
227 %attr(755,root,root) /bin/mv
228 %attr(755,root,root) /bin/nice
229 %attr(755,root,root) /bin/printf
230 %attr(755,root,root) /bin/pwd
231 %attr(755,root,root) /bin/rm
232 %attr(755,root,root) /bin/rmdir
233 %attr(755,root,root) /bin/sleep
234 %attr(755,root,root) /bin/sort
235 %attr(755,root,root) /bin/stat
236 %attr(755,root,root) /bin/stty
237 %attr(755,root,root) /bin/sync
238 %attr(755,root,root) /bin/touch
239 %attr(755,root,root) /bin/true
240 %attr(755,root,root) /bin/uname
241 %attr(755,root,root) /bin/unlink
242 %attr(755,root,root) %{_bindir}/[
243 %attr(755,root,root) %{_bindir}/base64
244 %attr(755,root,root) %{_bindir}/chcon
245 %attr(755,root,root) %{_bindir}/cksum
246 %attr(755,root,root) %{_bindir}/comm
247 %attr(755,root,root) %{_bindir}/csplit
248 %attr(755,root,root) %{_bindir}/cut
249 %attr(755,root,root) %{_bindir}/dir
250 %attr(755,root,root) %{_bindir}/dircolors
251 %attr(755,root,root) %{_bindir}/dirname
252 %attr(755,root,root) %{_bindir}/du
253 %attr(755,root,root) %{_bindir}/env
254 %attr(755,root,root) %{_bindir}/expand
255 %attr(755,root,root) %{_bindir}/expr
256 %attr(755,root,root) %{_bindir}/factor
257 %attr(755,root,root) %{_bindir}/fmt
258 %attr(755,root,root) %{_bindir}/fold
259 %attr(755,root,root) %{_bindir}/getgid
260 %attr(755,root,root) %{_bindir}/groups
261 %attr(755,root,root) %{_bindir}/head
262 %attr(755,root,root) %{_bindir}/hostid
263 %attr(755,root,root) %{_bindir}/install
264 %attr(755,root,root) %{_bindir}/join
265 %attr(755,root,root) %{_bindir}/logname
266 %attr(755,root,root) %{_bindir}/md5sum
267 %attr(755,root,root) %{_bindir}/mkfifo
268 %attr(755,root,root) %{_bindir}/nl
269 %attr(755,root,root) %{_bindir}/nohup
270 %attr(755,root,root) %{_bindir}/nproc
271 %attr(755,root,root) %{_bindir}/numfmt
272 %attr(755,root,root) %{_bindir}/od
273 %attr(755,root,root) %{_bindir}/paste
274 %attr(755,root,root) %{_bindir}/pathchk
275 %attr(755,root,root) %{_bindir}/pinky
276 %attr(755,root,root) %{_bindir}/pr
277 %attr(755,root,root) %{_bindir}/printenv
278 %attr(755,root,root) %{_bindir}/ptx
279 %attr(755,root,root) %{_bindir}/readlink
280 %attr(755,root,root) %{_bindir}/realpath
281 %attr(755,root,root) %{_bindir}/runcon
282 %attr(755,root,root) %{_bindir}/seq
283 %attr(755,root,root) %{_bindir}/sha1sum
284 %attr(755,root,root) %{_bindir}/sha224sum
285 %attr(755,root,root) %{_bindir}/sha256sum
286 %attr(755,root,root) %{_bindir}/sha384sum
287 %attr(755,root,root) %{_bindir}/sha512sum
288 %attr(755,root,root) %{_bindir}/shred
289 %attr(755,root,root) %{_bindir}/shuf
290 %attr(755,root,root) %{_bindir}/split
291 %attr(755,root,root) %{_bindir}/stdbuf
292 %attr(755,root,root) %{_bindir}/sum
293 %attr(755,root,root) %{_bindir}/tac
294 %attr(755,root,root) %{_bindir}/tail
295 %attr(755,root,root) %{_bindir}/tee
296 %attr(755,root,root) %{_bindir}/test
297 %attr(755,root,root) %{_bindir}/timeout
298 %attr(755,root,root) %{_bindir}/tr
299 %attr(755,root,root) %{_bindir}/truncate
300 %attr(755,root,root) %{_bindir}/tsort
301 %attr(755,root,root) %{_bindir}/tty
302 %attr(755,root,root) %{_bindir}/unexpand
303 %attr(755,root,root) %{_bindir}/uniq
304 %attr(755,root,root) %{_bindir}/users
305 %attr(755,root,root) %{_bindir}/vdir
306 %attr(755,root,root) %{_bindir}/wc
307 %attr(755,root,root) %{_bindir}/who
308 %attr(755,root,root) %{_bindir}/whoami
309 %attr(755,root,root) %{_bindir}/yes
310 %attr(755,root,root) %{_sbindir}/chroot
311 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/DIR_COLORS
312 %config(noreplace) /etc/shrc.d/fileutils.csh
313 %config(noreplace) /etc/shrc.d/fileutils.sh
314 %dir %{_libdir}/coreutils
315 %attr(755,root,root) %{_libdir}/coreutils/libstdbuf.so
316 %{_mandir}/man1/arch.1*
317 %{_mandir}/man1/base64.1*
318 %{_mandir}/man1/basename.1*
319 %{_mandir}/man1/cat.1*
320 %{_mandir}/man1/chcon.1*
321 %{_mandir}/man1/chgrp.1*
322 %{_mandir}/man1/chmod.1*
323 %{_mandir}/man1/chown.1*
324 %{_mandir}/man1/chroot.1*
325 %{_mandir}/man1/cksum.1*
326 %{_mandir}/man1/comm.1*
327 %{_mandir}/man1/cp.1*
328 %{_mandir}/man1/csplit.1*
329 %{_mandir}/man1/cut.1*
330 %{_mandir}/man1/date.1*
331 %{_mandir}/man1/dd.1*
332 %{_mandir}/man1/df.1*
333 %{_mandir}/man1/dir.1*
334 %{_mandir}/man1/dircolors.1*
335 %{_mandir}/man1/dirname.1*
336 %{_mandir}/man1/du.1*
337 %{_mandir}/man1/echo.1*
338 %{_mandir}/man1/env.1*
339 %{_mandir}/man1/expand.1*
340 %{_mandir}/man1/expr.1*
341 %{_mandir}/man1/factor.1*
342 %{_mandir}/man1/false.1*
343 %{_mandir}/man1/fmt.1*
344 %{_mandir}/man1/fold.1*
345 %{_mandir}/man1/getgid.1*
346 %{_mandir}/man1/groups.1*
347 %{_mandir}/man1/head.1*
348 %{_mandir}/man1/hostid.1*
349 %{_mandir}/man1/id.1*
350 %{_mandir}/man1/install.1*
351 %{_mandir}/man1/join.1*
352 %{_mandir}/man1/link.1*
353 %{_mandir}/man1/ln.1*
354 %{_mandir}/man1/logname.1*
355 %{_mandir}/man1/ls.1*
356 %{_mandir}/man1/md5sum.1*
357 %{_mandir}/man1/mkdir.1*
358 %{_mandir}/man1/mkfifo.1*
359 %{_mandir}/man1/mknod.1*
360 %{_mandir}/man1/mktemp.1*
361 %{_mandir}/man1/mv.1*
362 %{_mandir}/man1/nice.1*
363 %{_mandir}/man1/nl.1*
364 %{_mandir}/man1/nohup.1*
365 %{_mandir}/man1/nproc.1*
366 %{_mandir}/man1/numfmt.1*
367 %{_mandir}/man1/od.1*
368 %{_mandir}/man1/paste.1*
369 %{_mandir}/man1/pathchk.1*
370 %{_mandir}/man1/pinky.1*
371 %{_mandir}/man1/pr.1*
372 %{_mandir}/man1/printenv.1*
373 %{_mandir}/man1/printf.1*
374 %{_mandir}/man1/ptx.1*
375 %{_mandir}/man1/pwd.1*
376 %{_mandir}/man1/readlink.1*
377 %{_mandir}/man1/realpath.1*
378 %{_mandir}/man1/rm.1*
379 %{_mandir}/man1/rmdir.1*
380 %{_mandir}/man1/runcon.1*
381 %{_mandir}/man1/seq.1*
382 %{_mandir}/man1/sha1sum.1*
383 %{_mandir}/man1/sha224sum.1*
384 %{_mandir}/man1/sha256sum.1*
385 %{_mandir}/man1/sha384sum.1*
386 %{_mandir}/man1/sha512sum.1*
387 %{_mandir}/man1/shred.1*
388 %{_mandir}/man1/shuf.1*
389 %{_mandir}/man1/sleep.1*
390 %{_mandir}/man1/sort.1*
391 %{_mandir}/man1/split.1*
392 %{_mandir}/man1/stat.1*
393 %{_mandir}/man1/stdbuf.1*
394 %{_mandir}/man1/stty.1*
395 %{_mandir}/man1/sum.1*
396 %{_mandir}/man1/sync.1*
397 %{_mandir}/man1/tac.1*
398 %{_mandir}/man1/tail.1*
399 %{_mandir}/man1/tee.1*
400 %{_mandir}/man1/test.1*
401 %{_mandir}/man1/timeout.1*
402 %{_mandir}/man1/touch.1*
403 %{_mandir}/man1/tr.1*
404 %{_mandir}/man1/true.1*
405 %{_mandir}/man1/truncate.1*
406 %{_mandir}/man1/tsort.1*
407 %{_mandir}/man1/tty.1*
408 %{_mandir}/man1/uname.1*
409 %{_mandir}/man1/unexpand.1*
410 %{_mandir}/man1/uniq.1*
411 %{_mandir}/man1/unlink.1*
412 %{_mandir}/man1/users.1*
413 %{_mandir}/man1/vdir.1*
414 %{_mandir}/man1/wc.1*
415 %{_mandir}/man1/who.1*
416 %{_mandir}/man1/whoami.1*
417 %{_mandir}/man1/yes.1*
418 %lang(cs) %{_mandir}/cs/man1/*
419 %lang(da) %{_mandir}/da/man1/*
420 %lang(de) %{_mandir}/de/man1/*
421 %lang(es) %{_mandir}/es/man1/*
422 %lang(fi) %{_mandir}/fi/man1/*
423 %lang(fr) %{_mandir}/fr/man1/*
424 %lang(hu) %{_mandir}/hu/man1/*
425 %lang(id) %{_mandir}/id/man1/*
426 %lang(it) %{_mandir}/it/man1/*
427 %lang(ja) %{_mandir}/ja/man1/*
428 %lang(ko) %{_mandir}/ko/man1/*
429 %lang(nl) %{_mandir}/nl/man1/*
430 %lang(pl) %{_mandir}/pl/man1/*
431 %lang(pt) %{_mandir}/pt/man1/*
432 %lang(ru) %{_mandir}/ru/man1/*
433 %lang(zh_CN) %{_mandir}/zh_CN/man1/*
434 %{_infodir}/coreutils.info*