mirror of
https://github.com/upx/upx
synced 2025-09-28 19:06:07 +08:00
Update Travis.
This commit is contained in:
parent
daafc29d2b
commit
68159d457e
149
.travis.yml
149
.travis.yml
|
@ -1,21 +1,38 @@
|
||||||
sudo: false
|
sudo: false
|
||||||
language: cpp
|
language: cpp
|
||||||
|
|
||||||
|
notifications:
|
||||||
|
email: false
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- devel
|
- devel
|
||||||
- travis
|
- travis
|
||||||
|
|
||||||
|
addons:
|
||||||
|
sources: &apt_sources
|
||||||
|
- ubuntu-toolchain-r-test
|
||||||
|
- llvm-toolchain-precise-3.5
|
||||||
|
- llvm-toolchain-precise-3.6
|
||||||
|
- llvm-toolchain-precise-3.7
|
||||||
|
- llvm-toolchain-precise-3.8
|
||||||
|
|
||||||
|
env:
|
||||||
|
global:
|
||||||
|
- C= B=
|
||||||
|
matrix:
|
||||||
|
- TRAVIS_EMPTY_JOB_WORKAROUND=true
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
|
exclude:
|
||||||
|
- env: TRAVIS_EMPTY_JOB_WORKAROUND=true
|
||||||
include:
|
include:
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: C=clang-m32 B=debug
|
env: C=clang-m32 B=debug
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
packages:
|
packages: [ "g++-multilib", "zlib1g-dev:i386" ]
|
||||||
- g++-multilib
|
|
||||||
- zlib1g-dev:i386
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: C=clang-m64 B=debug
|
env: C=clang-m64 B=debug
|
||||||
|
@ -24,20 +41,72 @@ matrix:
|
||||||
env: C=clang-m32
|
env: C=clang-m32
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
packages:
|
packages: [ "g++-multilib", "zlib1g-dev:i386" ]
|
||||||
- g++-multilib
|
|
||||||
- zlib1g-dev:i386
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: C=clang-m64
|
env: C=clang-m64
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.5-m32
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.5", "g++-6-multilib", "zlib1g-dev:i386" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.5-m64
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.5" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.6-m32
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.6", "g++-6-multilib", "zlib1g-dev:i386" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.6-m64
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.6" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.7-m32
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.7", "g++-6-multilib", "zlib1g-dev:i386" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.7-m64
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.7" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.8-m32
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.8", "g++-6-multilib", "zlib1g-dev:i386" ]
|
||||||
|
- os: linux
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-3.8-m64
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "clang-3.8" ]
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: C=gcc-m32
|
env: C=gcc-m32
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
packages:
|
packages: [ "g++-multilib", "zlib1g-dev:i386" ]
|
||||||
- g++-multilib
|
|
||||||
- zlib1g-dev:i386
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: C=gcc-m64
|
env: C=gcc-m64
|
||||||
|
@ -46,62 +115,62 @@ matrix:
|
||||||
env: C=gcc-5-m32
|
env: C=gcc-5-m32
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
sources:
|
sources: *apt_sources
|
||||||
- ubuntu-toolchain-r-test
|
packages: [ "g++-5-multilib", "zlib1g-dev:i386" ]
|
||||||
packages:
|
|
||||||
- g++-5-multilib
|
|
||||||
- zlib1g-dev:i386
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc-5
|
compiler: gcc-5
|
||||||
env: C=gcc-5-m64
|
env: C=gcc-5-m64
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
sources:
|
sources: *apt_sources
|
||||||
- ubuntu-toolchain-r-test
|
packages: [ "g++-5" ]
|
||||||
packages:
|
|
||||||
- g++-5
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc-6
|
compiler: gcc-6
|
||||||
env: C=gcc-6-m32
|
env: C=gcc-6-m32
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
sources:
|
sources: *apt_sources
|
||||||
- ubuntu-toolchain-r-test
|
packages: [ "g++-6-multilib", "zlib1g-dev:i386" ]
|
||||||
packages:
|
|
||||||
- g++-6-multilib
|
|
||||||
- zlib1g-dev:i386
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc-6
|
compiler: gcc-6
|
||||||
env: C=gcc-6-m64
|
env: C=gcc-6-m64
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
sources:
|
sources: *apt_sources
|
||||||
- ubuntu-toolchain-r-test
|
packages: [ "g++-6" ]
|
||||||
packages:
|
|
||||||
- g++-6
|
|
||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc-6
|
compiler: gcc-6
|
||||||
# FIXME: linking fails - need updated binutils?
|
env: C=gcc-6-m64 B=debug+sanitize
|
||||||
env: C=gcc-6-m64 B=sanitize ALLOW_FAIL=1
|
|
||||||
addons:
|
addons:
|
||||||
apt:
|
apt:
|
||||||
sources:
|
sources: *apt_sources
|
||||||
- ubuntu-toolchain-r-test
|
packages: [ "g++-6" ]
|
||||||
packages:
|
- os: linux
|
||||||
- g++-6
|
compiler: gcc-6
|
||||||
|
env: C=gcc-6-m64 B=debug+valgrind
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: *apt_sources
|
||||||
|
packages: [ "g++-6", "valgrind" ]
|
||||||
- os: osx
|
- os: osx
|
||||||
compiler: clang
|
compiler: clang
|
||||||
env: C=clang-m64 B=debug
|
env: C=clang-m32
|
||||||
#osx_image: xcode7
|
osx_image: xcode7.3
|
||||||
- os: osx
|
- os: osx
|
||||||
compiler: clang
|
compiler: clang
|
||||||
# FIXME: linking fails with "ld: internal error: atom not found"
|
env: C=clang-m64
|
||||||
env: C=clang-m64 B=release ALLOW_FAIL=1
|
osx_image: xcode7.3
|
||||||
#osx_image: xcode7
|
- os: osx
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-m32
|
||||||
|
osx_image: xcode8
|
||||||
|
- os: osx
|
||||||
|
compiler: clang
|
||||||
|
env: C=clang-m64
|
||||||
|
osx_image: xcode8
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- DEPS_DIR="$TRAVIS_BUILD_DIR/deps"
|
- DEPS_DIR="$TRAVIS_BUILD_DIR/deps"; mkdir -p "$DEPS_DIR" && cd "$DEPS_DIR"
|
||||||
- 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
|
- 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
|
- git clone https://github.com/upx/upx-testsuite
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,18 @@ BUILD_METHOD="$B"
|
||||||
case $C in
|
case $C in
|
||||||
clang-m32) CC="clang -m32"; CXX="clang++ -m32" ;;
|
clang-m32) CC="clang -m32"; CXX="clang++ -m32" ;;
|
||||||
clang-m64) CC="clang -m64"; CXX="clang++ -m64" ;;
|
clang-m64) CC="clang -m64"; CXX="clang++ -m64" ;;
|
||||||
|
clang-3.4-m32) CC="clang-3.4 -m32"; CXX="clang++-3.4 -m32" ;;
|
||||||
|
clang-3.4-m64) CC="clang-3.4 -m64"; CXX="clang++-3.4 -m64" ;;
|
||||||
|
clang-3.5-m32) CC="clang-3.5 -m32"; CXX="clang++-3.5 -m32" ;;
|
||||||
|
clang-3.5-m64) CC="clang-3.5 -m64"; CXX="clang++-3.5 -m64" ;;
|
||||||
|
clang-3.6-m32) CC="clang-3.6 -m32"; CXX="clang++-3.6 -m32" ;;
|
||||||
|
clang-3.6-m64) CC="clang-3.6 -m64"; CXX="clang++-3.6 -m64" ;;
|
||||||
|
clang-3.7-m32) CC="clang-3.7 -m32"; CXX="clang++-3.7 -m32" ;;
|
||||||
|
clang-3.7-m64) CC="clang-3.7 -m64"; CXX="clang++-3.7 -m64" ;;
|
||||||
|
clang-3.8-m32) CC="clang-3.8 -m32"; CXX="clang++-3.8 -m32" ;;
|
||||||
|
clang-3.8-m64) CC="clang-3.8 -m64"; CXX="clang++-3.8 -m64" ;;
|
||||||
|
clang-3.9-m32) CC="clang-3.9 -m32"; CXX="clang++-3.9 -m32" ;;
|
||||||
|
clang-3.9-m64) CC="clang-3.9 -m64"; CXX="clang++-3.9 -m64" ;;
|
||||||
gcc-m32) CC="gcc -m32"; CXX="g++ -m32" ;;
|
gcc-m32) CC="gcc -m32"; CXX="g++ -m32" ;;
|
||||||
gcc-m64) CC="gcc -m64"; CXX="g++ -m64" ;;
|
gcc-m64) CC="gcc -m64"; CXX="g++ -m64" ;;
|
||||||
gcc-5-m32) CC="gcc-5 -m32"; CXX="g++-5 -m32" ;;
|
gcc-5-m32) CC="gcc-5 -m32"; CXX="g++-5 -m32" ;;
|
||||||
|
@ -71,23 +83,27 @@ mkdir -p "$BUILD_DIR"
|
||||||
|
|
||||||
# build UCL
|
# build UCL
|
||||||
cd /; cd "$UPX_UCLDIR" || exit 1
|
cd /; cd "$UPX_UCLDIR" || exit 1
|
||||||
./configure --enable-static --disable-shared
|
./configure --enable-static --disable-shared --disable-asm
|
||||||
make
|
make
|
||||||
|
|
||||||
# build UPX
|
# build UPX
|
||||||
cd /; cd "$BUILD_DIR" || exit 1
|
cd /; cd "$BUILD_DIR" || exit 1
|
||||||
f="EXTRA_CPPFLAGS=-DUCL_NO_ASM"
|
export EXTRA_CPPFLAGS="-DUCL_NO_ASM"
|
||||||
make="make -f $TRAVIS_BUILD_DIR/src/Makefile $f"
|
case $BUILD_METHOD in
|
||||||
|
*sanitize) case $CC in gcc*) export EXTRA_LDFLAGS="-fuse-ld=gold" ;; esac ;;
|
||||||
|
*valgrind) export EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -DWITH_VALGRIND" ;;
|
||||||
|
esac
|
||||||
|
make="make -f $TRAVIS_BUILD_DIR/src/Makefile"
|
||||||
if test "X$ALLOW_FAIL" = "X1"; then
|
if test "X$ALLOW_FAIL" = "X1"; then
|
||||||
echo "ALLOW_FAIL=$ALLOW_FAIL"
|
echo "ALLOW_FAIL=$ALLOW_FAIL"
|
||||||
set +e
|
set +e
|
||||||
fi
|
fi
|
||||||
case $BUILD_METHOD in
|
case $BUILD_METHOD in
|
||||||
debug)
|
debug | debug+valgrind)
|
||||||
$make USE_DEBUG=1 ;;
|
$make USE_DEBUG=1 ;;
|
||||||
debug+sanitize)
|
debug+sanitize)
|
||||||
$make USE_DEBUG=1 USE_SANITIZE=1 ;;
|
$make USE_DEBUG=1 USE_SANITIZE=1 ;;
|
||||||
release)
|
release | release+valgrind | valgrind)
|
||||||
$make ;;
|
$make ;;
|
||||||
sanitize)
|
sanitize)
|
||||||
$make USE_SANITIZE=1 ;;
|
$make USE_SANITIZE=1 ;;
|
||||||
|
@ -111,6 +127,9 @@ if test "X$TRAVIS_OS_NAME" = "Xosx"; then
|
||||||
checksum=true # TODO: travis-osx does not have md5sum and friends?
|
checksum=true # TODO: travis-osx does not have md5sum and friends?
|
||||||
fi
|
fi
|
||||||
upx="$PWD/upx.out"
|
upx="$PWD/upx.out"
|
||||||
|
case $BUILD_METHOD in
|
||||||
|
*valgrind) upx="valgrind $upx" ;;
|
||||||
|
esac
|
||||||
upx_391=false
|
upx_391=false
|
||||||
if test "X$TRAVIS_OS_NAME" = "Xlinux"; then
|
if test "X$TRAVIS_OS_NAME" = "Xlinux"; then
|
||||||
cp "$TRAVIS_BUILD_DIR/deps/upx-testsuite/files/packed/amd64-linux.elf/upx-3.91" upx391.out
|
cp "$TRAVIS_BUILD_DIR/deps/upx-testsuite/files/packed/amd64-linux.elf/upx-3.91" upx391.out
|
||||||
|
|
Loading…
Reference in New Issue
Block a user