]> git.pld-linux.org Git - packages/man-pages.git/blobdiff - man-pages.spec
- man-pages-extra tarball replaced by extra-files patch and links.list file that...
[packages/man-pages.git] / man-pages.spec
index ea499e9e93a6a9868d4168a8f3e74d3f22382860..458469c8ec2c57f24774a9967f84aa3d6fa73208 100644 (file)
@@ -38,7 +38,7 @@ 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:       https://www.kernel.org/pub/linux/docs/man-pages/%{name}-%{version}.tar.xz
 # Source0-md5: c2f25e2367fc12267bb85abe7b39f173
@@ -100,14 +100,13 @@ Source18: http://downloads.sourceforge.net/belgeler/man-pages-tr-%{tr_version}.t
 # 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-%{zh_version}.tar.gz with zh_version=1.5.2
-# or http://www.win.tue.nl/~aeb/ftpdocs/linux-local/manpages/tr/man-pages-zh-20141004.zip - what is the original source?
-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}-zh_fixes.patch
 Patch1:                %{name}-misc.patch
@@ -115,9 +114,14 @@ 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
@@ -149,7 +153,7 @@ 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
@@ -299,14 +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
-%patch0 -p1 -d man-pages-zh_CN-%{zh_version}
+%patch0 -p1 -d manpages-zh-%{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
+# man-pages-extra
+%patch10 -p0
 %patch2 -p0 -d man-pages-extra
-#cd ..
+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
@@ -331,7 +348,7 @@ 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)
 
@@ -391,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
 
@@ -418,8 +430,7 @@ 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)
 
 %patch1 -p1 -d src/C
 %patch4 -p1 -d src
@@ -430,16 +441,16 @@ 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
-%{__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
+%{__rm} man-pages-extra/C/man1/{getent,iconv,locale,localedef,sprof}.1
+%{__rm} man-pages-extra/C/man2/vm86old.2
+%{__rm} man-pages-extra/C/man3/{CIRCLEQ_*,LIST_*,TAILQ_*,__after_morecore_hook,__free_hook,__malloc_initialize_hook,__memalign_hook,__realloc_hook}.3
+%{__rm} man-pages-extra/C/man4/sk98lin.4
+%{__rm} man-pages-extra/C/man8/sln.8
 # empty now
-rmdir man-pages-extra/man4
+rmdir man-pages-extra/C/man4
 # 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
 %{__rm} man-pages-extra/cs/man1/{dir,egrep,fgrep,vdir}.1
 %{__rm} man-pages-extra/cs/man4/{kmem,port,vcsa,zero}.4
@@ -453,12 +464,15 @@ rmdir man-pages-extra/de/man3
 %{__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/ja/man3/{CIRCLEQ_*,LIST_*,TAILQ_*,__after_morecore_hook,__free_hook,__malloc_initialize_hook,__memalign_hook,__realloc_hook}.3
 %{__rm} man-pages-extra/pt_BR/man2/waitpid.2
-# 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
+# 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
 
@@ -486,6 +500,24 @@ done
 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
@@ -593,6 +625,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.034027 seconds and 4 git commands to generate.