docs-common/packaging spec.xsl,1.20,1.21
Paul W. Frields (pfrields)
fedora-docs-commits at redhat.com
Tue Apr 11 20:27:01 UTC 2006
Author: pfrields
Update of /cvs/docs/docs-common/packaging
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv1363/packaging
Modified Files:
spec.xsl
Log Message:
Spec file changes to re-enable building. This works for just about everything I've tried, provided it has been fixed to support en_US locale notation. Encourage people to try this out to find breakage.
Index: spec.xsl
===================================================================
RCS file: /cvs/docs/docs-common/packaging/spec.xsl,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- spec.xsl 26 Feb 2006 22:44:36 -0000 1.20
+++ spec.xsl 11 Apr 2006 20:26:59 -0000 1.21
@@ -5,7 +5,7 @@
<!-- Note: do not indent this file! Any whitespace here
will be reproduced in the output -->
- <xsl:param name="lang" select="'en'" />
+ <xsl:param name="lang" select="'en_US'" />
<xsl:param name="docbase" select="'example-tutorial'" />
<xsl:template match="/"># Fedora Documentation Specfile
@@ -25,7 +25,7 @@
Source3: %{name}-khelp.desktop
<xsl:for-each select="/rpm-info/titles/translation">Source<xsl:value-of
select="position()+3" />: %{name}-<xsl:choose><xsl:when
- test="@lang = 'en'">C</xsl:when><xsl:otherwise><xsl:value-of
+ test="@lang = 'en_US'">C</xsl:when><xsl:otherwise><xsl:value-of
select="@lang"/></xsl:otherwise></xsl:choose>.omf
</xsl:for-each>
Group: Documentation
@@ -39,40 +39,51 @@
%{?localbuild:%{expand:BuildRequires: fedora-doc-common}}
%description
-<xsl:value-of select="/rpm-info/titles/translation[@lang='en']/desc" />
+<xsl:value-of select="/rpm-info/titles/translation[@lang='en_US']/desc" />
-<xsl:for-each select="/rpm-info/titles/translation"><xsl:if test="@lang != 'en'">%package <xsl:value-of select="@lang"/>
+<xsl:for-each select="/rpm-info/titles/translation"><xsl:if test="@lang != 'en_US'">%package <xsl:value-of select="@lang"/>
Summary: Fedora Documentation - <xsl:value-of select="title"/>
Group: Documentation
%description <xsl:value-of select="@lang"/>
<xsl:value-of select="desc"/></xsl:if>
-
</xsl:for-each>
%prep
%setup -q -n %{docbase}-%{version}
-#export GLOBIGNORE=rpm-info.xml
+
+
+%build
+export FDPDIR=%{fdpdir}
+# Remove hard-coded FDPDIR locations from CVS docs
for i in $RPM_BUILD_DIR/%{docbase}-%{version}/{*.xml,*/*.xml,Makefile}
do
%{__sed} -i 's;\(\.\./\)\{1,\}docs-common;%{fdpdir}/docs-common;g' "$i"
done
-
-
-%build
-make html FDPDIR=%{fdpdir} %{!?localbuild:DRAFT="no"}
+eval `make showvars | grep '\(PRI_LANG\|OTHERS\|DOC_ENTITIES\)'`
+# Create entities (.ent files)
+mkdir po/CVS # This is to make the Makefile.common happy
+for i in $PRI_LANG $OTHERS ; do
+ make set-locale-$i
+ for j in $DOC_ENTITIES ; do
+ make ${i}/${j}.ent
+ done
+done
<xsl:for-each select="/rpm-info/titles/translation">
-mkdir kde-<xsl:value-of select="@lang"/>
-meinproc --output kde-<xsl:value-of select="@lang"/>/index.docbook \
- --cache kde-<xsl:value-of select="@lang"/>/index.cache.bz2 \
- <xsl:value-of select="@lang"/>/%{docbase}.xml
+LANG=<xsl:value-of select="@lang"/>.UTF-8 xmllint --xinclude <xsl:value-of select="@lang"/>/%{docbase}.xml > <xsl:value-of select="@lang"/>/%{docbase}.xml-parsed || :
+# After XInclude, may need to scour FDPDIR misdirections again
+%{__sed} 's;\(\.\./\)\{1,\}docs-common;%{fdpdir}/docs-common;g' <xsl:value-of select="@lang"/>/%{docbase}.xml-parsed > <xsl:value-of select="@lang"/>/%{docbase}.xml
+LANG=<xsl:value-of select="@lang"/>.UTF-8 xmlto -o %{docbase}-<xsl:value-of select="@lang"/> \
+ -x %{fdpdir}/docs-common/xsl/main-html.xsl html \
+ <xsl:value-of select="@lang"/>/%{docbase}.xml
+make khelp
</xsl:for-each>
%install
for DIR in $RPM_BUILD_ROOT%{_datadir}/applications/kde \
$RPM_BUILD_ROOT%{_datadir}/apps/khelpcenter/plugins/Fedora \
$RPM_BUILD_ROOT%{_datadir}/omf/fedora-doc-%{docbase} \
- <xsl:for-each select="/rpm-info/titles/translation">$RPM_BUILD_ROOT%{_docdir}/HTML/<xsl:value-of select="@lang"/>/fedora-doc-%{docbase} \
- $RPM_BUILD_ROOT%{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:choose><xsl:when test="@lang = 'en'">C</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose> \
+ <xsl:for-each select="/rpm-info/titles/translation">$RPM_BUILD_ROOT%{_docdir}/HTML/<xsl:choose><xsl:when test="@lang='en_US'">en</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose>/fedora-doc-%{docbase} \
+ $RPM_BUILD_ROOT%{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:choose><xsl:when test="@lang = 'en_US'">C</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose> \
</xsl:for-each>; do
install -d -m 755 "$DIR"
done
@@ -83,14 +94,14 @@
%{SOURCE1}
install -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/applications/kde
install -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/apps/khelpcenter/plugins/Fedora
-install -m 644 en/*.xml $RPM_BUILD_ROOT%{_datadir}/fedora/doc/fedora-doc-%{docbase}/C
-<xsl:for-each select="/rpm-info/titles/translation">install -m 644 %{SOURCE<xsl:value-of select="position()+3"/>} $RPM_BUILD_ROOT%{_datadir}/omf/fedora-doc-%{docbase}
-<xsl:if test="@lang != 'en'">install -m 644 <xsl:value-of select="@lang"/>/*-<xsl:value-of select="@lang"/>.xml $RPM_BUILD_ROOT%{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:value-of select="@lang"/></xsl:if>
+<xsl:for-each select="/rpm-info/titles/translation">install -m 644 <xsl:value-of select="@lang"/>/*.{xml,ent} $RPM_BUILD_ROOT%{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:choose><xsl:when test="@lang='en_US'">C</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose>
+install -m 644 %{SOURCE<xsl:value-of select="position()+3"/>} $RPM_BUILD_ROOT%{_datadir}/omf/fedora-doc-%{docbase}
+<xsl:if test="@lang != 'en_US'">install -m 644 <xsl:value-of select="@lang"/>/*.{xml,ent} $RPM_BUILD_ROOT%{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:value-of select="@lang"/></xsl:if>
pushd %{docbase}-<xsl:value-of select="@lang"/>
find . -type d | xargs -i \
- install -d -m 755 $RPM_BUILD_ROOT%{_docdir}/HTML/<xsl:value-of select="@lang"/>/fedora-doc-%{docbase}/{}
-find . -type f | xargs -i \
- install -D -m 644 {} $RPM_BUILD_ROOT%{_docdir}/HTML/<xsl:value-of select="@lang"/>/fedora-doc-%{docbase}/{}
+ install -d -m 755 $RPM_BUILD_ROOT%{_docdir}/HTML/<xsl:choose><xsl:when test="@lang='en_US'">en</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose>/fedora-doc-%{docbase}/{}
+find -L . -type f | xargs -i \
+ install -D -m 644 {} $RPM_BUILD_ROOT%{_docdir}/HTML/<xsl:choose><xsl:when test="@lang='en_US'">en</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose>/fedora-doc-%{docbase}/{}
popd
</xsl:for-each>
@@ -98,32 +109,29 @@
/bin/rm -rf $RPM_BUILD_ROOT
<xsl:for-each select="/rpm-info/titles/translation">
-%post <xsl:if test="@lang != 'en'"><xsl:value-of select="@lang"/></xsl:if>
+%post <xsl:if test="@lang != 'en_US'"><xsl:value-of select="@lang"/></xsl:if>
/usr/bin/scrollkeeper-update || true
-%postun <xsl:if test="@lang != 'en'"><xsl:value-of select="@lang"/></xsl:if>
+%postun <xsl:if test="@lang != 'en_US'"><xsl:value-of select="@lang"/></xsl:if>
/usr/bin/scrollkeeper-update || true
</xsl:for-each>
%files
%defattr(-, root, root, -)
-%dir %{_datadir}/fedora/doc/fedora-doc-%{docbase}
-%dir %{_datadir}/fedora/doc/fedora-doc-%{docbase}/C
-%{_datadir}/fedora/doc/fedora-doc-%{docbase}/C/*
+%{_datadir}/fedora/doc/fedora-doc-%{docbase}/
%{_datadir}/applications/*.desktop
%{_datadir}/applications/kde/*.desktop
-%{_datadir}/apps/khelpcenter/plugins/Fedora/*.desktop
-%dir %{_datadir}/omf/fedora-doc-%{docbase}
-%{_datadir}/omf/fedora-doc-%{docbase}/fedora-doc-%{docbase}-C.omf
-%{_docdir}/HTML/en/fedora-doc-%{docbase}/*
+%{_datadir}/apps/khelpcenter/
+%{_datadir}/omf/fedora-doc-%{docbase}/
+%{_docdir}/HTML/en/fedora-doc-%{docbase}/
-<xsl:for-each select="/rpm-info/titles/translation"><xsl:if test="@lang != 'en'">
+<xsl:for-each select="/rpm-info/titles/translation"><xsl:if test="@lang != 'en_US'">
%files <xsl:value-of select="@lang"/>
%defattr(-, root, root, -)
%dir %{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:value-of select="@lang"/>
%{_datadir}/fedora/doc/fedora-doc-%{docbase}/<xsl:value-of select="@lang"/>/*
%{_datadir}/omf/fedora-doc-%{docbase}/fedora-doc-%{docbase}-<xsl:value-of select="@lang"/>.omf
-%{_docdir}/HTML/<xsl:value-of select="@lang"/>/fedora-doc-%{docbase}/*
+%{_docdir}/HTML/<xsl:choose><xsl:when test="@lang='en_US'">en</xsl:when><xsl:otherwise><xsl:value-of select="@lang"/></xsl:otherwise></xsl:choose>/fedora-doc-%{docbase}/*
</xsl:if></xsl:for-each>
%changelog
More information about the docs-commits
mailing list