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 &gt; <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 &gt; <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