aboutsummaryrefslogtreecommitdiffstats
path: root/src/scripts
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2019-09-10 09:38:40 -0400
committerJack Lloyd <[email protected]>2019-09-10 09:38:40 -0400
commit71a92630ac1e3d995a017610e82a62ad6c54d246 (patch)
tree4bc287ed545c61df8983d50495ba31f5016564f0 /src/scripts
parent0ee18280a798c3f311259036ae70e503ae9ff3a3 (diff)
parent00bfb00326b1277151316da692b3284cd74b2e3e (diff)
Merge GH #2098 Add --build-targets= option
Diffstat (limited to 'src/scripts')
-rw-r--r--src/scripts/ci/lgtm.yml2
-rwxr-xr-xsrc/scripts/ci_build.py17
2 files changed, 12 insertions, 7 deletions
diff --git a/src/scripts/ci/lgtm.yml b/src/scripts/ci/lgtm.yml
index 6967f3299..fa2423858 100644
--- a/src/scripts/ci/lgtm.yml
+++ b/src/scripts/ci/lgtm.yml
@@ -28,4 +28,4 @@ extraction:
cpp:
configure:
command:
- - ./configure.py --build-bogo-shim --build-fuzzers=test --with-zlib --with-bzip2 --with-lzma --with-openssl --with-sqlite3 --no-store-vc-rev
+ - ./configure.py --build-targets="static,shared,cli,tests,bogo_shim" --build-fuzzers=test --with-zlib --with-bzip2 --with-lzma --with-openssl --with-sqlite3 --no-store-vc-rev
diff --git a/src/scripts/ci_build.py b/src/scripts/ci_build.py
index 756bc880b..bdab39317 100755
--- a/src/scripts/ci_build.py
+++ b/src/scripts/ci_build.py
@@ -65,15 +65,16 @@ def determine_flags(target, target_os, target_cpu, target_cc, cc_bin, ccache, ro
flags = ['--prefix=%s' % (install_prefix),
'--cc=%s' % (target_cc),
'--os=%s' % (target_os)]
+ build_targets = ['cli', 'tests']
if target_cpu is not None:
flags += ['--cpu=%s' % (target_cpu)]
if target in ['shared', 'mini-shared']:
- flags += ['--disable-static']
+ build_targets += ['shared']
if target in ['static', 'mini-static', 'fuzzers'] or target_os in ['ios', 'mingw']:
- flags += ['--disable-shared']
+ build_targets += ['static']
if target in ['mini-static', 'mini-shared']:
flags += ['--minimized-build', '--enable-modules=system_rng,sha2_32,sha2_64,aes']
@@ -89,15 +90,16 @@ def determine_flags(target, target_os, target_cpu, target_cc, cc_bin, ccache, ro
# Arbitrarily test disable static on module policy builds
# tls is optional for bsi/nist but add it so verify tests work with these minimized configs
flags += ['--module-policy=%s' % (target),
- '--enable-modules=tls',
- '--disable-static']
+ '--enable-modules=tls']
+ build_targets += ['shared']
if target == 'docs':
flags += ['--with-doxygen', '--with-sphinx', '--with-rst2man']
test_cmd = None
if target == 'coverage':
- flags += ['--with-coverage-info', '--with-debug-info', '--test-mode', '--build-bogo-shim']
+ flags += ['--with-coverage-info', '--with-debug-info', '--test-mode']
+ build_targets += ['bogo_shim']
if target == 'valgrind':
# valgrind in 16.04 has a bug with rdrand handling
flags += ['--with-valgrind', '--disable-rdrand']
@@ -128,8 +130,8 @@ def determine_flags(target, target_os, target_cpu, target_cc, cc_bin, ccache, ro
# these profiling flags) but we can't use --no-optimizations as that
# will make running the tests too slow.
flags += ['--cc-abi-flags=-fprofile-instr-generate -fcoverage-mapping',
- '--disable-shared',
'--optimize-for-size']
+ build_targets += ['static']
make_prefix = [os.path.join(root_dir, 'build-wrapper-linux-x86/build-wrapper-linux-x86-64'),
'--out-dir', 'bw-outputs']
@@ -273,6 +275,9 @@ def determine_flags(target, target_os, target_cpu, target_cc, cc_bin, ccache, ro
else:
run_test_command = test_prefix + test_cmd
+ if 'static' not in build_targets and 'shared' not in build_targets:
+ build_targets += ['static', 'shared'] if target_os != 'windows' else ['shared']
+ flags += ['--build-targets=%s' % ','.join(build_targets)]
return flags, run_test_command, make_prefix