- annihilated some man-pages-extra files/links and their removal; added some links...
[packages/man-pages.git] / man-pages.spec
1 #
2 # Conditional build:
3 %bcond_with     tars    # generate man-pages tars for other packages [not done yet]
4 #
5 Summary:        System manual pages from the Linux Documentation Project
6 Summary(de.UTF-8):      System-man-Seiten vom Linux Documentation Project
7 Summary(es.UTF-8):      Páginas de manual, del Proyecto de Documentación del Linux (LDP)
8 Summary(fi.UTF-8):      Suomenkieliset man-sivut
9 Summary(fr.UTF-8):      Pages man système du Projet de Documentation Linux
10 Summary(it.UTF-8):      Pagine di manuale
11 Summary(pl.UTF-8):      Podręczniki systemowe z Linux Documentation Project
12 Summary(pt.UTF-8):      Páginas de manual, do Projeto de Documentação do Linux (LDP)
13 Summary(pt_BR.UTF-8):   Páginas de manual, do Projeto de Documentação do Linux (LDP)
14 Summary(ru.UTF-8):      Страницы руководства из Проекта Документации на Линукс
15 Summary(tr.UTF-8):      Linux Belgeleme Projesinin sistem kılavuz sayfaları
16 Summary(uk.UTF-8):      Сторінки мануалу (man) з Linux Documentation Project
17 Name:           man-pages
18 Version:        4.11
19 Release:        2
20 License:        distributable
21 Group:          Documentation
22 %define         cs_version              0.17.20080113
23 %define         da_version              0.1.1
24 %define         de_version              0.5
25 %define         es_version              1.55
26 %define         es_extra_version        0.8a
27 %define         fi_version              0.2
28 %define         fr_version              3.03.0
29 %define         hu_version              20010119
30 %define         id_version              20011116
31 %define         it_version              4.08
32 %define         ja_version              20170615
33 %define         ko_version              20050219
34 %define         nl_version              0.13.3
35 %define         pl_version              20051105
36 %define         pt_version              1.39
37 %define         ro_version              0.2
38 #%%define       ru_version              0.98
39 %define         ru_asp_version          1.4
40 %define         tr_version              1.0.5
41 %define         zh_version              1.5.2
42 %define         posix_version           2013-a
43 Source0:        https://www.kernel.org/pub/linux/docs/man-pages/%{name}-%{version}.tar.xz
44 # Source0-md5:  c2f25e2367fc12267bb85abe7b39f173
45 Source1:        ftp://ftp.linux.cz/pub/localization/linux/czman/%{name}-cs-%{cs_version}.tar.bz2
46 # Source1-md5:  a3df67d98ab63a0a360cd0794ec87e0e
47 # there is no LDP man page here, yet - but include it in sources for completeness
48 Source2:        http://www.sslug.dk/locale/man-sider/manpages-da-%{da_version}.tar.gz
49 # Source2-md5:  d12ba0481d824c28a8b7d6b73e20d7c0
50 Source3:        http://www.infodrom.org/projects/manpages-de/download/manpages-de-%{de_version}.tar.gz
51 # Source3-md5:  6686b1be6da01cdbb5ea7511ddcf61a0
52 Source4:        http://www.ditec.um.es/~piernas/manpages-es/%{name}-es-%{es_version}.tar.bz2
53 # Source4-md5:  b71f701dcae827f2f5e4e848c66321fc
54 Source5:        http://www.ditec.um.es/~piernas/manpages-es/%{name}-es-extra-%{es_extra_version}.tar.gz
55 # Source5-md5:  5827f41f77658df17f550b7f8e831432
56 # extracted from http://www.ftp.funet.fi/index/sotlinux/bestlinux-2000R3/BL_2000_R3_FINAL/update/Finnish/man-pages-fi-0.2-1.src.rpm
57 # (despite archive filename it's 0.2 version)
58 Source6:        man-fi-0.1.tar.bz2
59 # Source6-md5:  bb266d3797cdf71bfbe1da190196f455
60 # TODO: http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/man-pages-fr-3.70-1.tar.xz - what is the original source?
61 #Source7Download: http://manpagesfr.free.fr/
62 Source7:        http://manpagesfr.free.fr/download/%{name}-fr-%{fr_version}.tar.bz2
63 # Source7-md5:  64046b022c7c8d559d78dd05f953261b
64 # there is also: http://manpagesfr.free.fr/download/man-pages-extras-fr-0.8.1.tar.bz2
65 # and: http://manpagesfr.free.fr/download/man-pages-sup-fr-20080606.tar.bz2
66 #Source8:       http://download.uhulinux.hu/sources/man-pages-hu/man_hu_%{hu_version}.tar.gz (older)
67 Source8:        http://ftp.debian.org/debian/pool/main/m/manpages-hu/manpages-hu_%{hu_version}.orig.tar.gz
68 # Source8-md5:  742b682c5237a1e370b28f363826b2d5
69 # there is no LDP man page here, yet, but included for completeness
70 # based on http://nakula.rvs.uni-bielefeld.de/made/my_project/ManPage/ (dead now)
71 Source9:        http://www.mif.pg.gda.pl/homepages/ankry/man-pages/%{name}-from-www-id-%{id_version}.tar.gz
72 # Source9-md5:  34a69de42ec4ae8180b947f8777a3e7a
73 # available also as http://
74 Source10:       ftp://ftp.pluto.linux.it/pub/pluto/ildp/man/%{name}-it-%{it_version}.tar.xz
75 # Source10-md5: 869cf8ff2aa5c11b8d15d1ba7a47f4fa
76 # note: man-pages-it-extra-0.5.0.tar.gz is also covered by the above version
77 #Source11Download: http://linuxjm.osdn.jp/download.html
78 Source11:       http://linuxjm.osdn.jp/%{name}-ja-%{ja_version}.tar.gz
79 # Source11-md5: ee20907738e957d4956197bb0163c9cd
80 Source12:       http://download.kldp.net/man/man-pages-ko/%{ko_version}/%{name}-ko-%{ko_version}.tar.gz
81 # Source12-md5: e31dc6a51c02436371373dedaeeeacab
82 # TODO: check 20051127 in Debian/Ubuntu?
83 Source13:       ftp://ftp.nl.linux.org/pub/DOC-NL/manpages-nl/manpages-nl-%{nl_version}.tar.gz
84 # Source13-md5: b37b0216a87db7583e88ba87031a0b4a
85 # TODO: PTM has been overtaken by new project at http://manpages-pl.sourceforge.net/
86 # http://downloads.sourceforge.net/manpages-pl/manpages-pl-%{pl_version}.tar.bz2 with pl_version=0.6
87 Source14:       %{name}-pl-PTM-snapshot.%{pl_version}.tar.bz2
88 # Source14-md5: b9b5751fcde4c36022850d0e5a4757d3
89 Source15:       http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/%{name}-pt_BR-%{pt_version}.tgz
90 # Source15-md5: 3f8db6dd6a7884b595e70f624ac93735
91 # no LDP man pages yet
92 Source16:       http://www.rolix.org/man/arhiva/man-pages-ro-%{ro_version}.tar.gz
93 # Source16-md5: ac5b2c970a31cb721e068ff80e5bd466
94 # TODO: http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/man-pages-ru-3.81-20160117.tar.bz2 - what is the original source?
95 #Source17:      http://linuxshare.ru/projects/trans/manpages-ru-%{ru_version}.tar.bz2
96 # ASP-linux have more up-to-date manpages (but 0.98 contains some updated pages)
97 Source17:       http://www.mif.pg.gda.pl/homepages/ankry/man-pages/manpages-ru-asp-%{ru_asp_version}.tar.bz2
98 # Source17-md5: fffb27648417c8dd551e2a4403eefc64
99 Source18:       http://downloads.sourceforge.net/belgeler/man-pages-tr-%{tr_version}.tar.gz
100 # Source18-md5: 8f322a60c80e31c34ef8979edaf68aae
101 Source19:       http://www.linux.org.ua/twiki/pub/Projects/ManUk/man-pages-uk_UA.alfa.tar.gz
102 # Source19-md5: 89576c5b51bb83c8bfa8bda794b96e21
103 #Source20Download: https://github.com/lidaobing/manpages-zh/releases
104 # also newer git snapshot available at http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/man-pages-zh-20141004.zip
105 Source20:       https://github.com/lidaobing/manpages-zh/archive/v%{zh_version}/manpages-zh-%{zh_version}.tar.gz
106 # Source20-md5: 1bbdc4f32272df0b95146518b27bf4be
107 Source30:       https://www.kernel.org/pub/linux/docs/man-pages/man-pages-posix/man-pages-posix-%{posix_version}.tar.xz
108 # Source30-md5: 825fde78e6fddd02426ecdd50e2cbe0d
109 Source50:       %{name}-links.list
110 Source100:      %{name}-tars.list
111 Patch0:         %{name}-zh_fixes.patch
112 Patch1:         %{name}-misc.patch
113 Patch2:         %{name}-extra.patch
114 Patch3:         %{name}-tr-bash.patch
115 Patch4:         %{name}-misc-localized.patch
116 Patch5:         %{name}-cs-bash.patch
117 Patch10:        %{name}-extra-files.patch
118 URL:            https://www.kernel.org/doc/man-pages/
119 BuildRequires:  autoconf >= 2.61
120 BuildRequires:  automake
121 BuildRequires:  rpmbuild(macros) >= 1.566
122 BuildRequires:  sed >= 4.0
123 # for man-pages-zh
124 BuildRequires:  zh-autoconvert
125 # for man-pages-tr
126 BuildRequires:  zlib-devel
127 Obsoletes:      man-pages-cs
128 Obsoletes:      man-pages-de
129 Obsoletes:      man-pages-es
130 Obsoletes:      man-pages-fi
131 Obsoletes:      man-pages-fr
132 Obsoletes:      man-pages-hu
133 Obsoletes:      man-pages-it
134 Obsoletes:      man-pages-ja
135 Obsoletes:      man-pages-ko
136 Obsoletes:      man-pages-nl
137 Obsoletes:      man-pages-pl
138 Obsoletes:      man-pages-pt
139 Obsoletes:      man-pages-pt_BR
140 Obsoletes:      man-pages-ru
141 Obsoletes:      man-pages-ru-asp
142 Obsoletes:      man-pages-uk
143 Obsoletes:      man-pages-zh
144 Obsoletes:      manpages-hu
145 Conflicts:      attr-devel < 2.2.0-2
146 Conflicts:      kbd < 1.12-9
147 Conflicts:      keyutils < 1.5.10
148 Conflicts:      libcap < 1:1.10-5
149 Conflicts:      lirc < 0.9.3a-2
150 BuildArch:      noarch
151 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
152 AutoReqProv:    no
153
154 # languages of packaged man pages
155 # note: pt_BR is omitted here, these manuals are packaged as pt
156 %define man_langs       cs da de es fi fr hu id it ja ko nl pl pt ru tr uk zh_CN zh_TW
157
158 %description
159 A large collection of man pages covering programming APIs, file
160 formats, protocols, etc.
161
162 - section 1: user commands (intro only)
163 - section 2: system calls
164 - section 3: libc calls (intro only)
165 - section 4: devices (e.g., hd, sd)
166 - section 5: file formats and protocols (e.g., wtmp, /etc/passwd, nfs)
167 - section 6: games (intro only)
168 - section 7: conventions, macro packages, etc. (e.g., nroff, ascii)
169 - section 8: system administration (intro only)
170
171 %description -l de.UTF-8
172 Eine große Sammlung von man-Seiten über Programmier-APIs,
173 Dateiformate, Protokolle, usw..
174
175 - section 1: Benutzerbefehle (nur intro)
176 - section 2: Systemaufrufe
177 - section 3: libc-Aufrufe (nur intro)
178 - section 4: Geräte (z.B. hd, sd)
179 - section 5: Dateiformate und Protokolle (z.B. wtmp, /etc/passwd, nfs)
180 - section 6: Spiele (nur intro)
181 - section 7: Konventionen, Makro-Pakete, usw. (z.B. nroff, ascii)
182 - section 8: Systemverwaltung (nur intro)
183
184 %description -l es.UTF-8
185 Una larga colección de páginas de manuales cubriendo programación
186 APIs, formatos de archivos, protocolos, etc.
187
188 - seción 1: comandos de usuario (solamente introducción)
189 - seción 2: llamadas de sistema
190 - seción 3: llamadas libc (solamente introducción)
191 - seción 4: dispositivos (ej.: hd, sd)
192 - seción 5: formatos de archivos y protocolos (ej: wtmp, /etc/passwd,
193   nfs)
194 - seción 6: juegos (solamente introducción)
195 - seción 7: convenciones, paquetes de macros, etc. (ej: nroff, ascii)
196 - seción 8: administración de sistema (solamente introducción)
197
198 %description -l fi.UTF-8
199 Kokoelma man-sivujen käännöksiä suomenkielelle. Sivuja on mukana
200 yhteensä 211 kpl ja ne on paketoitu 14.11.1999 mennessä valmiina
201 olleista sivuista. Sivut ovat osista 1 (komennot) ja 2 (pelit).
202
203 %description -l fr.UTF-8
204 Une large collection de pages de manuel du Project de Documentation
205 Linux (LDP), traduites en Français. Les pages de manuel sont
206 organisées en differentes sections :
207
208 - section 1: Commandes utilisateur (intro seulement)
209 - section 2: Appels système
210 - section 3: Appels de la Libc (intro seulement)
211 - section 4: Périphériques (par ex. hd, sd)
212 - section 5: Formats de fichiers et de protocoles (par ex. wtmp,
213   /etc/passwd, nfs)
214 - section 6: Jeux (intro seulement)
215 - section 7: Conventions, macro packages, etc. (par ex. nroff, ascii)
216 - section 8: Administration système (intro seulement)
217
218 %description -l it.UTF-8
219 Traduzioni italiane delle pagine di manuale per Linux: questo
220 pacchetto include non solo quelle dell'LDP, ma anche traduzioni di
221 altre pagine di uso comune. ATTENZIONE: alcune pagine sono obsolete!
222
223 %description -l pl.UTF-8
224 Pakiet ten zawiera dużą kolekcję podręczników ekranowych (man pages),
225 opisujących format plików, protokoły itp.
226
227 - sekcja 1: polecenia użytkowników (tylko wstęp)
228 - sekcja 2: wywołania systemowe
229 - sekcja 3: wywołania bibliotek (tylko wstęp)
230 - sekcja 4: urządzenia (np., hd, sd)
231 - sekcja 5: format plików i protokoły (np., wtmp, /etc/passwd, nfs)
232 - sekcja 6: gry (tylko wstęp)
233 - sekcja 7: konwencje, makro-pakiety, itp. (np., nroff, ascii)
234 - sekcja 8: administracja systemu (tylko wstęp)
235
236 %description -l pt.UTF-8
237 Uma larga coleção de páginas de manuais cobrindo programação APIs,
238 formatos de arquivos, protocolos, etc.
239
240 - seção 1: comandos de usuário (somente introdução)
241 - seção 2: chamadas de sistema
242 - seção 3: chamadas libc (somente introdução)
243 - seção 4: dispositivos (ex.: hd, sd)
244 - seção 5: formatos de arquivos e protocolos (ex: wtmp, /etc/passwd,
245   nfs)
246 - seção 6: jogos (somente introdução)
247 - seção 7: convenções, pacotes de macros, etc. (ex: nroff, ascii)
248 - seção 8: administração de sistema (somente introdução)
249
250 %description -l pt_BR.UTF-8
251 Uma larga coleção de páginas de manuais cobrindo programação APIs,
252 formatos de arquivos, protocolos, etc.
253
254 - seção 1: comandos de usuário (somente introdução)
255 - seção 2: chamadas de sistema
256 - seção 3: chamadas libc (somente introdução)
257 - seção 4: dispositivos (ex.: hd, sd)
258 - seção 5: formatos de arquivos e protocolos (ex: wtmp, /etc/passwd,
259   nfs)
260 - seção 6: jogos (somente introdução)
261 - seção 7: convenções, pacotes de macros, etc. (ex: nroff, ascii)
262 - seção 8: administração de sistema (somente introdução)
263
264 %description -l ru.UTF-8
265 Небольшая коллекция страниц руководства из Проекта Документации на
266 Линукс. Страницы руководства организованы следующим образом:
267
268 - секция 1: команд пользователя (только введение)
269 - секция 2: системные вызовы
270 - секция 3: функции библиотеки языка C (только введение)
271 - секция 4: устройства (например, hd, sd)
272 - секция 5: форматы файлов и протоколы (например, wtmp, /etc/passwd,
273   nfs)
274 - секция 6: игры (только введение)
275 - секция 7: соглашения, макро-пакеты, и т. п. (например, nroff, ascii)
276 - секция 8: утилиты администратора (только введение)
277
278 %description -l tr.UTF-8
279 Programlama arayüzlerini, dosya formatlarını, protokolleri vs.
280 kapsayan, geniş bir kılavuz sayfaları derlemesi.
281
282 %description -l uk.UTF-8
283 Великий набір сторінок мануалу (документації) з Linux Documentation
284 Project (LDP). Сторінки організовані у такі секції: Секція 1, команди
285 користувача (тільки вступ); Секція 2, системні виклики; Секція 3,
286 виклики libc; Секція 4, пристрої (наприклад, hd, sd); Секція 5,
287 формати файлів та протоколи (наприклад, wtmp, /etc/passwd, nfs);
288 Секція 6, ігри (тільки вступ); Секція 7, угоди, макропакети і т.і.
289 (наприклад, nroff, ascii); Секція 8, системне адміністрування (тільки
290 вступ).
291
292 %package posix
293 Summary:        POSIX manual pages from the Linux Documentation Project
294 Summary(de.UTF-8):      POSIX-man-Seiten vom Linux Documentation Project
295 Summary(pl.UTF-8):      Podręczniki systemowe z Linux Documentation Project dotyczące POSIX
296 Group:          Documentation
297
298 %description posix
299 Part of POSIX 1003.1-2003 in man pages format.
300
301 %description posix -l pl.UTF-8
302 Fragmenty POSIX 1003.1-2003 w postaci stron podręcznika systemowego.
303
304 %prep
305 %setup -q -c -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a13 -a14 -a15 -a16 -a17 -a18 -a19 -a20 -a30
306 %patch0 -p1 -d manpages-zh-%{zh_version}
307 %patch3 -p1 -d man-pages-tr-%{tr_version}
308 %patch5 -p1 -d man-pages-cs-%{cs_version}
309 # man-pages-extra
310 %patch10 -p0
311 %patch2 -p0 -d man-pages-extra
312 install -d man-pages-extra/C
313 %{__mv} man-pages-extra/man* man-pages-extra/C
314 # extra so links (via man-pages-extra)
315 while read LINE ; do
316         if echo "$LINE" | grep -q '^#' ; then
317                 continue
318         fi
319         set -- $LINE
320         install -d man-pages-extra/${1}/$(dirname $2)
321         if [ -f man-pages-extra/${1}/${2} ]; then
322                 echo "man-pages-extra/${1}/${2} already exists!"
323                 exit 1
324         fi
325         echo ".so $3" >>man-pages-extra/${1}/${2}
326 done < %{SOURCE50}
327
328 # prepare somehow unified source trees
329 install -d src
330 %{__mv} man-pages-%{version} src/C
331 %{__mv} man-pages-posix-%{posix_version}/man*p src/C
332 %{__mv} man-pages-cs-%{cs_version} src/cs
333 %{__mv} manpages-da-%{da_version} src/da
334 %{__mv} manpages-de-%{de_version} src/de
335 %{__mv} man-pages-es-%{es_version} src/es
336 %{__mv} manpages-fi src/fi
337 %{__mv} man-pages-fr-%{fr_version} src/fr
338 %{__mv} manpages-hu-%{hu_version}.orig/usr/share/man/hu src/hu
339 install -d src/id/man{1,8}
340 %{__mv} man-pages-it-%{it_version} src/it
341 %{__mv} man-pages-ja-%{ja_version} src/ja
342 install -d src/ko
343 tar xzf %{SOURCE12} -C src/ko
344 %{__mv} manpages-nl-%{nl_version} src/nl
345 %{__mv} pl_PL src/pl
346 %{__mv} man-pages-%{pt_version}-pt_BR src/pt_BR
347 %{__mv} man-ro src/ro
348 %{__mv} manpages-ru-asp-%{ru_asp_version} src/ru
349 %{__mv} man-pages-tr-%{tr_version} src/tr
350 %{__mv} man-pages-uk_UA.alfa src/uk
351 %{__mv} manpages-zh-%{zh_version} src/zh
352
353 # unify trees for easier processing (where possible)
354
355 # da: add man1 subdir
356 install -d src/da/man1
357 %{__mv} src/da/*.1 src/da/man1
358
359 # es: merge in "extra" pages
360 # skip pages already in main es
361 %{__rm} man-pages-es-extra-%{es_extra_version}/man3/dl*.3
362 %{__rm} man-pages-es-extra-%{es_extra_version}/man5/{acct,host.conf,resolv.conf,resolver}.5
363 %{__rm} man-pages-es-extra-%{es_extra_version}/man8/ld.so.8
364 for f in 1 2 4 5 6 7 8 ; do
365         mv -i man-pages-es-extra-%{es_extra_version}/man${f}/* src/es/man${f}
366 done
367
368 # it: merge per-package trees
369 %{__mv} src/it/man-pages/man? src/it
370 for f in 1 4 5 8 9 ; do
371         mv -i src/it/*/man${f}/* src/it/man${f}
372 done
373
374 # ja: merge per-package trees
375 %{__mv} src/ja/manual/LDP_man-pages/man* src/ja
376 # duplicates of LDP man pages
377 %{__rm} -r src/ja/manual/{gnumaniak,ld.so,modutils/man2,glibc-linuxthreads/man3,man/man1/{apropos,man,whatis}.1,netkit/{man3/{daemon,err,login}.3,man5/ftpusers.5},bind/{man5/resolver.5,man7/mailaddr.7},util-linux/man1/tailf.1}
378 # shadow manuals already in shadow package
379 %{__rm} -r src/ja/manual/shadow
380 # dhcp 3 not dhcp2
381 %{__rm} -r src/ja/manual/dhcp2
382 # nfs-utils not nfs-server
383 %{__rm} -r src/ja/manual/nfs-server
384 # ypbind-mt not ypbind
385 %{__rm} -r src/ja/manual/ypbind
386 # we use: net-tools/hostname, util-linux/{kill,write}, SysVinit/{last,mesg,wall,halt,reboot,shutdown}, textutils/od, quota/rquotad
387 %{__rm} src/ja/manual/{GNU_sh-utils/man1/hostname.1,procps/man1/kill.1,util-linux/man1/{last,mesg,od,wall}.1,netkit/man1/write.1,nfs-utils/man8/rquotad.8,util-linux/man8/{halt,reboot,shutdown}.8}
388 # following modutils changes
389 for f in src/ja/manual/modutils/man8/{depmod,insmod,lsmod,modinfo,modprobe,rmmod} ; do
390         %{__mv} ${f}.8 ${f}.modutils.8
391 done
392 # avoid filename conflict
393 %{__mv} src/ja/manual/netkit/man8/ftpd.{8,8n}
394 # remove files existing in main man-pages tarball
395 # note: (should we keep those from main tarball or ja tarball?)
396 %{__rm} src/ja/manual/GNU_fileutils/man1/{chgrp,chmod,chown,cp,dd,df,du,install,ln,ls,mkdir,mkfifo,mknod,mv,rm,rmdir,touch}.1
397 %{__rm} src/ja/manual/GNU_sh-utils/man1/{basename,chroot,date,dirname,echo,env,expr,false,groups,hostid,id,logname,nice,nohup,pathchk,printenv,printf,pwd,sleep,stty,su,tee,test,true,tty,uname,users,who,whoami,yes}.1
398 %{__rm} src/ja/manual/GNU_textutils/man1/{cat,cksum,comm,csplit,cut,expand,fmt,fold,head,join,md5sum,nl,od,paste,pr,sort,split,sum,tac,tail,tr,unexpand,uniq,wc}.1
399 %{__rm} src/ja/manual/lpr-linux/man1/{lpq,lpr,lprm}.1
400 %{__rm} src/ja/manual/net-tools/man1/hostname.1
401 %{__rm} src/ja/manual/netatalk/man1/timeout.1
402 %{__rm} src/ja/manual/procps/man1/uptime.1
403 %{__rm} src/ja/manual/util-linux/man1/{arch,kill}.1
404 %{__rm} src/ja/manual/util-linux/man8/sln.8
405 %{__rm} src/ja/manual/bind/man7/hostname.7
406 %{__rm} src/ja/manual/cups/man8/lpc.8
407 for f in 1 3 4 5 6 7 8 ; do
408         mv -i src/ja/manual/*/man${f}/* src/ja/man${f}
409 done
410
411 # zh_CN: cleanup must be done after build (in build stage)
412
413 # individual man pages fixes
414
415 # unify name
416 %{__mv} src/de/man7/{iso_8859_1,iso_8859-1}.7
417 %{__mv} src/es/man4/magic.4 src/es/man5/magic.5
418 %{__mv} src/es/man8/sync.8 src/es/man1/sync.1
419 %{__mv} src/fr/man8/sync.8 src/fr/man1/sync.1
420 %{__mv} src/hu/man1/gpm.1 src/hu/man8/gpm.8
421 # man1/sync.1 already exists
422 %{__rm} src/hu/man8/sync.8
423 %undos src/it/man7/{iso-8859-2,iso_8859_2}.7
424 %{__mv} src/ja/man4/magic.4 src/ja/man5/magic.5
425 %{__mv} src/ja/man8/nslookup.8 src/ja/man1/nslookup.1
426 %{__mv} src/ko/man8/sync.8 src/ko/man1/sync.1
427 # filename typo?
428 %{__mv} src/pl/man5/{at_acces,at_access}.5
429 # man1/sync.1 already exists
430 %{__rm} src/pl/man8/sync.8
431 %{__mv} src/pt_BR/man8/sync.8 src/pt_BR/man1/sync.1
432 %{__mv} src/ru/man8/sync.8 src/ru/man1/sync.1
433 # zh: handler later (after build)
434
435 %patch1 -p1 -d src/C
436 %patch4 -p1 -d src
437
438 # patching creates backups
439 find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -rf
440
441 # merge our "extra" tarball
442
443 # apply man-pages-extra, preventing overwriting of already existing man pages
444 for d in man-pages-extra/C/man* ; do
445         mv -i $d/*.* src/C/${d#man-pages-extra/C/}
446 done
447 # note: cs and zh_CN are omitted here and processed later
448 for d in man-pages-extra/{de,es,fi,fr,hu,id,it,ja,ko,nl,pl,pt_BR,ru}/man* ; do
449         mv -i $d/*.* src/${d#man-pages-extra/}
450 done
451 for d in man-pages-extra/zh_CN/man* ; do
452         mv -i $d/*.* src/zh/src/${d#man-pages-extra/zh_CN/}
453 done
454
455 ln -sf pt_BR src/pt
456
457 # remove man pages existing in other packages
458
459 # time
460 %{__rm} src/C/man1/time.1
461 # ftp servers
462 %{__rm} src/C/man5/ftpusers.5
463
464 %build
465 # some man-pages require build step
466
467 # cs: prepare man pages and apply extra
468 LANG=en_GB.UTF-8 \
469 %{__make} -C src/cs latest
470 %{__mv} src/cs/latest/man* src/cs
471 rmdir src/cs/latest
472 for d in man-pages-extra/cs/man* ; do
473         mv -i $d/*.* src/${d#man-pages-extra/}
474 done
475
476 # tr: make man pages from XML (note: compiles some utility)
477 %{__make} -C src/tr/source
478 find src/tr/tr -name '*.gz' | xargs gzip -d
479 %{__mv} src/tr/tr/man* src/tr
480
481 # zh: prepare zh_CN and zh_TW
482 cd src/zh
483 %{__aclocal}
484 %{__autoconf}
485 %{__automake}
486 %configure
487 %{__make}
488 cd ../..
489 for l in zh_CN zh_TW ; do
490 install -d src/${l}
491 for d in man{1,2,3,4,5,6,7,8,n} ; do
492 ln -snf ../zh/src/${d}/${l} src/${l}/${d}
493 done
494 done
495 # zh_*: man1/sync.1 already exists
496 %{__rm} src/zh_CN/man8/sync.8
497 %{__rm} src/zh_TW/man8/sync.8
498
499 # per-package lists / tarballs production
500 package=NONE
501 while read line ; do
502         if echo $line | grep -q '^\[.\+\]$' ; then
503                 package=`echo $line | sed -e 's/^\[//;s/\]$//;'`
504         elif ! echo $line | grep -q '^#' ; then
505                 if [ -f "src/C/$line" ]; then
506                         echo "$line" >> ${package}-man.list
507                 fi
508                 for l in %{man_langs} ; do
509                         if [ -f "src/$l/$line" ]; then
510                                 echo "$l/$line" >> ${package}-man.list
511                         fi
512                 done
513         fi
514 done < %{SOURCE100}
515 %if %{with tars}
516 rm -rf tarsrc tar
517 install -d tarsrc tar
518 cd tarsrc
519 ln -snf ../src/[!C]* ../src/C/man* ../man-pages-extra/README.*-pages .
520 cd ..
521 for l in *-man.list ; do
522         t=`basename $l .list`
523         if [ -f tarsrc/README.${t}-pages ]; then
524                 echo "README.${t}-pages" >> "$l"
525         fi
526         tar cJf tar/${t}-pages.tar.xz -C tarsrc --files-from "$l"
527 done
528 %endif
529
530 %install
531 rm -rf $RPM_BUILD_ROOT
532 install -d $RPM_BUILD_ROOT%{_mandir}/man{1,2,3,4,5,6,7,8,0p,1p,3p}
533
534 # install C man pages
535 for n in src/C/man{1,2,3,4,5,6,7,8,0p,1p,3p}/*; do
536         bn=${n#src/C/}
537         install -m644 $n $RPM_BUILD_ROOT%{_mandir}/$bn
538 done
539 # drop man pages packaged separately
540 grep '^man' glibc-man.list | sed -e "s,^,$RPM_BUILD_ROOT%{_mandir}/," | xargs -r %{__rm}
541 # rpcbind, formerly glibc
542 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/rpcinfo.8
543 # gawk
544 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{gawk,igawk}.1
545 # libaio
546 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/{aio_init,lio_listio}.3
547 # shadow (but not pwdutils!); shadow(5) is missing in pwdutils too
548 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man5/passwd.5
549
550 # install localized man pages, only for installed C man pages
551 for l in %{man_langs} ; do
552         install -d $RPM_BUILD_ROOT%{_mandir}/$l/man{1,2,3,4,5,6,7,8}
553         for n in $RPM_BUILD_ROOT%{_mandir}/man{1,2,3,4,5,6,7,8}/*; do
554                 bn=$(basename $(dirname $n))/$(basename $n)
555                 if [ -f src/$l/$bn ]; then
556                         install -m644 src/$l/$bn $RPM_BUILD_ROOT%{_mandir}/$l/$bn
557                 fi
558         done
559 done
560
561 # files with just .so links pointing to non-existing man pages
562 # modules.2
563 %{__rm} $RPM_BUILD_ROOT%{_mandir}/de/man2/{create_module,delete_module,get_kernel_syms,init_module}.2
564 # obsolete.2
565 %{__rm} $RPM_BUILD_ROOT%{_mandir}/{cs,de,es,ko,nl,pl,pt,ru}/man2/{oldfstat,oldlstat,oldolduname,oldstat,olduname}.2
566 # undocumented.7 (exists in es, but not installed because it's not in C manuals)
567 %{__rm} $RPM_BUILD_ROOT%{_mandir}/es/man5/networks.5
568 # clock_getres.3 (packaged in glibc, but these links exist only in fr manuals, not C)
569 %{__rm} $RPM_BUILD_ROOT%{_mandir}/fr/man2/{clock_getres,clock_gettime,clock_settime}.2
570 # undocumented.7
571 %{__rm} $RPM_BUILD_ROOT%{_mandir}/ru/man5/networks.5
572 # statfs.2
573 %{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man2/fstatfs.2
574
575 %clean
576 rm -rf $RPM_BUILD_ROOT
577
578 %files
579 %defattr(644,root,root,755)
580 %{_mandir}/man1/*.1*
581 %{_mandir}/man2/*.2*
582 %{_mandir}/man3/*.3*
583 %{_mandir}/man4/*.4*
584 %{_mandir}/man5/*.5*
585 %{_mandir}/man6/*.6*
586 %{_mandir}/man7/*.7*
587 %{_mandir}/man8/*.8*
588 %lang(cs) %{_mandir}/cs/man*/*
589 %lang(de) %{_mandir}/de/man*/*
590 %lang(es) %{_mandir}/es/man*/*
591 %lang(fi) %{_mandir}/fi/man*/*
592 %lang(fr) %{_mandir}/fr/man*/*
593 %lang(hu) %{_mandir}/hu/man*/*
594 %lang(it) %{_mandir}/it/man*/*
595 %lang(ja) %{_mandir}/ja/man*/*
596 %lang(ko) %{_mandir}/ko/man*/*
597 %lang(nl) %{_mandir}/nl/man*/*
598 %lang(pl) %{_mandir}/pl/man*/*
599 %lang(pt) %{_mandir}/pt/man*/*
600 # packaged as plain pt for now
601 #%lang(pt_BR) %{_mandir}/pt_BR/man*/*
602 %lang(ru) %{_mandir}/ru/man*/*
603 %lang(tr) %{_mandir}/tr/man*/*
604 %lang(uk) %{_mandir}/uk/man*/*
605 %lang(zh_CN) %{_mandir}/zh_CN/man*/*
606 %lang(zh_TW) %{_mandir}/zh_TW/man*/*
607
608 %files posix
609 %defattr(644,root,root,755)
610 %dir %{_mandir}/man0p
611 %{_mandir}/man0p/*.0p*
612 %dir %{_mandir}/man1p
613 %{_mandir}/man1p/*.1p*
614 %dir %{_mandir}/man3p
615 %{_mandir}/man3p/*.3p*
This page took 0.084443 seconds and 3 git commands to generate.