Author: Mike Wetherell
RCS-ID: $Id$
Copyright: (c) 2007 Mike Wetherell
- Licence: wxWidgets licence
+ Licence: wxWindows licence
-->
<bot xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
<xsl:template name="SVN_URL">http://svn.wxwidgets.org/svn/wx/wxWidgets/</xsl:template>
<xsl:template name="STABLE_BRANCH">branches/WX_2_8_BRANCH</xsl:template>
<xsl:variable name="STABLE_BRANCH"><STABLE_BRANCH/></xsl:variable>
-<xsl:template name="RELEASE_BRANCH">branches/WX_2_9_BRANCH</xsl:template>
+<xsl:template name="RELEASE_BRANCH">branches/WX_2_9_0_BRANCH</xsl:template>
<xsl:variable name="RELEASE_BRANCH"><RELEASE_BRANCH/></xsl:variable>
<xsl:template name="SNAPSHOT_URL">http://biolpc22.york.ac.uk/pub</xsl:template>
+<!--
+ disable - comment out a section.
+
+ Usage: <disable>
+ e.g. <build> ... etc.
+ </disable>
+
+ XML comments can't contain a double hyphen which tends to be used in
+ configure commands, so <disable> can be used instead.
+-->
+<xsl:template name="disable"/>
+
<!--
checkout - build step for source checkout.
-->
<xsl:template name="run-tests">
<xsl:param name="content"/>
- <xsl:param name="options"/>
+ <xsl:param name="options" select="'-t'"/>
+ <xsl:param name="guioptions" select="$options"/>
<xsl:param name="msw"><is-msw/></xsl:param>
<test>
<defaults content="{$content}">
<command>
<xsl:choose>
<xsl:when test="$msw = 'true'">
- <run-tests-win options="{$options}"/>
+ <run-tests-win options="{$options}" guioptions="{$guioptions}"/>
</xsl:when>
<xsl:otherwise>
- <run-tests-unix options="{$options}"/>
+ <run-tests-unix options="{$options}" guioptions="{$guioptions}"/>
</xsl:otherwise>
</xsl:choose>
</command>
<xsl:template name="run-tests-win">
<xsl:param name="options"/>
+ <xsl:param name="guioptions"/>
<normalize-space>
cd tests && runtests.bat
</normalize-space>
<xsl:template name="run-tests-unix">
<xsl:param name="options"/>
-<normalize-space>
-cd tests &&
-./test <xsl:value-of select="normalize-space($options)"/> &&
-if [ -n "$DISPLAY" -a -x test_gui ]; then ./test_gui; fi
-</normalize-space>
+ <xsl:param name="guioptions"/>
+ERR=0
+cd tests || exit 0
+ulimit -c unlimited
+
+try()
+{
+ rm -f core
+ echo Running: "$@"
+ "$@" || ERR=$?
+
+ if [ -f core -a -x "`which gdb`" ]; then
+ echo Crashed, attempting to display backtrace:
+ gdb -batch -c core -ex 'set pagination off' -ex bt "$1"
+ fi
+
+ echo
+}
+
+try ./test <xsl:value-of select="normalize-space($options)"/>
+
+test -x test_gui || exit $ERR
+
+if [ -z "$DISPLAY" ]; then
+ echo '$DISPLAY is not set, skipping GUI tests.'
+ exit $ERR
+fi
+
+echo 'Checking window manager:'
+WINDOW_MANAGER=$(xprop -root 32x '\n$0\n' _NET_SUPPORTING_WM_CHECK | grep ^0x)
+
+if [ -z "$WINDOW_MANAGER" ]; then
+ echo 'Window manager not present, skipping GUI tests.'
+ exit $ERR
+fi
+
+xprop -id $WINDOW_MANAGER 8s _NET_WM_NAME
+echo
+
+try ./test_gui <xsl:value-of select="normalize-space($guioptions)"/>
+
+exit $ERR
</xsl:template>
<!--