Try s390x and sh4 cross builds/tests
authorAnthony Green <green@moxielogic.com>
Wed, 6 Nov 2019 15:49:04 +0000 (10:49 -0500)
committerAnthony Green <green@moxielogic.com>
Wed, 6 Nov 2019 15:49:04 +0000 (10:49 -0500)
.travis.yml
.travis/build-in-container.sh
.travis/build.sh
.travis/install.sh

index b11dbc9343bb8257b15fbd2c299c942239ad29e5..ba96cf452ee3f9a63d0104747e66cf5ed5dc7849 100644 (file)
@@ -7,6 +7,10 @@ matrix:
   include:
     - os: osx
       env: HOST=arm-apple-darwin
+    - os: linux
+      env: HOST=sh4-linux-gnu MEVAL='export CC="sh4-linux-gnu-gcc-8" && CXX="sh4-linux-gnu-g++-8"' CONFIGURE_OPTIONS=--disable-shared QEMU_LD_PREFIX=/usr/sh4-linux-gnu
+    - os: linux
+      env: HOST=s390x-linux-gnu MEVAL='export CC="s390x-linux-gnu-gcc-8" && CXX="s390x-linux-gnu-g++-8"' CONFIGURE_OPTIONS=--disable-shared QEMU_LD_PREFIX=/usr/s390x-linux-gnu
     - os: linux
       env: HOST=hppa-linux-gnu MEVAL='export CC="hppa-linux-gnu-gcc-5" && CXX="hppa-linux-gnu-g++-5"' CONFIGURE_OPTIONS=--disable-shared QEMU_LD_PREFIX=/usr/hppa-linux-gnu
     - os: linux
index dc412c2b27e7c15738c9e464c0e5e7ad6786d51a..85624bff8416d524f168d9237164a4edd5d7fb85 100755 (executable)
@@ -2,7 +2,13 @@
 
 cd /opt
 
-./configure 
+export QEMU_LD_PREFIX=/usr/${HOST}
+
+if ! test "x$HOST" == "x"; then
+    ./configure --host=${HOST} --disable-shared;
+else
+    ./configure
+fi
 make
 make dist
 make check RUNTESTFLAGS="-a $RUNTESTFLAGS"
index 7baa81fc96bc161e68566cb844ffcfad270b093d..50cc9a4ffa49393f634e53db77a76a5d4a177fe9 100755 (executable)
@@ -34,6 +34,12 @@ function build_foreign_linux()
     exit $?
 }
 
+function build_cross_linux()
+{
+    docker run --rm -t -i -v `pwd`:/opt --rm -ti -e HOST="${HOST}" LIBFFI_TEST_OPTIMIZATION="${LIBFFI_TEST_OPTIMIZATION}" $2 bash -c /opt/.travis/build-in-container.sh
+    exit $?
+}
+
 function build_ios()
 {
     which python
@@ -56,6 +62,9 @@ case "$HOST" in
     aarch64-linux-gnu| powerpc64le-unknown-linux-gnu | mips64el-linux-gnu | sparc64-linux-gnu)
         build_cfarm
        ;;
+    sh4-linux-gnu | s390x-linux-gnu )
+       build_cross_linux
+       ;;
     *)
        ./autogen.sh
        build_linux
index fec9dbae37208bbd0ebf3e1123785668ee6405a3..abe5d88f414fba3892dfbf57be2d0fdbc5f3fc5d 100755 (executable)
@@ -12,15 +12,12 @@ else
   case $HOST in
       aarch64-linux-gnu | powerpc64le-unknown-linux-gnu | mips64el-linux-gnu | sparc64-linux-gnu)
           ;;     
-      arm32v7-linux-gnu )
+      arm32v7-linux-gnu | sh4-linux-gnu | s390x-linux-gnu )
          sudo apt-get install qemu-user-static
          ;;
       hppa-linux-gnu )
          sudo apt-get install -y qemu-user-static g++-5-hppa-linux-gnu
          ;;
-      s390x-linux-gnu )
-         sudo apt-get install -y qemu-user-static g++-5-s390x-linux-gnu
-         ;;
       i386-pc-linux-gnu)
          sudo apt-get install gcc-multilib g++-multilib;
          ;;