server-skynet-source-3rd-je.../scripts/gen_run_tests.py
Jason Evans 4403c9ab44 Remove --disable-tcache.
Simplify configuration by removing the --disable-tcache option, but
replace the testing for that configuration with
--with-malloc-conf=tcache:false.

Fix the thread.arena and thread.tcache.flush mallctls to work correctly
if tcache is disabled.

This partially resolves #580.
2017-04-21 10:06:12 -07:00

49 lines
1.4 KiB
Python
Executable File

#!/usr/bin/env python
from itertools import combinations
def powerset(items):
result = []
for i in xrange(len(items) + 1):
result += combinations(items, i)
return result
MAKE_J_VAL = 32
possible_compilers = [('gcc', 'g++'), ('clang', 'clang++')]
possible_compiler_opts = [
'-m32',
]
possible_config_opts = [
'--enable-debug',
'--enable-prof',
'--disable-stats',
'--with-malloc-conf=tcache:false',
]
print 'set -e'
print 'autoconf'
print 'unamestr=`uname`'
for cc, cxx in possible_compilers:
for compiler_opts in powerset(possible_compiler_opts):
for config_opts in powerset(possible_config_opts):
if cc is 'clang' \
and '-m32' in possible_compiler_opts \
and '--enable-prof' in config_opts:
continue
config_line = (
'./configure '
+ 'CC="{} {}" '.format(cc, " ".join(compiler_opts))
+ 'CXX="{} {}" '.format(cxx, " ".join(compiler_opts))
+ " ".join(config_opts)
)
# Heap profiling is not supported on OS X.
if '--enable-prof' in config_opts:
print 'if [[ "$unamestr" != "Darwin" ]]; then'
print config_line
print "make clean"
print "make -j" + str(MAKE_J_VAL) + " check"
if '--enable-prof' in config_opts:
print 'fi'