summaryrefslogtreecommitdiffstats
path: root/Makefile.inc
diff options
context:
space:
mode:
authorMartin Roth <martinroth@google.com>2015-10-15 14:33:31 -0600
committerPatrick Georgi <pgeorgi@google.com>2015-10-17 06:45:01 +0000
commitde9adebb10b5d076fb58742850dbe052cf9705f8 (patch)
treeef2440abcd45d1c1e3b4f4f73bdd21c5368d7aa0 /Makefile.inc
parentee09d9c65862a31070559ee3bdd1d8dab176451b (diff)
downloadcoreboot-staging-de9adebb10b5d076fb58742850dbe052cf9705f8.zip
coreboot-staging-de9adebb10b5d076fb58742850dbe052cf9705f8.tar.gz
Add junit.xml code to top Makefile.inc instead of utils
Instead of adding code to generate the junit.xml file for jenkins to each of the util makefiles, add it once to the top level Makefile.inc. Create a list of tools to run the test on. Add nvramtool and inteltool to the list of utilities tested. Note that the util builds depend on implicit rules, so MFLAGS and MAKEFLAGS have to be cleared to get the builds to work. Change-Id: Id7ee5ea41ce3bf4a40fb50942ae785bb838fa639 Signed-off-by: Martin Roth <martinroth@google.com> Reviewed-on: http://review.coreboot.org/11910 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Diffstat (limited to 'Makefile.inc')
-rw-r--r--Makefile.inc21
1 files changed, 20 insertions, 1 deletions
diff --git a/Makefile.inc b/Makefile.inc
index 38b2d40..cf1ac06 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -681,6 +681,25 @@ board_id-type := raw
$(obj)/board_id:
printf $(CONFIG_BOARD_ID_STRING) > $@
+junit.xml:
+ echo '<?xml version="1.0" encoding="utf-8"?><testsuite>' > $@.tmp
+ $(MAKE) -C "util/$(UTIL)" distclean > /dev/null 2>&1
+ echo "<testcase classname='$(UTIL)' name='$(UTIL)'>" >> $@.tmp
+ $(MAKE) -C "util/$(UTIL)" >> $@.tmp.2 2>&1 && type="system-out" || type="failure"; \
+ if [ "$$type" = "failure" ]; then \
+ echo "<failure type='buildFailed'>" >> $@.tmp; \
+ else \
+ echo "<$$type>" >> $@.tmp; \
+ fi; \
+ echo '<![CDATA[' >> $@.tmp; \
+ cat $@.tmp.2 >> $@.tmp; \
+ echo "]]></$$type>" >>$@.tmp
+ rm -f $@.tmp.2
+ echo "</testcase>" >> $@.tmp
+ echo "</testsuite>" >> $@.tmp
+ mv $@.tmp "util/$(UTIL)/$@"
+
+TOOLLIST=cbmem nvramtool inteltool
JENKINS_PAYLOAD?=none
CPUS?=4
what-jenkins-does:
@@ -688,4 +707,4 @@ what-jenkins-does:
util/abuild/abuild -B -J $(if $(JENKINS_NOCCACHE),,-y) -c $(CPUS) -z -p $(JENKINS_PAYLOAD) -x -X $(top)/abuild-chromeos.xml
util/abuild/abuild -B -J $(if $(JENKINS_NOCCACHE),,-y) -c $(CPUS) -z -p $(JENKINS_PAYLOAD)
(cd payloads/libpayload; unset COREBOOT_BUILD_DIR; $(MAKE) $(if $(JENKINS_NOCCACHE),,CONFIG_LP_CCACHE=y) V=$(V) Q=$(Q) junit.xml)
- $(MAKE) V=$(V) Q=$(Q) -C util/cbmem junit.xml
+ $(foreach tool, $(TOOLLIST), $(MAKE) V=$(V) Q=$(Q) UTIL="$(tool)" MFLAGS= MAKEFLAGS= junit.xml; )
OpenPOWER on IntegriCloud