blob: 8bf299b8e3d65f3027fc9ebf1d19162b2e8b5d0f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
<!-- Transform rpm-info.xml into a SPEC File -->
<xsl:stylesheet version="1.0" xml:space="preserve" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="UTF-8" indent="no" method="text" omit-xml-declaration="no" standalone="no" version="1.0"/>
<!-- Note: do not indent this file! Any whitespace here
will be reproduced in the output -->
<xsl:param name="lang" select="'en'" />
<xsl:param name="docbase" select="'example-tutorial'" />
<xsl:template match="/">
# Fedora Documentation Specfile
%define docbase <xsl:value-of select="$docbase"/>
Summary: Fedora Documentation: %{docbase}
Name: fedora-doc-%{docbase}
Version: <xsl:value-of select="/rpm-info/changelog/revision[1]/@version"/>
Release: <xsl:value-of select="/rpm-info/changelog/revision[1]/@release"/>
License: <xsl:value-of select="/rpm-info/license/rights"/> (Version <xsl:value-of select="/rpm-info/license/version"/>)
Url: http://fedora.redhat.com/projects/docs
Source0: %{docbase}-%{version}.src.tar.gz
Source1: %{name}-gnome.desktop
Source2: %{name}-kde.desktop
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
select="@lang"/></xsl:otherwise></xsl:choose>.omf
</xsl:for-each>
Group: Documentation
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: scrollkeeper >= 0.3.11
Requires: fedora-doc-common
BuildRequires: xmlto
BuildRequires: kdelibs
%description
<xsl:value-of select="/rpm-info/titles/translation[@lang='en']/desc" />
<xsl:for-each select="/rpm-info/titles/translation"><xsl:if test="@lang != 'en'">%description <xsl:value-of select="@lang"/>
<xsl:value-of select="desc"/></xsl:if></xsl:for-each>
%prep
%setup -q -n %{docbase}-${version}
for in in $RPM_BUILD_DIR/%{docbase}-%{version}/%{docbase}*.xml
do
%{__sed} -i 's;../docs-common;../../docs-common;' "$i"
done
%build
# /bin/rm -r $RPM_BUILD_ROOT
# /usr/bin/install -d -m 0755 $RPM_BUILD_ROOT/%{_datadir}/omf/%{name}
%clean
/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>
/usr/bin/scrollkeeper-update || true
%postun <xsl:if test="@lang != 'en'"><xsl:value-of select="@lang"/></xsl:if>
/usr/bin/scrollkeeper-update || true
%files <xsl:if test="@lang != 'en'"><xsl:value-of select="@lang"/></xsl:if>
%defattr(-, root, root, -)
</xsl:for-each>
%changelog
<xsl:for-each select="/rpm-info/changelog/revision"><xsl:if test="@role='rpm'">* <xsl:value-of select="@date"/> - <xsl:value-of select="author/@wholename"/> <<xsl:value-of select="author/@email"/>> - <xsl:value-of select="@version"/>
- <xsl:value-of select="details"/>
</xsl:if></xsl:for-each>
</xsl:template>
<xsl:template name="get-title">
<xsl:for-each select="/rpm-info/titles/translation">
<xsl:choose>
<xsl:when test="@lang = $lang">
<xsl:value-of select="title"/>
</xsl:when>
</xsl:choose>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
|