travis: enable building of the tools
authorDoug Goldstein <cardoe@cardoe.com>
Mon, 25 Apr 2016 14:46:18 +0000 (09:46 -0500)
committerWei Liu <wei.liu2@citrix.com>
Tue, 26 Apr 2016 14:23:16 +0000 (15:23 +0100)
For native (non-cross compiles) we now only require bcc, ld86, as86 for
building rombios, we can build the toolstack sans rombios and using the
system SeaBIOS due to known build issues. At the same time capture the
output of the configure scripts to help with tracking down future build
issues. This does not enable building of the toolstack with clang for
now due to multiple failures.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Andrew Cooper<andrew.cooper3@citrix.com>
Release-acked-by: Wei Liu <wei.liu2@citrix.com>
.travis.yml
scripts/travis-build [new file with mode: 0755]

index 741a8ab7ee42e88f3dfd89be4457676251f6a648..0eea94e114d48469f89ecf03dd511df8b4c85983 100644 (file)
@@ -75,18 +75,18 @@ addons:
             - gcc-5
             - g++-5
             - clang-3.8
+            - seabios
 # we must set CXX manually instead of using 'language: cpp' due to
 # travis-ci/travis-ci#3871
 before_script:
     - export CXX=${CC/cc/++}
     - export CXX=${CXX/clang/clang++}
 script:
-    - ( [ "x${RANDCONFIG}" = "xy" ] && ( make -C xen randconfig )
-      || exit 0 )
-    - ( ./configure --disable-tools --disable-stubdom --enable-docs &&
-      make dist )
+    - ./scripts/travis-build
 after_script:
     - cat xen/.config
+    - cat tools/config.log
+    - cat docs/config.log
 notifications:
     irc:
         channels:
diff --git a/scripts/travis-build b/scripts/travis-build
new file mode 100755 (executable)
index 0000000..b553f20
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/bash -ex
+
+# random config or default config
+if [[ "${RANDCONFIG}" == "y" ]]; then
+    make -C xen randconfig
+else
+    make -C xen defconfig
+fi
+
+# build up our configure options
+cfgargs=()
+cfgargs+=("--disable-stubdom") # more work needed into building this
+cfgargs+=("--disable-rombios")
+cfgargs+=("--enable-docs")
+cfgargs+=("--with-system-seabios=/usr/share/seabios/bios.bin")
+
+if [[ "${XEN_TARGET_ARCH}" == "x86_64" ]]; then
+    cfgargs+=("--enable-tools")
+else
+    cfgargs+=("--disable-tools") # we don't have the cross depends installed
+fi
+
+# Due to multiple build failures and the desire to get more
+# build testing (GCC only) enabled this is disabled
+if [[ "${clang}" == "y" ]]; then
+    cfgargs+=("--disable-tools")
+fi
+
+./configure "${cfgargs[@]}"
+
+make dist