diff options
Diffstat (limited to 'scripts/travis-build.sh')
-rwxr-xr-x | scripts/travis-build.sh | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/scripts/travis-build.sh b/scripts/travis-build.sh new file mode 100755 index 00000000..d41f7ed0 --- /dev/null +++ b/scripts/travis-build.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +set -ex + +setup_env() { + # Travis sets CC/CXX to the system toolchain, so our .travis.yml + # exports USE_{CC,CXX} for this script to use. + if [ -n "$USE_CC" ]; then + export CC=$USE_CC + fi + if [ -n "$USE_CXX" ]; then + export CXX=$USE_CXX + fi + # Use -jN for faster builds. Travis build machines under Docker + # have a lot of cores, but are memory-limited, so the kernel + # will OOM if we try to use them all, so use at most 4. + # See https://github.com/travis-ci/travis-ci/issues/1972 + export NCPUS=$(getconf _NPROCESSORS_ONLN) + export JOBS=$(( $NCPUS < 4 ? $NCPUS : 4 )) +} + +build() { + ./configure + make -j${JOBS} check +} + +main() { + setup_env + build +} + +main "$@" |