--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+ Name: common.xml
+ Purpose: Schedulers and locks common to all slaves.
+ Author: Mike Wetherell
+ RCS-ID: $Id$
+ Copyright: (c) 2007 Mike Wetherell
+ Licence: wxWidgets licence
+-->
+
+<bot xmlns:xi="http://www.w3.org/2001/XInclude"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ xsl:version="1.0">
+
+<xi:include href="include.xml" xpointer="xpointer(*/*)"/>
+
+<!--
+ Quick schedulers. Builds using these are triggered after each change to
+ the sources on the given branch.
+
+ name: unique
+ branch: branch to watch
+ treeStableTimer: wait until the tree has stopped changing for the
+ given number of seconds before firing
+ fileNotImportant: files matching these patterns do not trigger a build
+-->
+
+<scheduler>
+ <name>trunk_quick</name>
+ <branch>trunk</branch>
+ <treeStableTimer>900</treeStableTimer>
+ <fileNotImportant>doc/*</fileNotImportant>
+</scheduler>
+
+<scheduler>
+ <name>stable_quick</name>
+ <branch><STABLE_BRANCH/></branch>
+ <treeStableTimer>900</treeStableTimer>
+ <fileNotImportant>doc/*</fileNotImportant>
+</scheduler>
+
+<!--
+ Schedulers that fire once a week.
+
+ A build can use one of these to be triggered once a week, or more than
+ one if it should run several times a week on particular days.
+-->
+
+<nightly>
+ <name>sunday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>0</dayOfWeek>
+</nightly>
+
+<nightly>
+ <name>monday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>1</dayOfWeek>
+</nightly>
+
+<nightly>
+ <name>tuesday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>2</dayOfWeek>
+</nightly>
+
+<nightly>
+ <name>wednesday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>3</dayOfWeek>
+</nightly>
+
+<nightly>
+ <name>thursday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>4</dayOfWeek>
+</nightly>
+
+<nightly>
+ <name>friday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>5</dayOfWeek>
+</nightly>
+
+<nightly>
+ <name>saturday_6am</name>
+ <hour>6</hour>
+ <dayOfWeek>6</dayOfWeek>
+</nightly>
+
+<!--
+ Schedulers for daily builds.
+-->
+
+<nightly>
+ <name>daily_6am</name>
+ <hour>6</hour>
+</nightly>
+
+<!--
+ Track SVN changes using the wx-cvs mailing list.
+ The <prefix> is subtracted from the paths in the 'Modified Files:'
+ section, the remainder is then assumed to give the branch and filename.
+-->
+
+<svnmaildirsource>
+ <prefix>wxWidgets</prefix>
+</svnmaildirsource>
+
+</bot>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+ Name: example.xml
+ Purpose: Buildbot example configuration.
+ Author: Mike Wetherell
+ RCS-ID: $Id$
+ Copyright: (c) 2007 Mike Wetherell
+ Licence: wxWidgets licence
+
+ There is one xml file such as this per build slave containing a <build>
+ element for each build the slave runs. Each <build> corresponds to a
+ column in the waterfall display.
+-->
+
+<bot xmlns:xi="http://www.w3.org/2001/XInclude"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ xsl:version="1.0">
+
+<!--
+ Common declarations.
+-->
+<xi:include href="include.xml" xpointer="xpointer(*/*)"/>
+
+<!--
+ Notes:
+
+ The elements marked 'Unique' below must be unique across all builds on
+ all slaves.
+
+ If a build is currently failing because of something other than a bug in
+ wxWidgets, e.g. out of space or missing libs, then comment it out, or
+ add '** Ignore **' to the beginning of the <name>, so that wxWidgets
+ developers know not to waste time investigating.
+-->
+<build>
+ <!--
+ Unique. Appears as the title in the waterfall display.
+ -->
+ <name>Linux x86_64 wxGTK Stable</name>
+
+ <!--
+ Unique. The name of a directory for the bulid. On most slaves must
+ be a single name, on the Testdrive builds it must be a path such as
+ '/tmp/wx/td_gtk'.
+ -->
+ <builddir>example_gtk</builddir>
+
+ <!--
+ The name of a scheduler that will trigger this build. The schedulers
+ are usually defined in common.xml, look in there to see if there is
+ already one you can use, and add a new one if not.
+
+ The 'trunk_quick' and 'stable_quick' schedulers currently in
+ common.xml trigger a build after every source change on the trunk
+ and stable branches respectively. There are also daily and weekly
+ schedulers 'daily_6am', 'monday_6am', 'tuesday_6am' and so on.
+
+ The <scheduler> element can be omitted, in which case the build
+ never runs automatically, but can still be triggered manually.
+ Or you can use several, e.g. you could use two weekly schedulers
+ that fire on different days to have a build run twice a week.
+ -->
+ <scheduler>trunk_quick</scheduler>
+
+ <!--
+ The meaning of <sandbox> is specific to the build slave. There
+ should be a comment in the slave's configuration file saying if they
+ are allowed or required. On the testdrive it specifies the remote
+ machine that will run the bulid.
+ -->
+ <sandbox>debug</sandbox>
+
+ <!--
+ You can override the make command the compile steps will use using
+ this <make> element, if omitted defaults to 'make'. For Windows
+ builds this becomes the place to put build options as there is no
+ configure step.
+ -->
+ <make>nmake -f makefile.vc SHARED=1 CPPUNIT_CFLAGS=-I\cppunit\include CPPUNIT_LIBS=cppunit.lib</make>
+
+ <!--
+ The build steps.
+ -->
+ <steps>
+ <!--
+ Check out the sources, by default the trunk branch. Or for a
+ particular branch or tag, e.g.:
+ <checkout branch="{$STABLE_BRANCH}"/>
+ <checkout branch="branches/WX_2_6_BRANCH"/>
+ -->
+ <checkout/>
+
+ <!--
+ A <shellcommand> build step can be used anywhere you need to run
+ arbitrary commands not covered by the standard build steps.
+ <haltOnFailure/> specifies that the whole build fails if this
+ step fails, without it it continues with the next step anyway.
+ -->
+ <shellcommand>
+ <description>setting up</description>
+ <descriptionDone>set up</descriptionDone>
+ <haltOnFailure/>
+ <command>setup-script</command>
+ </shellcommand>
+
+ <!--
+ Configure. Options and environment variables can be added with
+ the 'options' attribute:
+ <configure options="-with-foobar CC=cc CXX=CC"/>
+ Omitted for Windows builds.
+ -->
+ <configure/>
+
+ <!--
+ Compile the library. For Windows builds use <compile-msw/>
+ instead which runs the make command in the 'build\msw'
+ subdirectory instead of the wxWidgets root.
+ -->
+ <compile/>
+
+ <!--
+ Compile subdirectories. There is also <compile-contrib/> for
+ branches that have contrib.
+ -->
+ <compile-samples/>
+ <compile-utils/>
+ <compile-tests/>
+
+ <!--
+ Run the test suites. For Windows builds the command to run the
+ test suite must be overridden, e.g.:
+ <run-tests>
+ <command>PATH=..\lib\vc_dll;%PATH%</command>
+ <command>cd tests</command>
+ <command>vc_msw\test</command>
+ <command>vc_msw\test_gui</command>
+ </run-tests>
+ -->
+ <run-tests/>
+ </steps>
+</build>
+
+</bot>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+ Name: testdrive.xml
+ Purpose: Buildbot configuration for the HP Testdrive.
+ Author: Mike Wetherell
+ RCS-ID: $Id$
+ Copyright: (c) 2007 Mike Wetherell
+ Licence: wxWidgets licence
+-->
+
+<bot xmlns:xi="http://www.w3.org/2001/XInclude"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:exsl="http://exslt.org/common"
+ xsl:version="1.0">
+
+<xi:include href="testdrive-inc.xml" xpointer="xpointer(*/*)"/>
+
+<!--
+ Notes:
+
+ The list of available machines is here:
+ http://www.testdrive.hp.com/current.shtml
+ Currently only unix hosts are supported, with hopefully one or more
+ Windows machines to follow.
+
+ <sandbox> specifies the remote machine that will run the job, or it can
+ be 'debug' in which case the sandbox will just echo the commands.
+
+ <builddir> specifies an absolute path on the remote machine for the
+ build, rather than the usual single directory name. The last component
+ also specifies a subdirectory on the master for logs, which as usual
+ must be unique across all slaves.
+
+ An extra build step <setup> is required after <checkout> to set up
+ prerequisites such as ccache and cppunit. Cppunit generally needs to be
+ compiled by the same compiler that will be used for wxWidgets, add
+ configure options using the 'cppunit-options' attribute when needed, e.g.:
+ <setup cppunit-options="CC=cc CXX=CC"/>
+
+ Cross compilers available on the Linux x86 machines (more coming):
+ powerpc-apple-darwin8
+ i686-apple-darwin8
+
+ Please limit the number of quick builds to one unix, one Windows and one
+ Mac per branch. And please don't load up all the cpus of a remote machine
+ at once with make -j.
+-->
+
+<build>
+ <name>Linux x86_64 wxGTK Trunk</name>
+ <sandbox>td162.testdrive.hp.com</sandbox>
+ <builddir>/tmp/wx/td_gtk</builddir>
+ <scheduler>trunk_quick</scheduler>
+
+ <steps>
+ <checkout/>
+
+ <setup/>
+ <configure/>
+
+ <compile/>
+ <compile-samples/>
+ <compile-utils/>
+ <compile-tests/>
+
+ <run-tests/>
+ </steps>
+</build>
+
+<build>
+ <name>Linux x86_64 wxGTK Stable</name>
+ <sandbox>td166.testdrive.hp.com</sandbox>
+ <builddir>/tmp/wx/td_gtk_stable</builddir>
+ <scheduler>stable_quick</scheduler>
+
+ <steps>
+ <checkout branch="{$STABLE_BRANCH}"/>
+
+ <setup/>
+ <configure/>
+
+ <compile/>
+ <compile-samples/>
+ <compile-utils/>
+ <compile-contrib/>
+ <compile-tests/>
+
+ <run-tests/>
+ </steps>
+</build>
+
+<build>
+ <name>OSX PowerPC wxMac Trunk</name>
+ <sandbox>td179.testdrive.hp.com</sandbox>
+ <builddir>/tmp/wx/td_mac</builddir>
+ <scheduler>trunk_quick</scheduler>
+
+ <steps>
+ <checkout/>
+
+ <setup cppunit-options="--host=powerpc-apple-darwin8"/>
+ <configure options="--host=powerpc-apple-darwin8"/>
+
+ <compile/>
+ <compile-samples/>
+ <compile-utils/>
+ <compile-tests/>
+ </steps>
+</build>
+
+<build>
+ <name>OSX Intel wxMac Stable</name>
+ <sandbox>td186.testdrive.hp.com</sandbox>
+ <builddir>/tmp/wx/td_mac_stable</builddir>
+ <scheduler>stable_quick</scheduler>
+
+ <steps>
+ <checkout branch="{$STABLE_BRANCH}"/>
+
+ <setup cppunit-options="--host=i686-apple-darwin8"/>
+ <configure options="--host=i686-apple-darwin8"/>
+
+ <compile/>
+ <compile-samples/>
+ <compile-utils/>
+ <compile-contrib/>
+ <compile-tests/>
+ </steps>
+</build>
+
+<build>
+ <name>FreeBSD x86 wxX11 Stable</name>
+ <sandbox>td152.testdrive.hp.com</sandbox>
+ <builddir>/tmp/wx/td_freebsd_stable</builddir>
+ <scheduler>daily_6am</scheduler>
+
+ <steps>
+ <checkout branch="{$STABLE_BRANCH}"/>
+
+ <setup/>
+ <configure options="--with-x11"/>
+
+ <compile/>
+ <compile-samples/>
+ <compile-utils/>
+ <compile-contrib/>
+ <compile-tests/>
+
+ <run-tests/>
+ </steps>
+</build>
+
+<build>
+ <name>HP-UX 11i PA-RISC gcc wxMotif Stable</name>
+ <sandbox>td192.testdrive.hp.com</sandbox>
+ <builddir>/tmp/wx/td_hpux_pa_stable</builddir>
+ <scheduler>daily_6am</scheduler>
+
+ <steps>
+ <checkout branch="{$STABLE_BRANCH}"/>
+
+ <setup/>
+ <configure/>
+
+ <compile/>
+ <compile-samples/>
+ <compile-utils/>
+ <compile-contrib/>
+ <compile-tests/>
+
+ <run-tests/>
+ </steps>
+</build>
+
+</bot>