]> git.pld-linux.org Git - packages/man-pages.git/blobdiff - man-pages.spec
- annihilated some man-pages-extra files/links and their removal; added some links...
[packages/man-pages.git] / man-pages.spec
index 78189ee1c636c1647bbf7ae9ad83aaf189879df1..63e83f0f810b9aefeac5da507f4e9073992a46bf 100644 (file)
@@ -1,4 +1,3 @@
-# TODO: fix cs
 #
 # Conditional build:
 %bcond_with    tars    # generate man-pages tars for other packages [not done yet]
@@ -16,8 +15,8 @@ Summary(ru.UTF-8):    Страницы руководства из Проекта 
 Summary(tr.UTF-8):     Linux Belgeleme Projesinin sistem kılavuz sayfaları
 Summary(uk.UTF-8):     Сторінки мануалу (man) з Linux Documentation Project
 Name:          man-pages
-Version:       3.71
-Release:       3
+Version:       4.11
+Release:       2
 License:       distributable
 Group:         Documentation
 %define                cs_version              0.17.20080113
@@ -29,8 +28,8 @@ 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              4.08
+%define                ja_version              20170615
 %define                ko_version              20050219
 %define                nl_version              0.13.3
 %define                pl_version              20051105
@@ -39,10 +38,10 @@ Group:              Documentation
 #%%define      ru_version              0.98
 %define                ru_asp_version          1.4
 %define                tr_version              1.0.5
-%define                zh_version              1.5
+%define                zh_version              1.5.2
 %define                posix_version           2013-a
-Source0:       http://www.kernel.org/pub/linux/docs/man-pages/%{name}-%{version}.tar.xz
-# Source0-md5: 9a2a288f1e481045c991e0cb476127d8
+Source0:       https://www.kernel.org/pub/linux/docs/man-pages/%{name}-%{version}.tar.xz
+# Source0-md5: c2f25e2367fc12267bb85abe7b39f173
 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
@@ -58,6 +57,8 @@ Source5:      http://www.ditec.um.es/~piernas/manpages-es/%{name}-es-extra-%{es_extra
 # (despite archive filename it's 0.2 version)
 Source6:       man-fi-0.1.tar.bz2
 # Source6-md5: bb266d3797cdf71bfbe1da190196f455
+# 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?
+#Source7Download: http://manpagesfr.free.fr/
 Source7:       http://manpagesfr.free.fr/download/%{name}-fr-%{fr_version}.tar.bz2
 # Source7-md5: 64046b022c7c8d559d78dd05f953261b
 # there is also: http://manpagesfr.free.fr/download/man-pages-extras-fr-0.8.1.tar.bz2
@@ -71,18 +72,18 @@ Source9:    http://www.mif.pg.gda.pl/homepages/ankry/man-pages/%{name}-from-www-id-
 # 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:        869cf8ff2aa5c11b8d15d1ba7a47f4fa
 # 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
+#Source11Download: http://linuxjm.osdn.jp/download.html
+Source11:      http://linuxjm.osdn.jp/%{name}-ja-%{ja_version}.tar.gz
+# Source11-md5:        ee20907738e957d4956197bb0163c9cd
 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?
 Source13:      ftp://ftp.nl.linux.org/pub/DOC-NL/manpages-nl/manpages-nl-%{nl_version}.tar.gz
 # Source13-md5:        b37b0216a87db7583e88ba87031a0b4a
 # TODO: PTM has been overtaken by new project at http://manpages-pl.sourceforge.net/
-# http://downloads.sourceforge.net/manpages-pl/manpages-pl-%{pl_version}.tar.bz2 with pl_version=0.5
+# http://downloads.sourceforge.net/manpages-pl/manpages-pl-%{pl_version}.tar.bz2 with pl_version=0.6
 Source14:      %{name}-pl-PTM-snapshot.%{pl_version}.tar.bz2
 # Source14-md5:        b9b5751fcde4c36022850d0e5a4757d3
 Source15:      http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/%{name}-pt_BR-%{pt_version}.tgz
@@ -90,31 +91,37 @@ Source15:   http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/%{name}-pt_
 # no LDP man pages yet
 Source16:      http://www.rolix.org/man/arhiva/man-pages-ro-%{ro_version}.tar.gz
 # Source16-md5:        ac5b2c970a31cb721e068ff80e5bd466
+# 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?
 #Source17:     http://linuxshare.ru/projects/trans/manpages-ru-%{ru_version}.tar.bz2
 # 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
-# TODO: https://github.com/lidaobing/manpages-zh/archive/v%{zh_version}/man-pages-zh_CN-%{zh_version}.tar.gz with zh_version=1.5.2
-Source20:      http://download.sf.linuxforum.net/cmpp/man-pages-zh_CN-%{zh_version}.tar.gz
-# Source20-md5:        edfe517621579520cf7451088ab126ea
+#Source20Download: https://github.com/lidaobing/manpages-zh/releases
+# also newer git snapshot available at http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/man-pages-zh-20141004.zip
+Source20:      https://github.com/lidaobing/manpages-zh/archive/v%{zh_version}/manpages-zh-%{zh_version}.tar.gz
+# Source20-md5:        1bbdc4f32272df0b95146518b27bf4be
 Source30:      https://www.kernel.org/pub/linux/docs/man-pages/man-pages-posix/man-pages-posix-%{posix_version}.tar.xz
 # Source30-md5:        825fde78e6fddd02426ecdd50e2cbe0d
-Source50:      %{name}-extra.tar.bz2
-# Source50-md5:        15d763c5221088dcb15ba8ae95f6d239
+Source50:      %{name}-links.list
 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
+Patch10:       %{name}-extra-files.patch
 URL:           https://www.kernel.org/doc/man-pages/
+BuildRequires: autoconf >= 2.61
+BuildRequires: automake
 BuildRequires: rpmbuild(macros) >= 1.566
 BuildRequires: sed >= 4.0
+# for man-pages-zh
+BuildRequires: zh-autoconvert
 # for man-pages-tr
 BuildRequires: zlib-devel
 Obsoletes:     man-pages-cs
@@ -137,14 +144,16 @@ Obsoletes:        man-pages-zh
 Obsoletes:     manpages-hu
 Conflicts:     attr-devel < 2.2.0-2
 Conflicts:     kbd < 1.12-9
+Conflicts:     keyutils < 1.5.10
 Conflicts:     libcap < 1:1.10-5
+Conflicts:     lirc < 0.9.3a-2
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 AutoReqProv:   no
 
 # languages of packaged man pages
 # note: pt_BR is omitted here, these manuals are packaged as pt
-%define        man_langs       cs da de es fi fr hu id it ja ko nl pl pt ru tr uk zh_CN
+%define        man_langs       cs da de es fi fr hu id it ja ko nl pl pt ru tr uk zh_CN zh_TW
 
 %description
 A large collection of man pages covering programming APIs, file
@@ -294,18 +303,27 @@ Fragmenty POSIX 1003.1-2003 w postaci stron podręcznika systemowego.
 
 %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 ..
-install -d man-pages-extra
-bzip2 -dc %{SOURCE50} | tar xf - -C man-pages-extra
-cd man-pages-extra
-%patch3 -p0
-cd ..
+%patch0 -p1 -d manpages-zh-%{zh_version}
+%patch3 -p1 -d man-pages-tr-%{tr_version}
+%patch5 -p1 -d man-pages-cs-%{cs_version}
+# man-pages-extra
+%patch10 -p0
+%patch2 -p0 -d man-pages-extra
+install -d man-pages-extra/C
+%{__mv} man-pages-extra/man* man-pages-extra/C
+# extra so links (via man-pages-extra)
+while read LINE ; do
+       if echo "$LINE" | grep -q '^#' ; then
+               continue
+       fi
+       set -- $LINE
+       install -d man-pages-extra/${1}/$(dirname $2)
+       if [ -f man-pages-extra/${1}/${2} ]; then
+               echo "man-pages-extra/${1}/${2} already exists!"
+               exit 1
+       fi
+       echo ".so $3" >>man-pages-extra/${1}/${2}
+done < %{SOURCE50}
 
 # prepare somehow unified source trees
 install -d src
@@ -330,17 +348,10 @@ tar xzf %{SOURCE12} -C src/ko
 %{__mv} manpages-ru-asp-%{ru_asp_version} src/ru
 %{__mv} man-pages-tr-%{tr_version} src/tr
 %{__mv} man-pages-uk_UA.alfa src/uk
-%{__mv} man-pages-zh_CN-%{zh_version}/src src/zh_CN
+%{__mv} manpages-zh-%{zh_version} src/zh
 
 # 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
@@ -397,12 +408,7 @@ for f in 1 3 4 5 6 7 8 ; do
        mv -i src/ja/manual/*/man${f}/* src/ja/man${f}
 done
 
-# zh_CN: cleanup
-find src/zh_CN -name CVS -o -name '*.orig' -o -name '*~' | xargs rm -rf
-# would go in big5 or gb18030, but not gb2312
-%{__rm} src/zh_CN/man1/perltw.1
-# would go in gb18030, but not gb2312
-%{__rm} src/zh_CN/man8/{chat,printcap}.8
+# zh_CN: cleanup must be done after build (in build stage)
 
 # individual man pages fixes
 
@@ -424,40 +430,27 @@ find src/zh_CN -name CVS -o -name '*.orig' -o -name '*~' | xargs rm -rf
 %{__rm} src/pl/man8/sync.8
 %{__mv} src/pt_BR/man8/sync.8 src/pt_BR/man1/sync.1
 %{__mv} src/ru/man8/sync.8 src/ru/man1/sync.1
-# man1/sync.1 already exists
-%{__rm} src/zh_CN/man8/sync.8
+# zh: handler later (after build)
 
-%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
 
-# already in base man-pages
-%{__rm} man-pages-extra/man1/{getent,iconv,locale,localedef,sprof}.1
-%{__rm} man-pages-extra/man2/vm86old.2
-%{__rm} man-pages-extra/man3/{CIRCLEQ_*,LIST_*,TAILQ_*,__after_morecore_hook,__free_hook,__malloc_initialize_hook,__memalign_hook,__realloc_kook}.3
-%{__rm} man-pages-extra/man4/sk98lin.4
-%{__rm} man-pages-extra/man8/sln.8
-# empty now
-rmdir man-pages-extra/man4
+# merge our "extra" tarball
+
 # apply man-pages-extra, preventing overwriting of already existing man pages
-for d in man-pages-extra/man* ; do
-       mv -i $d/*.* src/C/${d#man-pages-extra/}
+for d in man-pages-extra/C/man* ; do
+       mv -i $d/*.* src/C/${d#man-pages-extra/C/}
 done
-mkdir src/cs/man{1,2,3,4,7}
-%{__rm} man-pages-extra/de/man3/ctime.3
-# empty now
-rmdir man-pages-extra/de/man3
-%{__rm} man-pages-extra/fr/man8/{ld-linux,ld-linux.so}.8
-%{__rm} man-pages-extra/it/man7/utf8.7
-# empty now
-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 and zh_CN 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}/man* ; do
        mv -i $d/*.* src/${d#man-pages-extra/}
 done
+for d in man-pages-extra/zh_CN/man* ; do
+       mv -i $d/*.* src/zh/src/${d#man-pages-extra/zh_CN/}
+done
 
 ln -sf pt_BR src/pt
 
@@ -467,23 +460,48 @@ ln -sf pt_BR src/pt
 %{__rm} src/C/man1/time.1
 # ftp servers
 %{__rm} src/C/man5/ftpusers.5
-# glibc
-%{__rm} src/C/man8/ld-linux{,.so}.8
 
 %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
 %{__mv} src/tr/tr/man* src/tr
 
+# zh: prepare zh_CN and zh_TW
+cd src/zh
+%{__aclocal}
+%{__autoconf}
+%{__automake}
+%configure
+%{__make}
+cd ../..
+for l in zh_CN zh_TW ; do
+install -d src/${l}
+for d in man{1,2,3,4,5,6,7,8,n} ; do
+ln -snf ../zh/src/${d}/${l} src/${l}/${d}
+done
+done
+# zh_*: man1/sync.1 already exists
+%{__rm} src/zh_CN/man8/sync.8
+%{__rm} src/zh_TW/man8/sync.8
+
 # per-package lists / tarballs production
 package=NONE
 while read line ; do
        if echo $line | grep -q '^\[.\+\]$' ; then
                package=`echo $line | sed -e 's/^\[//;s/\]$//;'`
-       else
+       elif ! echo $line | grep -q '^#' ; then
                if [ -f "src/C/$line" ]; then
                        echo "$line" >> ${package}-man.list
                fi
@@ -515,15 +533,17 @@ install -d $RPM_BUILD_ROOT%{_mandir}/man{1,2,3,4,5,6,7,8,0p,1p,3p}
 
 # install C man pages
 for n in src/C/man{1,2,3,4,5,6,7,8,0p,1p,3p}/*; do
-       bn=${n#src/C}
+       bn=${n#src/C/}
        install -m644 $n $RPM_BUILD_ROOT%{_mandir}/$bn
 done
 # drop man pages packaged separately
-grep '^man' glibc-man-pages.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
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{gawk,igawk}.1
+# libaio
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man3/{aio_init,lio_listio}.3
 # shadow (but not pwdutils!); shadow(5) is missing in pwdutils too
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man5/passwd.5
 
@@ -539,28 +559,18 @@ for l in %{man_langs} ; do
 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,3,4,7}/*.*
 # 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)
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/fr/man2/{clock_getres,clock_gettime,clock_settime}.2
 # undocumented.7
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/{es,ru}/man5/networks.5
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/ru/man5/networks.5
 # statfs.2
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man2/fstatfs.2
-# scandir.3
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man3/alphasort.3
-# termios.3
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man3/{cfgetispeed,cfgetospeed,cfmakeraw,cfsetispeed,cfsetospeed}.3
-# syslog.3
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man3/closelog.3
-# resolver.3
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man3/{dn_comp,dn_expand}.3
-# scanf.3
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man3/fscanf.3
-# encrypt.3
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/tr/man3/{encrypt_r,setkey,setkey_r}.3
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -575,8 +585,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_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*/*
@@ -594,6 +603,7 @@ rm -rf $RPM_BUILD_ROOT
 %lang(tr) %{_mandir}/tr/man*/*
 %lang(uk) %{_mandir}/uk/man*/*
 %lang(zh_CN) %{_mandir}/zh_CN/man*/*
+%lang(zh_TW) %{_mandir}/zh_TW/man*/*
 
 %files posix
 %defattr(644,root,root,755)
This page took 0.075971 seconds and 4 git commands to generate.