1 <?xml version=
"1.0" encoding=
"utf-8"?>
4 Name: include/xp_vc.xml
5 Purpose: Declarations for the xp_vc slave
6 Author: Michael Wetherell
8 Copyright: (c) 2008 Michael Wetherell
9 Licence: wxWindows licence
12 <bot xmlns:
xsl=
"http://www.w3.org/1999/XSL/Transform"
13 xmlns:
xi=
"http://www.w3.org/2001/XInclude">
15 <xi:include href=
"defs.xml"/>
18 build - Override <build> to add a slave lock. This has the effect of
19 serialising builds for the same branch on this machine.
21 <xsl:template name=
"build">
22 <xsl:param name=
"content"/>
23 <xsl:variable name=
"checkout">
24 <xsl:apply-templates select=
"get:step('checkout')"/>
28 <xsl:value-of select=
"exsl:node-set($checkout)/svn/defaultBranch"/>
30 <xsl:copy-of select=
"$content"/>
35 checkout - checks out to a shared directory
37 Checks out to a directory '../$branch' shared between builds. Then exports
38 it to a clean 'build' directory for the job to build in. This relies on
39 builds for the same branch being serialised with a lock so that one build
40 doesn't update the shared source while another is exporting them.
45 <checkout branch="branches/WX_2_8_BRANCH"/>
48 <xsl:template name=
"checkout">
49 <xsl:param name=
"content"/>
50 <xsl:param name=
"branch" select=
"'trunk'"/>
51 <xsl:variable name=
"nodes" select=
"exsl:node-set($content)"/>
53 <xsl:if test=
"not($nodes/svnurl)">
54 <xsl:if test=
"not($nodes/baseURL)">
55 <baseURL><SVN_URL/></baseURL>
57 <xsl:if test=
"not($nodes/defaultBranch)">
58 <defaultBranch><xsl:value-of select=
"$branch"/></defaultBranch>
61 <xsl:if test=
"not($nodes/workdir)">
62 <workdir>../
<xsl:value-of select=
"$branch"/></workdir>
64 <xsl:copy-of select=
"$content"/>
67 <description>creating build directory
</description>
68 <descriptionDone>create build directory
</descriptionDone>
72 (if exist build rmdir /s/q build)
&&
73 svn export --native-eol CRLF
74 ..\
<xsl:value-of select=
"$branch"/> build