2015-08-31 02:19:39 -04:00
|
|
|
#!/usr/bin/env sh
|
2015-08-31 09:54:37 -04:00
|
|
|
set -evx
|
2017-09-04 18:19:06 +02:00
|
|
|
|
2017-12-24 10:34:56 -05:00
|
|
|
. ci/get-nprocessors.sh
|
|
|
|
|
2017-09-04 18:19:06 +02:00
|
|
|
# if possible, ask for the precise number of processors,
|
|
|
|
# otherwise take 2 processors as reasonable default; see
|
|
|
|
# https://docs.travis-ci.com/user/speeding-up-the-build/#Makefile-optimization
|
|
|
|
if [ -x /usr/bin/getconf ]; then
|
2017-09-04 18:56:52 +02:00
|
|
|
NPROCESSORS=$(/usr/bin/getconf _NPROCESSORS_ONLN)
|
2017-09-04 18:19:06 +02:00
|
|
|
else
|
2017-09-04 18:56:52 +02:00
|
|
|
NPROCESSORS=2
|
2017-09-04 18:19:06 +02:00
|
|
|
fi
|
2017-09-04 18:56:52 +02:00
|
|
|
# as of 2017-09-04 Travis CI reports 32 processors, but GCC build
|
|
|
|
# crashes if parallelized too much (maybe memory consumption problem),
|
|
|
|
# so limit to 4 processors for the time being.
|
|
|
|
if [ $NPROCESSORS -gt 4 ] ; then
|
|
|
|
echo "$0:Note: Limiting processors to use by make from $NPROCESSORS to 4."
|
|
|
|
NPROCESSORS=4
|
|
|
|
fi
|
|
|
|
# Tell make to use the processors. No preceding '-' required.
|
|
|
|
MAKEFLAGS="j${NPROCESSORS}"
|
2017-09-04 18:19:06 +02:00
|
|
|
export MAKEFLAGS
|
|
|
|
|
2015-08-31 02:19:39 -04:00
|
|
|
env | sort
|
|
|
|
|
2018-04-27 11:27:06 -07:00
|
|
|
# Set default values to OFF for these variables if not specified.
|
|
|
|
: "${NO_EXCEPTION:=OFF}"
|
|
|
|
: "${NO_RTTI:=OFF}"
|
|
|
|
: "${COMPILER_IS_GNUCXX:=OFF}"
|
|
|
|
|
2015-09-01 02:24:48 -04:00
|
|
|
mkdir build || true
|
2017-08-29 17:41:26 +02:00
|
|
|
cd build
|
2015-09-01 02:41:55 -04:00
|
|
|
cmake -Dgtest_build_samples=ON \
|
|
|
|
-Dgtest_build_tests=ON \
|
|
|
|
-Dgmock_build_tests=ON \
|
2018-04-27 11:27:06 -07:00
|
|
|
-Dcxx_no_exception=$NO_EXCEPTION \
|
|
|
|
-Dcxx_no_rtti=$NO_RTTI \
|
|
|
|
-DCMAKE_COMPILER_IS_GNUCXX=$COMPILER_IS_GNUCXX \
|
2015-09-07 18:23:25 -04:00
|
|
|
-DCMAKE_CXX_FLAGS=$CXX_FLAGS \
|
2017-08-30 11:59:36 +02:00
|
|
|
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
|
2017-08-29 17:41:26 +02:00
|
|
|
..
|
2015-08-31 10:29:11 -04:00
|
|
|
make
|
2016-06-25 01:29:18 +03:00
|
|
|
CTEST_OUTPUT_ON_FAILURE=1 make test
|