Simplify output of gen_travis.py script
This commit simplifies the output of the `gen_travis.py` script by reusing addons. The `.travis.yml` script is updated to reflect these changes.
This commit is contained in:
parent
55e5cc1341
commit
0eb0641cac
43
.travis.yml
43
.travis.yml
@ -11,7 +11,7 @@ matrix:
|
|||||||
env: CC=clang CXX=clang++ COMPILER_FLAGS="" CONFIGURE_FLAGS="" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=clang CXX=clang++ COMPILER_FLAGS="" CONFIGURE_FLAGS="" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: &gcc_multilib
|
||||||
apt:
|
apt:
|
||||||
packages:
|
packages:
|
||||||
- gcc-multilib
|
- gcc-multilib
|
||||||
@ -41,10 +41,7 @@ matrix:
|
|||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--with-malloc-conf=tcache:false" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--with-malloc-conf=tcache:false" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=clang CXX=clang++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=clang CXX=clang++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=clang CXX=clang++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--enable-debug" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=clang CXX=clang++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--enable-debug" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
- os: linux
|
- os: linux
|
||||||
@ -61,46 +58,25 @@ matrix:
|
|||||||
env: CC=clang CXX=clang++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--with-malloc-conf=background_thread:true" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=clang CXX=clang++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--with-malloc-conf=background_thread:true" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--enable-debug" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--enable-debug" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--enable-prof" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--enable-prof" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--disable-stats" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--disable-stats" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=tcache:false" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=tcache:false" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=dss:primary" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=dss:primary" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=percpu_arena:percpu" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=percpu_arena:percpu" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=background_thread:true" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="-m32" CONFIGURE_FLAGS="--with-malloc-conf=background_thread:true" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
addons:
|
addons: *gcc_multilib
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- gcc-multilib
|
|
||||||
- os: linux
|
- os: linux
|
||||||
env: CC=gcc CXX=g++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--enable-debug --enable-prof" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--enable-debug --enable-prof" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
- os: linux
|
- os: linux
|
||||||
@ -150,6 +126,7 @@ matrix:
|
|||||||
- make -j test/unit/log
|
- make -j test/unit/log
|
||||||
- test/unit/log
|
- test/unit/log
|
||||||
|
|
||||||
|
|
||||||
before_script:
|
before_script:
|
||||||
- autoconf
|
- autoconf
|
||||||
- ./configure ${COMPILER_FLAGS:+ CC="$CC $COMPILER_FLAGS" CXX="$CXX $COMPILER_FLAGS" } $CONFIGURE_FLAGS
|
- ./configure ${COMPILER_FLAGS:+ CC="$CC $COMPILER_FLAGS" CXX="$CXX $COMPILER_FLAGS" } $CONFIGURE_FLAGS
|
||||||
|
@ -4,6 +4,7 @@ from itertools import combinations
|
|||||||
|
|
||||||
travis_template = """\
|
travis_template = """\
|
||||||
language: generic
|
language: generic
|
||||||
|
dist: precise
|
||||||
|
|
||||||
matrix:
|
matrix:
|
||||||
include:
|
include:
|
||||||
@ -61,47 +62,58 @@ unusual_combinations_to_test = []
|
|||||||
for i in xrange(MAX_UNUSUAL_OPTIONS + 1):
|
for i in xrange(MAX_UNUSUAL_OPTIONS + 1):
|
||||||
unusual_combinations_to_test += combinations(all_unusuals, i)
|
unusual_combinations_to_test += combinations(all_unusuals, i)
|
||||||
|
|
||||||
include_rows = ""
|
gcc_multilib_set = False
|
||||||
for unusual_combination in unusual_combinations_to_test:
|
# Formats a job from a combination of flags
|
||||||
os = os_default
|
def format_job(combination):
|
||||||
if os_unusual in unusual_combination:
|
global gcc_multilib_set
|
||||||
os = os_unusual
|
|
||||||
|
|
||||||
compilers = compilers_default
|
os = os_unusual if os_unusual in combination else os_default
|
||||||
if compilers_unusual in unusual_combination:
|
compilers = compilers_unusual if compilers_unusual in combination else compilers_default
|
||||||
compilers = compilers_unusual
|
|
||||||
|
|
||||||
compiler_flags = [
|
compiler_flags = [x for x in combination if x in compiler_flag_unusuals]
|
||||||
x for x in unusual_combination if x in compiler_flag_unusuals]
|
configure_flags = [x for x in combination if x in configure_flag_unusuals]
|
||||||
|
malloc_conf = [x for x in combination if x in malloc_conf_unusuals]
|
||||||
|
|
||||||
configure_flags = [
|
|
||||||
x for x in unusual_combination if x in configure_flag_unusuals]
|
|
||||||
|
|
||||||
malloc_conf = [
|
|
||||||
x for x in unusual_combination if x in malloc_conf_unusuals]
|
|
||||||
# Filter out unsupported configurations on OS X.
|
# Filter out unsupported configurations on OS X.
|
||||||
if os == 'osx' and ('dss:primary' in malloc_conf or \
|
if os == 'osx' and ('dss:primary' in malloc_conf or \
|
||||||
'percpu_arena:percpu' in malloc_conf or 'background_thread:true' \
|
'percpu_arena:percpu' in malloc_conf or 'background_thread:true' \
|
||||||
in malloc_conf):
|
in malloc_conf):
|
||||||
continue
|
return ""
|
||||||
if len(malloc_conf) > 0:
|
if len(malloc_conf) > 0:
|
||||||
configure_flags.append('--with-malloc-conf=' + ",".join(malloc_conf))
|
configure_flags.append('--with-malloc-conf=' + ",".join(malloc_conf))
|
||||||
|
|
||||||
# Filter out an unsupported configuration - heap profiling on OS X.
|
# Filter out an unsupported configuration - heap profiling on OS X.
|
||||||
if os == 'osx' and '--enable-prof' in configure_flags:
|
if os == 'osx' and '--enable-prof' in configure_flags:
|
||||||
continue
|
return ""
|
||||||
|
|
||||||
# We get some spurious errors when -Warray-bounds is enabled.
|
# We get some spurious errors when -Warray-bounds is enabled.
|
||||||
env_string = ('{} COMPILER_FLAGS="{}" CONFIGURE_FLAGS="{}" '
|
env_string = ('{} COMPILER_FLAGS="{}" CONFIGURE_FLAGS="{}" '
|
||||||
'EXTRA_CFLAGS="-Werror -Wno-array-bounds"').format(
|
'EXTRA_CFLAGS="-Werror -Wno-array-bounds"').format(
|
||||||
compilers, " ".join(compiler_flags), " ".join(configure_flags))
|
compilers, " ".join(compiler_flags), " ".join(configure_flags))
|
||||||
|
|
||||||
include_rows += ' - os: %s\n' % os
|
job = ""
|
||||||
include_rows += ' env: %s\n' % env_string
|
job += ' - os: %s\n' % os
|
||||||
if '-m32' in unusual_combination and os == 'linux':
|
job += ' env: %s\n' % env_string
|
||||||
include_rows += ' addons:\n'
|
if '-m32' in combination and os == 'linux':
|
||||||
include_rows += ' apt:\n'
|
job += ' addons:'
|
||||||
include_rows += ' packages:\n'
|
if gcc_multilib_set:
|
||||||
include_rows += ' - gcc-multilib\n'
|
job += ' *gcc_multilib\n'
|
||||||
|
else:
|
||||||
|
job += ' &gcc_multilib\n'
|
||||||
|
job += ' apt:\n'
|
||||||
|
job += ' packages:\n'
|
||||||
|
job += ' - gcc-multilib\n'
|
||||||
|
gcc_multilib_set = True
|
||||||
|
return job
|
||||||
|
|
||||||
|
include_rows = ""
|
||||||
|
for combination in unusual_combinations_to_test:
|
||||||
|
include_rows += format_job(combination)
|
||||||
|
|
||||||
|
# Development build
|
||||||
|
include_rows += '''\
|
||||||
|
- os: linux
|
||||||
|
env: CC=gcc CXX=g++ COMPILER_FLAGS="" CONFIGURE_FLAGS="--enable-debug --disable-cache-oblivious --enable-stats --enable-log --enable-prof" EXTRA_CFLAGS="-Werror -Wno-array-bounds"
|
||||||
|
'''
|
||||||
|
|
||||||
print travis_template % include_rows
|
print travis_template % include_rows
|
||||||
|
Loading…
Reference in New Issue
Block a user