File docbook5-xsl-stylesheets.spec of Package docbook5-xsl-stylesheets
#
# spec file for package docbook5-xsl-stylesheets
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define regcat /usr/bin/sgml-register-catalog
%define pack_vers %{version}
Name: docbook5-xsl-stylesheets
BuildRequires: bzip2 sgml-skel unzip
Url: http://www.docbook.org
License: Public Domain, Freeware
Group: Productivity/Publishing/DocBook
BuildArch: noarch
BuildRequires: fdupes
Requires: xmlcharent docbook_5 awk coreutils
Provides: docbkxsl
PreReq: %{regcat} /usr/bin/xmlcatalog
Summary: XSL Stylesheets for DocBook 5
Version: 1.76.1
Release: 1
Source0: http://switch.dl.sourceforge.net/sourceforge/docbook/docbook-xsl-ns-%{version}.tar.bz2
Source1: %{name}-rpmlintrc
### snap
#Source100: docbook-xsl-snapshot.zip
### snap end
#Source0: http://docbook.sourceforge.net/snapshot/docbook-xsl-snapshot.tar.bz2
#Source10: http://docbook.sourceforge.net/snapshot/docbook-xsl-doc-snapshot.tar.bz2
#Patch: manpages-block-sp.patch
#Patch1: manpages-block-sp-2.patch
# %define pack_vers snapshot
#Source1: %{name}-README.SuSE
# Patch: docbkxsl.dif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
These are the XSL stylesheets for DocBook. Generally, the stylesheets
are namespace aware and you should use these for DocBook 5 only. The
stylesheets transforms your DocBook 5 document into (X)HTML, Manpages,
XSL-FO (for PDF) and a some other formats. XSL is a standard W3C
stylesheet language for both print and online rendering. For more
information about XSL, see the XSL page at theW3C.
%define INSTALL install -m755 -s
%define INSTALL_DIR install -d -m755
%define INSTALL_DATA install -m644
%define INSTALL_SCRIPT install -m755 -o root -g root
%define sgml_dir %{_datadir}/sgml
%define sgml_var_dir /var/lib/sgml
%define sgml_mod_dir %{sgml_dir}/docbook
%define sgml_mod_dtd_dir %{sgml_mod_dir}/dtd
%define sgml_mod_custom_dir %{sgml_mod_dir}/custom
%define sgml_mod_style_dir %{sgml_mod_dir}/stylesheet
%define xml_dir %{_datadir}/xml
%define xml_mod_dir %{xml_dir}/docbook
%define xml_mod_dtd_dir %{xml_mod_dir}/dtd
%define xml_mod_custom_dir %{xml_mod_dir}/custom
%define xml_mod_style_dir %{xml_mod_dir}/stylesheet
%define xml_mod_style_prod_dir %{xml_mod_style_dir}/nwalsh5
%define sgml_config_dir /var/lib/sgml
%define sgml_sysconf_dir %{_sysconfdir}/sgml
%define xml_config_dir /var/lib/xml
%define xml_sysconf_dir %{_sysconfdir}/xml
# ------------------------------------------------------------------------------
%prep
%setup -q -n docbook-xsl-ns-%{version}
# Make some small modifications:
#find . -name .gitignore | xargs %{__rm} -
find -name "*.py" | xargs %{__chmod} 0755
find -name "*.rb" | xargs %{__chmod} 0755
[ -f epub/bin/dbtoepub ] && %{__chmod} 0755 epub/bin/dbtoepub
[ -f epub/bin/lib/docbook.rb ] && %{__chmod} 0755 epub/bin/lib/docbook.rb
%{__chmod} -R a+rX,g-w,o-w .
%{__chmod} -x images/*.{svg,png,gif,tif} images/callouts/*.{svg,png,gif}
# Start cleanup (to avoid warnings for rpmlint
[ -f ./extensions/saxon65/dist/saxon65.jar ] && %{__rm} -rf ./extensions/saxon65/dist/saxon65.jar
[ -f ./extensions/xalan27/dist/xalan27.jar ] && %{__rm} -rf ./extensions/xalan27/dist/xalan27.jar
#x=$(find {lib,html,fo,lib,website,slides/fo,slides/html,roundtrip,manpages}/.[a-zA-Z0-9]* -maxdepth 1 -type f )
#if [ "$x" != '' ]; then
## rm $x;
# for i in $x; do
# if [ -f $i ]; then
# rm $i
# fi
# done
#fi
# End Cleanup
%build
xmlcatbin=/usr/bin/xmlcatalog
CATALOG=%{name}.xml
# file:///usr/share/sgml/docbook/ = %{sgml_mod_dir} map it to
# %{xml_mod_style_prod_dir}/%{version}
$xmlcatbin --noout --create $CATALOG
/usr/bin/xmlcatalog --noout --add "rewriteSystem" \
"http://docbook.sourceforge.net/release/xsl-ns/%{version}" \
"file://%{xml_mod_style_prod_dir}/%{version}" $CATALOG
/usr/bin/xmlcatalog --noout --add "rewriteURI" \
"http://docbook.sourceforge.net/release/xsl-ns/%{version}" \
"file://%{xml_mod_style_prod_dir}/%{version}" $CATALOG
/usr/bin/xmlcatalog --noout --add "rewriteSystem" \
"http://docbook.sourceforge.net/release/xsl-ns/current" \
"file://%{xml_mod_style_prod_dir}/%{version}" $CATALOG
/usr/bin/xmlcatalog --noout --add "rewriteURI" \
"http://docbook.sourceforge.net/release/xsl-ns/current" \
"file://%{xml_mod_style_prod_dir}/%{version}" $CATALOG
%define FOR_ROOT_CAT for-catalog-%{name}-%{version}.xml
CATALOG=etc/xml/$CATALOG
%{__rm} -f %{FOR_ROOT_CAT}.tmp
$xmlcatbin --noout --create %{FOR_ROOT_CAT}.tmp
$xmlcatbin --noout --add "delegateSystem" \
"http://docbook.sourceforge.net/release/xsl-ns/" \
"file:///$CATALOG" %{FOR_ROOT_CAT}.tmp
# $xmlcatbin --noout --add "delegatePublic" \
# "-//OASIS//xxx" \
# "file:///$CATALOG" %{FOR_ROOT_CAT}.tmp
# Create tag
sed '/<catalog/a\
<group id="%{name}-%{version}">
/<\/catalog/i\
</group>' \
%{FOR_ROOT_CAT}.tmp > %{FOR_ROOT_CAT}
%install
mkdir -p %buildroot
# export NO_BRP_CHECK_BYTECODE_VERSION=true
#export RPM_BUILD_ROOT
#if [ ! "x" = "x$RPM_BUILD_ROOT" ]; then
# %{__rm} -fr $RPM_BUILD_ROOT
# %{__mkdir} %{buildroot}
#fi
doc_dir=$RPM_BUILD_ROOT%{_defaultdocdir}/%{name}
%{INSTALL_DIR} $RPM_BUILD_ROOT%{xml_mod_style_prod_dir}/%{version}
%{__cp} -a [[:lower:]]* $RPM_BUILD_ROOT%{xml_mod_style_prod_dir}/%{version}
%{__cp} -a VERSION $RPM_BUILD_ROOT%{xml_mod_style_prod_dir}/%{version}
find $RPM_BUILD_ROOT%{xml_mod_style_prod_dir} -type f -name '*.orig' -exec %{__rm} -f {} \;
%{__rm} -f $RPM_BUILD_ROOT%{xml_mod_style_prod_dir}/%{version}/for-catalog*
: >%{name}_list
{
pushd $RPM_BUILD_ROOT%{xml_mod_style_prod_dir} >/dev/null
# do not create the current link for snapshots
# if ! echo %{S:0} | grep -q snapshot; then
ln -sf %{version} current
echo %{xml_mod_style_prod_dir}/current
# fi
popd >/dev/null
} >%{name}_list
%{INSTALL_DIR} $doc_dir
# documentation
for f in README BUGS TODO WhatsNew RELEASE-NOTES.html; do
# On snapshots, WhatsNew is missing
[ -f $f ] && %{INSTALL_DATA} $f $doc_dir/$f
done
#cp -p README.SuSE $doc_dir/README.SuSE
#
{
LANG=C \
find %{buildroot}%{xml_mod_style_prod_dir}/%{version} \
-type d \
-not -path '%{buildroot}%{xml_mod_style_prod_dir}/%{version}/latex*' \
| sed 's|%{buildroot}|%dir |'
LANG=C \
find %{buildroot}%{xml_mod_style_prod_dir}/%{version} \
-type f \
-not -path '%{buildroot}%{xml_mod_style_prod_dir}/%{version}/latex*' \
| sed 's|%{buildroot}||'
} >> %{_builddir}/%{buildsubdir}/%{name}_list
# pushd %{buildroot}%{xml_mod_style_prod_dir}
# rm -f docbook-xsl
# ln -sf docbook-xsl-stylesheets-%{version} docbook-xsl-ns
# rm -f xsl-stylesheets
# ln -sf docbook-xsl-stylesheets-%{version} xsl-ns-stylesheets
# rm -f %{name}
# ln -sf docbook-xsl-stylesheets-%{version} %{name}
# popd
cat_dir=%{buildroot}/etc/xml
%{INSTALL_DIR} $cat_dir
%{INSTALL_DATA} %{FOR_ROOT_CAT} %{name}.xml $cat_dir
%fdupes -s %buildroot
%pre
# in case of an update check for old dirs (affected systems <= SL 9.0)
old="docbook-xsl*"
pushd %{sgml_dir}/docbook >/dev/null
{
for f in $old; do
[ -d $f ] && echo $f || :
[ -L $f ] && echo $f || :
done
} >> /var/adm/SuSEconfig/run-sgmldir-links
%post
# remove empty dir if present (from ghost)
# also remove dangling symlink
D=usr/share/sgml
rmdir $D/docbkxsl >/dev/null 2>&1 || :
test -L $D/docbkxsl -a ! -e $D/docbkxsl && %{__rm} -f $D/docbkxsl
if [ -x /usr/bin/edit-xml-catalog ] ; then
edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \
--add /etc/xml/%{FOR_ROOT_CAT}
fi
%postun
# remove entries only on removal of file
if [ ! -f %{xml_sysconf_dir}/%{FOR_ROOT_CAT} -a -x /usr/bin/edit-xml-catalog ] ; then
edit-xml-catalog --group --catalog /etc/xml/suse-catalog.xml \
--del %{name}-%{version}
fi
%files -f %{name}_list
%defattr(-, root, root)
# compatibility link; will go away with SuSE Linux >= 8.x
%config %{_sysconfdir}/xml/%{name}.xml
%config %{_sysconfdir}/xml/%{FOR_ROOT_CAT}
%{_defaultdocdir}/%{name}
# %dir %{xml_dir}
#%dir %{xml_mod_dir}
%dir %{xml_mod_style_dir}
%dir %{xml_mod_style_prod_dir}
# it is now in the list:
# %{xml_mod_style_prod_dir}/current
%changelog