|  | #!/usr/bin/env sh | 
|  | set -evx | 
|  |  | 
|  | . ci/get-nprocessors.sh | 
|  |  | 
|  | # 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 | 
|  | NPROCESSORS=$(/usr/bin/getconf _NPROCESSORS_ONLN) | 
|  | else | 
|  | NPROCESSORS=2 | 
|  | fi | 
|  | # 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}" | 
|  | export MAKEFLAGS | 
|  |  | 
|  | env | sort | 
|  |  | 
|  | # Set default values to OFF for these variables if not specified. | 
|  | : "${NO_EXCEPTION:=OFF}" | 
|  | : "${NO_RTTI:=OFF}" | 
|  | : "${COMPILER_IS_GNUCXX:=OFF}" | 
|  |  | 
|  | mkdir build || true | 
|  | cd build | 
|  | cmake -Dgtest_build_samples=ON \ | 
|  | -Dgtest_build_tests=ON \ | 
|  | -Dgmock_build_tests=ON \ | 
|  | -Dcxx_no_exception=$NO_EXCEPTION \ | 
|  | -Dcxx_no_rtti=$NO_RTTI \ | 
|  | -DCMAKE_COMPILER_IS_GNUCXX=$COMPILER_IS_GNUCXX \ | 
|  | -DCMAKE_CXX_FLAGS=$CXX_FLAGS \ | 
|  | -DCMAKE_BUILD_TYPE=$BUILD_TYPE \ | 
|  | .. | 
|  | make | 
|  | CTEST_OUTPUT_ON_FAILURE=1 make test |