diff --git a/.ci/travis_build.sh b/.ci/travis_build.sh index 6fb83d39..8e55d29f 100644 --- a/.ci/travis_build.sh +++ b/.ci/travis_build.sh @@ -2,7 +2,7 @@ ## vim:set ts=4 sw=4 et: set -e; set -o pipefail -# Support for Travis CI -- https://travis-ci.org/ +# Support for Travis CI -- https://travis-ci.org/upx/upx/builds # Copyright (C) Markus Franz Xaver Johannes Oberhumer source "$TRAVIS_BUILD_DIR/.ci/travis_init.sh" || exit 1 diff --git a/.ci/travis_init.sh b/.ci/travis_init.sh index 53b6ce3d..b73ab950 100644 --- a/.ci/travis_init.sh +++ b/.ci/travis_init.sh @@ -1,6 +1,6 @@ ## vim:set ts=4 sw=4 et: -# Support for Travis CI -- https://travis-ci.org/ +# Support for Travis CI -- https://travis-ci.org/upx/upx/builds # Copyright (C) Markus Franz Xaver Johannes Oberhumer umask 022 @@ -14,12 +14,16 @@ BUILD_METHOD="$B" CC=false CXX=false SCAN_BUILD=false case $C in - clang-m?? | clang-3.4-m?? | clang-[78][0-9][0-9]-m??) + clang | clang-m?? | clang-3.4-m?? | clang-[78][0-9][0-9]-m??) + # standard system compiler CC="clang -std=gnu90"; CXX="clang++" ;; clang-3.[0-9]-m??) v=${C:6:3}; CC="clang-$v -std=gnu90"; CXX="clang++-$v"; SCAN_BUILD="scan-build-$v" ;; - gcc-m?? | gcc-4.6-m??) + gcc | gcc-m?? | gcc-4.6-m??) + # standard system compiler CC="gcc -std=gnu90"; CXX="g++" ;; + gcc-4.[0-9]-m??) + v=${C:4:3}; CC="gcc-$v"; CXX="g++-$v" ;; gcc-[56]-m?? | gcc-[56].[0-9]-m??) v=${C:4:1}; CC="gcc-$v -std=gnu90"; CXX="g++-$v" ;; esac diff --git a/.ci/travis_testsuite.sh b/.ci/travis_testsuite.sh index fc64a0d3..3684ff95 100644 --- a/.ci/travis_testsuite.sh +++ b/.ci/travis_testsuite.sh @@ -2,7 +2,7 @@ ## vim:set ts=4 sw=4 et: set -e; set -o pipefail -# Support for Travis CI -- https://travis-ci.org/ +# Support for Travis CI -- https://travis-ci.org/upx/upx/builds # Copyright (C) Markus Franz Xaver Johannes Oberhumer source "$TRAVIS_BUILD_DIR/.ci/travis_init.sh" || exit 1 @@ -10,6 +10,11 @@ source "$TRAVIS_BUILD_DIR/.ci/travis_init.sh" || exit 1 set -x cd /; cd "$BUILD_DIR" || exit 1 +if test "$ALLOW_FAIL" = "1"; then + echo "ALLOW_FAIL=$ALLOW_FAIL" + set +e + if ! test -x $PWD/upx.out; then exit 0; fi +fi if ! test -x $PWD/upx.out; then exit 1; fi # diff --git a/.travis.yml b/.travis.yml index ebe2003e..4b60e914 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,4 @@ -# Support for Travis CI -- https://travis-ci.org/ +# Support for Travis CI -- https://travis-ci.org/upx/upx/builds # Copyright (C) Markus Franz Xaver Johannes Oberhumer sudo: false @@ -30,6 +30,14 @@ matrix: exclude: - env: TRAVIS_EMPTY_JOB_WORKAROUND=true include: + - os: linux + compiler: gcc + env: C=gcc-4.4-m32 + addons: { apt: { sources: *S, packages: [ "g++-4.4-multilib", "zlib1g-dev:i386" ] } } + - os: linux + compiler: gcc + env: C=gcc-4.4-m64 + addons: { apt: { sources: *S, packages: [ "g++-4.4" ] } } - os: linux compiler: gcc env: C=gcc-4.6-m32 @@ -39,35 +47,35 @@ matrix: env: C=gcc-4.6-m64 - os: linux compiler: gcc - env: C=gcc-5.4-m32 + env: C=gcc-5-m32 addons: { apt: { sources: *S, packages: [ "g++-5-multilib", "zlib1g-dev:i386" ] } } - os: linux compiler: gcc - env: C=gcc-5.4-m64 + env: C=gcc-5-m64 addons: { apt: { sources: *S, packages: [ "g++-5" ] } } - os: linux compiler: gcc - env: C=gcc-6.2-m32 + env: C=gcc-6-m32 addons: { apt: { sources: *S, packages: [ "g++-6-multilib", "zlib1g-dev:i386" ] } } - os: linux compiler: gcc - env: C=gcc-6.2-m64 + env: C=gcc-6-m64 addons: { apt: { sources: *S, packages: [ "g++-6" ] } } - os: linux compiler: gcc - env: C=gcc-6.2-m32 B=debug + env: C=gcc-6-m32 B=debug addons: { apt: { sources: *S, packages: [ "g++-6-multilib", "zlib1g-dev:i386" ] } } - os: linux compiler: gcc - env: C=gcc-6.2-m64 B=debug + env: C=gcc-6-m64 B=debug addons: { apt: { sources: *S, packages: [ "g++-6" ] } } - os: linux compiler: gcc - env: C=gcc-6.2-m64 B=debug+sanitize + env: C=gcc-6-m64 B=debug+sanitize addons: { apt: { sources: *S, packages: [ "g++-6" ] } } - os: linux compiler: gcc - env: C=gcc-6.2-m64 B=release+valgrind + env: C=gcc-6-m64 B=valgrind addons: { apt: { sources: *S, packages: [ "g++-6", "valgrind" ] } } - os: linux compiler: clang @@ -130,12 +138,12 @@ matrix: osx_image: xcode8 allow_failures: - os: linux - env: C=gcc-6.2-m64 B=debug+sanitize + env: C=gcc-6-m64 B=debug+sanitize install: - umask 022; DEPS_DIR="$TRAVIS_BUILD_DIR/deps"; mkdir -p "$DEPS_DIR" && cd "$DEPS_DIR" - - wget --no-check-certificate -q -O - https://download.freenas.org/distfiles/ucl-1.03.tar.gz | tar -xz - - git clone https://github.com/upx/upx-testsuite + - travis_retry wget --no-check-certificate -q -O - https://download.freenas.org/distfiles/ucl-1.03.tar.gz | tar -xz + - travis_retry git clone https://github.com/upx/upx-testsuite script: - bash $TRAVIS_BUILD_DIR/.ci/travis_build.sh