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