trunk
Last change
on this file since 41a4032 was a6fbc65, checked in by Pierre Labastie <pierre.labastie@…>, 3 years ago |
Allow to store version of -pass1 packages
With the new way of treating dependencies, we need to properly
manage -pass1 packages: For that we need the installed version of
-pass1 packages. But it is recorded nowhere. packages.xml shouldn't
be used for that, because it is directly built from the book
dependencies: adding -pass1 packages would just duplicate the
dependency information. So the version has to be recorded in
the tracking file. This involves changing bump.xsl (this commit),
and passing the tracking file to gen_pkg_book (next commit).
|
-
Property mode
set to
100644
|
File size:
1.8 KB
|
Line | |
---|
1 | <?xml version="1.0" encoding="ISO-8859-1"?>
|
---|
2 |
|
---|
3 | <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
---|
4 | version="1.0">
|
---|
5 |
|
---|
6 | <xsl:param name="packages" select="'packages.xml'"/>
|
---|
7 | <xsl:param name="package" select="''"/>
|
---|
8 | <xsl:param name="version" select="'N'"/>
|
---|
9 |
|
---|
10 | <xsl:variable name="realpackage">
|
---|
11 | <xsl:choose>
|
---|
12 | <xsl:when test="contains($package, '-pass1')">
|
---|
13 | <xsl:copy-of select="substring-before($package, '-pass1')"/>
|
---|
14 | </xsl:when>
|
---|
15 | <xsl:otherwise>
|
---|
16 | <xsl:copy-of select="$package"/>
|
---|
17 | </xsl:otherwise>
|
---|
18 | </xsl:choose>
|
---|
19 | </xsl:variable>
|
---|
20 |
|
---|
21 | <xsl:variable name="vers">
|
---|
22 | <xsl:choose>
|
---|
23 | <xsl:when test="$version='N'">
|
---|
24 | <xsl:value-of select=
|
---|
25 | "document($packages)//*[self::package or self::module]
|
---|
26 | [string(name)=$realpackage]/version"/>
|
---|
27 | </xsl:when>
|
---|
28 | <xsl:otherwise>
|
---|
29 | <xsl:copy-of select="$version"/>
|
---|
30 | </xsl:otherwise>
|
---|
31 | </xsl:choose>
|
---|
32 | </xsl:variable>
|
---|
33 |
|
---|
34 | <xsl:output
|
---|
35 | method="xml"
|
---|
36 | encoding="ISO-8859-1"
|
---|
37 | doctype-system="PACKDESC"/>
|
---|
38 |
|
---|
39 | <xsl:template match="/">
|
---|
40 | <sublist>
|
---|
41 | <xsl:copy-of select="./sublist/name"/>
|
---|
42 | <xsl:apply-templates select=".//package"/>
|
---|
43 | <xsl:if test="not(.//package[string(name)=$package])">
|
---|
44 | <package>
|
---|
45 | <name><xsl:copy-of select="$package"/></name>
|
---|
46 | <version><xsl:copy-of select="$vers"/></version>
|
---|
47 | </package>
|
---|
48 | </xsl:if>
|
---|
49 | </sublist>
|
---|
50 | </xsl:template>
|
---|
51 |
|
---|
52 | <xsl:template match="package">
|
---|
53 | <xsl:choose>
|
---|
54 | <xsl:when test="string(name)=$package">
|
---|
55 | <package>
|
---|
56 | <name><xsl:copy-of select="$package"/></name>
|
---|
57 | <version><xsl:copy-of select="$vers"/></version>
|
---|
58 | </package>
|
---|
59 | </xsl:when>
|
---|
60 | <xsl:otherwise>
|
---|
61 | <xsl:copy-of select='.'/>
|
---|
62 | </xsl:otherwise>
|
---|
63 | </xsl:choose>
|
---|
64 | </xsl:template>
|
---|
65 |
|
---|
66 | </xsl:stylesheet>
|
---|
Note:
See
TracBrowser
for help on using the repository browser.