2017-05-09 15:28:09 +02:00
|
|
|
language: cpp
|
2015-10-09 23:00:06 +02:00
|
|
|
|
|
|
|
matrix:
|
|
|
|
include:
|
2017-06-21 12:28:51 +02:00
|
|
|
# OSX
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: osx
|
|
|
|
compiler: clang
|
2016-05-15 01:36:31 +02:00
|
|
|
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release OPJ_CI_INCLUDE_IF_DEPLOY=1
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test code style
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: clang-3.8
|
|
|
|
env: OPJ_CI_CC=clang-3.8 OPJ_CI_CXX=clang-3.8 OPJ_CI_CHECK_STYLE=1 OPJ_CI_SKIP_TESTS=1
|
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
- flip
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Performance test with GCC
|
2017-05-09 15:28:09 +02:00
|
|
|
- os: linux
|
|
|
|
compiler: g++
|
2017-08-10 01:14:35 +02:00
|
|
|
dist: precise
|
2017-05-04 15:22:14 +02:00
|
|
|
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release OPJ_CI_INCLUDE_IF_DEPLOY=1 OPJ_CI_PERF_TESTS=1
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test compilation with AVX2
|
|
|
|
- os: linux
|
2017-07-01 01:46:55 +02:00
|
|
|
# "sudo: yes" and "dist: trusty" give us a worker with the AVX2 instruction set
|
|
|
|
sudo: yes
|
|
|
|
dist: trusty
|
2017-06-21 12:28:51 +02:00
|
|
|
compiler: clang-3.8
|
2017-07-01 01:46:55 +02:00
|
|
|
env: OPJ_CI_CC=clang-3.8 OPJ_CI_CXX=clang-3.8 OPJ_CI_INSTRUCTION_SETS="-mavx2" OPJ_CI_BUILD_CONFIGURATION=Release
|
2017-06-21 12:28:51 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- llvm-toolchain-precise-3.8
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- clang-3.8
|
|
|
|
|
|
|
|
# Test multi-threading
|
2016-05-25 18:39:41 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: g++
|
2017-08-10 01:14:35 +02:00
|
|
|
dist: precise
|
2016-05-25 18:39:41 +02:00
|
|
|
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release OPJ_NUM_THREADS=2
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test 32-bit compilation
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: g++
|
2015-10-09 23:00:06 +02:00
|
|
|
env: OPJ_CI_ARCH=i386 OPJ_CI_BUILD_CONFIGURATION=Release
|
2018-09-22 21:56:50 +02:00
|
|
|
dist: trusty
|
2015-10-15 00:58:58 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
packages:
|
|
|
|
- gcc-multilib
|
2017-05-09 15:28:09 +02:00
|
|
|
- g++-multilib
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Profile code (gcc -pg)
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: g++
|
2017-05-06 15:06:24 +02:00
|
|
|
env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Debug OPJ_CI_PROFILE=1
|
2018-09-22 21:56:50 +02:00
|
|
|
dist: trusty
|
2017-05-06 15:06:24 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
packages:
|
|
|
|
- valgrind
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test under ASAN
|
2018-02-25 19:20:38 +01:00
|
|
|
# Temporarily disabled since broken. See https://github.com/uclouvain/openjpeg/issues/1091
|
|
|
|
# - os: linux
|
|
|
|
# compiler: clang
|
|
|
|
# env: OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Debug OPJ_CI_ASAN=1
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test with CLang 3.8
|
2016-04-27 23:05:43 +02:00
|
|
|
- os: linux
|
2016-09-02 23:58:12 +02:00
|
|
|
compiler: clang-3.8
|
2017-07-03 14:14:03 +02:00
|
|
|
env: OPJ_CI_CC=clang-3.8 OPJ_CI_CXX=clang-3.8 OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release OPJ_CI_PERF_TESTS=1 OPJ_CI_BUILD_FUZZERS=1
|
2018-09-22 21:56:50 +02:00
|
|
|
dist: trusty
|
2016-08-06 12:26:46 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
2016-09-02 23:58:12 +02:00
|
|
|
- llvm-toolchain-precise-3.8
|
2016-08-06 12:26:46 +02:00
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
2016-09-02 23:58:12 +02:00
|
|
|
- clang-3.8
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test with mingw 32 bit
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: x86_64-w64-mingw32-g++
|
|
|
|
env: OPJ_CI_CC=x86_64-w64-mingw32-gcc OPJ_CI_CXX=x86_64-w64-mingw32-g++ OPJ_CI_ARCH=i386 OPJ_CI_BUILD_CONFIGURATION=Release
|
2018-09-22 21:56:50 +02:00
|
|
|
dist: trusty
|
2015-10-15 00:58:58 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
packages:
|
|
|
|
- gcc-mingw-w64-base
|
2017-05-09 15:28:09 +02:00
|
|
|
- binutils-mingw-w64-i686
|
|
|
|
- gcc-mingw-w64-i686
|
|
|
|
- gcc-mingw-w64
|
|
|
|
- g++-mingw-w64-i686
|
|
|
|
- gcc-multilib
|
|
|
|
- g++-multilib
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test with mingw 64 bit
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: x86_64-w64-mingw32-g++
|
|
|
|
env: OPJ_CI_CC=x86_64-w64-mingw32-gcc OPJ_CI_CXX=x86_64-w64-mingw32-g++ OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release
|
2018-09-22 21:56:50 +02:00
|
|
|
dist: trusty
|
2015-10-15 00:58:58 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
packages:
|
|
|
|
- gcc-mingw-w64-base
|
2017-05-09 15:28:09 +02:00
|
|
|
- binutils-mingw-w64-x86-64
|
|
|
|
- gcc-mingw-w64-x86-64
|
|
|
|
- gcc-mingw-w64
|
|
|
|
- g++-mingw-w64-x86-64
|
2017-06-21 12:28:51 +02:00
|
|
|
|
|
|
|
# Test with gcc 4.8
|
2015-10-09 23:00:06 +02:00
|
|
|
- os: linux
|
2017-05-09 15:28:09 +02:00
|
|
|
compiler: g++-4.8
|
|
|
|
env: OPJ_CI_CC=gcc-4.8 OPJ_CI_CXX=g++-4.8 OPJ_CI_ABI_CHECK=1
|
2017-08-10 01:14:35 +02:00
|
|
|
dist: precise
|
2015-10-15 00:58:58 +02:00
|
|
|
addons:
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- gcc-4.8
|
2017-05-09 15:28:09 +02:00
|
|
|
- g++-4.8
|
2015-10-15 00:58:58 +02:00
|
|
|
- libelf-dev
|
|
|
|
- elfutils
|
|
|
|
- texinfo
|
|
|
|
- exuberant-ctags
|
2015-09-08 01:47:26 +02:00
|
|
|
|
|
|
|
install:
|
2015-09-12 02:19:28 +02:00
|
|
|
- ./tools/travis-ci/install.sh
|
2015-09-08 01:47:26 +02:00
|
|
|
|
2015-09-07 22:40:11 +02:00
|
|
|
script:
|
2015-09-12 02:19:28 +02:00
|
|
|
- ./tools/travis-ci/run.sh
|
2015-10-08 20:06:59 +02:00
|
|
|
- ./tools/travis-ci/abi-check.sh
|
2016-05-15 00:42:54 +02:00
|
|
|
|
|
|
|
before_deploy:
|
2016-05-15 01:36:31 +02:00
|
|
|
- export OPJ_RELEASE_PKG_FILE=$(ls build/openjpeg-${TRAVIS_TAG}*)
|
2016-05-15 00:42:54 +02:00
|
|
|
- echo "deploying $OPJ_RELEASE_PKG_FILE to GitHub releases"
|
|
|
|
|
|
|
|
deploy:
|
|
|
|
provider: releases
|
|
|
|
api_key:
|
|
|
|
secure: Npi13uOffALCVNwea4p4q8v85Lo/WsRqaeZQcWrAkt8MxRnfvWQtmnuwmHnVB6Cig+T1lVUHrklOaJIApIb6nkGq3CS/9bD8+SCS2NEdAAP/QYWnBi0ubWXVMRyDLypmwRpzLNSZ0xLYGFUl2PjieZYKRcz1dd/J7S+FnXhPtdjXweq0FS63zTcMe7ggjfmzSOWUCEFmMjZPaM0Be+3PweieCO1dxlHuy7ugCkx2S7d+5hNsicIhQmTADjqtJAkHoMhYqu6/yLFxhjO/+f938PATFULdODTvjCsUwdN/ySWi1Oj4uPAntfytZP7H6YrzLh8dS73QCsdkhhDJIgJskHIBSbRyyEVUnOvQgD9VaBVGHtc1KtZQTwc41OUO3BGPHl97s3oX6bqWqo/L53dB3TPHGx+1+2HL/F0zaDZuHhAKMkPwe8LFPMPB/ur65zXMHjnWb2ZTVVdoIvkbQ7nu8ApI60ejxocYBsEyAuC2CPXU2ki4jdEhm0E1hIziWNE9/LTuM17ziQuJ6WpXOSMrfP4o5aVDmLp5ZGBSocrspOksgyI9XogHaO/r+Y6N3exy+giObFfMHkZVUpsKrKmtOJ7TC1Vg5HsYGlWW8RN8dkJV47bUXm9K4sMos9eYMUt/czykPAs+132cogpII3QxXpFZQqZg6SEPVfOiyqQzTUI=
|
|
|
|
file_glob: true
|
|
|
|
file: "${OPJ_RELEASE_PKG_FILE}"
|
|
|
|
skip_cleanup: true
|
|
|
|
on:
|
|
|
|
repo: uclouvain/openjpeg
|
|
|
|
tags: true
|
2016-05-15 01:36:31 +02:00
|
|
|
condition: "$OPJ_CI_INCLUDE_IF_DEPLOY = 1"
|
2016-05-15 00:42:54 +02:00
|
|
|
|