-# TODO: fix cs
#
# Conditional build:
%bcond_with tars # generate man-pages tars for other packages [not done yet]
Summary(tr.UTF-8): Linux Belgeleme Projesinin sistem kılavuz sayfaları
Summary(uk.UTF-8): Сторінки мануалу (man) з Linux Documentation Project
Name: man-pages
-Version: 3.72
+Version: 4.00
Release: 1
License: distributable
Group: Documentation
%define fr_version 3.03.0
%define hu_version 20010119
%define id_version 20011116
-%define it_version 3.64
-%define ja_version 20140815
+%define it_version 3.80
+%define ja_version 20150415
%define ko_version 20050219
%define nl_version 0.13.3
%define pl_version 20051105
%define zh_version 1.5
%define posix_version 2013-a
Source0: https://www.kernel.org/pub/linux/docs/man-pages/%{name}-%{version}.tar.xz
-# Source0-md5: 3ca69a6263d9863ccace2e53b9bcff86
+# Source0-md5: 3401eb0020c56639070d199c3e59a4f8
Source1: ftp://ftp.linux.cz/pub/localization/linux/czman/%{name}-cs-%{cs_version}.tar.bz2
# Source1-md5: a3df67d98ab63a0a360cd0794ec87e0e
# there is no LDP man page here, yet - but include it in sources for completeness
# Source9-md5: 34a69de42ec4ae8180b947f8777a3e7a
# available also as http://
Source10: ftp://ftp.pluto.linux.it/pub/pluto/ildp/man/%{name}-it-%{it_version}.tar.xz
-# Source10-md5: a7607a5e9674c0f0732e10f5c61b8f35
+# Source10-md5: d386f809a0d61a99b53d3a7cfb85a3d9
# note: man-pages-it-extra-0.5.0.tar.gz is also covered by the above version
#Source11Download: http://linuxjm.sourceforge.jp/download.html
Source11: http://linuxjm.sourceforge.jp/%{name}-ja-%{ja_version}.tar.gz
-# Source11-md5: f81250198f28680308e2b0a403dbbd94
+# Source11-md5: 8c3e2cd683675c5a70a75f0361c8f6c5
Source12: http://download.kldp.net/man/man-pages-ko/%{ko_version}/%{name}-ko-%{ko_version}.tar.gz
# Source12-md5: e31dc6a51c02436371373dedaeeeacab
# TODO: check 20051127 in Debian/Ubuntu?
# ASP-linux have more up-to-date manpages (but 0.98 contains some updated pages)
Source17: http://www.mif.pg.gda.pl/homepages/ankry/man-pages/manpages-ru-asp-%{ru_asp_version}.tar.bz2
# Source17-md5: fffb27648417c8dd551e2a4403eefc64
-Source18: http://download.sourceforge.net/belgeler/man-pages-tr-%{tr_version}.tar.gz
+Source18: http://downloads.sourceforge.net/belgeler/man-pages-tr-%{tr_version}.tar.gz
# Source18-md5: 8f322a60c80e31c34ef8979edaf68aae
Source19: http://www.linux.org.ua/twiki/pub/Projects/ManUk/man-pages-uk_UA.alfa.tar.gz
# Source19-md5: 89576c5b51bb83c8bfa8bda794b96e21
Source50: %{name}-extra.tar.bz2
# Source50-md5: 15d763c5221088dcb15ba8ae95f6d239
Source100: %{name}-tars.list
-Patch0: %{name}-localtime.patch
-Patch1: %{name}-zh_fixes.patch
-Patch2: %{name}-misc.patch
-Patch3: %{name}-extra.patch
-Patch4: %{name}-tr-bash.patch
-Patch5: %{name}-misc-localized.patch
+Patch0: %{name}-zh_fixes.patch
+Patch1: %{name}-misc.patch
+Patch2: %{name}-extra.patch
+Patch3: %{name}-tr-bash.patch
+Patch4: %{name}-misc-localized.patch
+Patch5: %{name}-cs-bash.patch
URL: https://www.kernel.org/doc/man-pages/
BuildRequires: rpmbuild(macros) >= 1.566
BuildRequires: sed >= 4.0
%prep
%setup -q -c -a1 -a2 -a3 -a4 -a5 -a6 -a7 -a8 -a9 -a10 -a11 -a13 -a14 -a15 -a16 -a17 -a18 -a19 -a20 -a30
-cd man-pages-%{version}
-%patch0 -p1
-cd ../man-pages-zh_CN-%{zh_version}
-%patch1 -p1
-cd ../man-pages-tr-%{tr_version}
-%patch4 -p1
-cd ..
+%patch0 -p1 -d man-pages-zh_CN-%{zh_version}
+%patch3 -p1 -d man-pages-tr-%{tr_version}
+%patch5 -p1 -d man-pages-cs-%{cs_version}
install -d man-pages-extra
bzip2 -dc %{SOURCE50} | tar xf - -C man-pages-extra
-cd man-pages-extra
-%patch3 -p0
-cd ..
+#cd man-pages-extra
+%patch2 -p0 -d man-pages-extra
+#cd ..
# prepare somehow unified source trees
install -d src
# unify trees for easier processing (where possible)
-# cs: replace symlinks by .so pointers
-for l in `find src/cs -type l` ; do
- t=`readlink "$l"`
- rm -f "$l"
- echo ".so $t" > "$l"
-done
-
# da: add man1 subdir
install -d src/da/man1
%{__mv} src/da/*.1 src/da/man1
# man1/sync.1 already exists
%{__rm} src/zh_CN/man8/sync.8
-%patch2 -p1 -d src/C
-%patch5 -p1 -d src
+%patch1 -p1 -d src/C
+%patch4 -p1 -d src
# patching creates backups
find . '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -rf
+# merge our "extra" tarball
+
# already in base man-pages
%{__rm} man-pages-extra/man1/{getent,iconv,locale,localedef,sprof}.1
%{__rm} man-pages-extra/man2/vm86old.2
for d in man-pages-extra/man* ; do
mv -i $d/*.* src/C/${d#man-pages-extra/}
done
-mkdir src/cs/man{1,2,3,4,7}
+%{__rm} man-pages-extra/cs/man1/{dir,egrep,fgrep,vdir}.1
+%{__rm} man-pages-extra/cs/man4/{kmem,port,vcsa,zero}.4
+%{__rm} man-pages-extra/cs/man7/utf8.7
+# empty now
+rmdir man-pages-extra/cs/man{4,7}
%{__rm} man-pages-extra/de/man3/ctime.3
# empty now
rmdir man-pages-extra/de/man3
rmdir man-pages-extra/it/man7
%{__rm} man-pages-extra/ja/man3/{CIRCLEQ_*,LIST_*,TAILQ_*,__after_morecore_hook,__free_hook,__malloc_initialize_hook,__memalign_hook,__realloc_kook}.3
%{__rm} man-pages-extra/pt_BR/man2/waitpid.2
-for d in man-pages-extra/*/man* ; do
+# note: cs are omitted here and processed later
+for d in man-pages-extra/{de,es,fi,fr,hu,id,it,ja,ko,nl,pl,pt_BR,ru,zh_CN}/man* ; do
mv -i $d/*.* src/${d#man-pages-extra/}
done
%build
# some man-pages require build step
+# cs: prepare man pages and apply extra
+LANG=en_GB.UTF-8 \
+%{__make} -C src/cs latest
+%{__mv} src/cs/latest/man* src/cs
+rmdir src/cs/latest
+for d in man-pages-extra/cs/man* ; do
+ mv -i $d/*.* src/${d#man-pages-extra/}
+done
+
# tr: make man pages from XML (note: compiles some utility)
%{__make} -C src/tr/source
find src/tr/tr -name '*.gz' | xargs gzip -d
install -m644 $n $RPM_BUILD_ROOT%{_mandir}/$bn
done
# drop man pages packaged separately
-grep '^man' glibc-man.list | sed -e "s,^,$RPM_BUILD_ROOT%{_mandir}/," | xargs -r %{__rm}
+grep '^man' glibc-man.list | sed -e "s,^,$RPM_BUILD_ROOT%{_mandir}/," | xargs -r %{__rm}
# rpcbind, formerly glibc
%{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/rpcinfo.8
# gawk
done
# files with just .so links pointing to non-existing man pages
-# FIXME: recheck after fixing cs man pages build/install
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/cs/man{2,4}/*.*
# modules.2
%{__rm} $RPM_BUILD_ROOT%{_mandir}/de/man2/{create_module,delete_module,get_kernel_syms,init_module}.2
# obsolete.2
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/{de,es,ko,nl,pl,pt,ru}/man2/{oldfstat,oldlstat,oldolduname,oldstat,olduname}.2
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/{cs,de,es,ko,nl,pl,pt,ru}/man2/{oldfstat,oldlstat,oldolduname,oldstat,olduname}.2
# undocumented.7 (exists in es, but not installed because it's not in C manuals)
%{__rm} $RPM_BUILD_ROOT%{_mandir}/es/man5/networks.5
# clock_getres.3 (packaged in glibc, but these links exist only in fr manuals, not C)
%{_mandir}/man6/*.6*
%{_mandir}/man7/*.7*
%{_mandir}/man8/*.8*
-# FIXME
-#%lang(cs) %{_mandir}/cs/man*/*
+%lang(cs) %{_mandir}/cs/man*/*
%lang(de) %{_mandir}/de/man*/*
%lang(es) %{_mandir}/es/man*/*
%lang(fi) %{_mandir}/fi/man*/*