Merge branch 'master' into hethi/cleanup-travis-environment
This commit is contained in:
		
							
								
								
									
										14
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								.travis.yml
									
									
									
									
									
								
							@@ -7,7 +7,11 @@ install:
 | 
				
			|||||||
# /usr/bin/gcc is 4.6 always, but gcc-X.Y is available.
 | 
					# /usr/bin/gcc is 4.6 always, but gcc-X.Y is available.
 | 
				
			||||||
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.9" CC="gcc-4.9"; fi
 | 
					- if [ "$CXX" = "g++" ]; then export CXX="g++-4.9" CC="gcc-4.9"; fi
 | 
				
			||||||
# /usr/bin/clang is 3.4, lets override with modern one.
 | 
					# /usr/bin/clang is 3.4, lets override with modern one.
 | 
				
			||||||
- if [ "$CXX" = "clang++" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX="clang++-3.7" CC="clang-3.7"; fi
 | 
					- if [ "$CXX" = "clang++" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX="clang++-3.7" CC="clang-3.7"; ln -sf /usr/bin/ccache /$HOME/bin/$CXX; ln -sf /usr/bin/ccache /$HOME/bin/$CC; fi
 | 
				
			||||||
 | 
					# ccache on OS X needs installation first
 | 
				
			||||||
 | 
					- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew install ccache; export PATH="/usr/local/opt/ccache/libexec:$PATH"; fi
 | 
				
			||||||
 | 
					# reset ccache statistics
 | 
				
			||||||
 | 
					- ccache --zero-stats
 | 
				
			||||||
- echo ${PATH}
 | 
					- echo ${PATH}
 | 
				
			||||||
- echo ${CXX}
 | 
					- echo ${CXX}
 | 
				
			||||||
- ${CXX} --version
 | 
					- ${CXX} --version
 | 
				
			||||||
@@ -22,14 +26,16 @@ addons:
 | 
				
			|||||||
    - ubuntu-toolchain-r-test
 | 
					    - ubuntu-toolchain-r-test
 | 
				
			||||||
    - llvm-toolchain-precise-3.7
 | 
					    - llvm-toolchain-precise-3.7
 | 
				
			||||||
    packages:
 | 
					    packages:
 | 
				
			||||||
    - gcc-4.9
 | 
					 | 
				
			||||||
    - g++-4.9
 | 
					    - g++-4.9
 | 
				
			||||||
    - clang-3.7
 | 
					    - clang-3.7
 | 
				
			||||||
    - valgrind
 | 
					 | 
				
			||||||
os:
 | 
					os:
 | 
				
			||||||
  - linux
 | 
					  - linux
 | 
				
			||||||
  - osx
 | 
					  - osx
 | 
				
			||||||
language: cpp
 | 
					language: cpp
 | 
				
			||||||
 | 
					cache: ccache
 | 
				
			||||||
 | 
					before_cache:
 | 
				
			||||||
 | 
					  # print statistics before uploading new cache
 | 
				
			||||||
 | 
					  - ccache --show-stats
 | 
				
			||||||
compiler:
 | 
					compiler:
 | 
				
			||||||
  - gcc
 | 
					  - gcc
 | 
				
			||||||
  - clang
 | 
					  - clang
 | 
				
			||||||
@@ -37,7 +43,7 @@ script: ./travis.sh
 | 
				
			|||||||
env:
 | 
					env:
 | 
				
			||||||
  matrix:
 | 
					  matrix:
 | 
				
			||||||
    - BUILD_TYPE=Debug VERBOSE=1
 | 
					    - BUILD_TYPE=Debug VERBOSE=1
 | 
				
			||||||
    - BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11
 | 
					    - BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11
 | 
				
			||||||
notifications:
 | 
					notifications:
 | 
				
			||||||
  email: false
 | 
					  email: false
 | 
				
			||||||
sudo: false
 | 
					sudo: false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -98,7 +98,7 @@ macro(config_compiler_and_linker)
 | 
				
			|||||||
    set(cxx_no_exception_flags "-D_HAS_EXCEPTIONS=0")
 | 
					    set(cxx_no_exception_flags "-D_HAS_EXCEPTIONS=0")
 | 
				
			||||||
    set(cxx_no_rtti_flags "-GR-")
 | 
					    set(cxx_no_rtti_flags "-GR-")
 | 
				
			||||||
  elseif (CMAKE_COMPILER_IS_GNUCXX)
 | 
					  elseif (CMAKE_COMPILER_IS_GNUCXX)
 | 
				
			||||||
    set(cxx_base_flags "-Wall -Wshadow")
 | 
					    set(cxx_base_flags "-Wall -Wshadow -Werror")
 | 
				
			||||||
    set(cxx_exception_flags "-fexceptions")
 | 
					    set(cxx_exception_flags "-fexceptions")
 | 
				
			||||||
    set(cxx_no_exception_flags "-fno-exceptions")
 | 
					    set(cxx_no_exception_flags "-fno-exceptions")
 | 
				
			||||||
    # Until version 4.3.2, GCC doesn't define a macro to indicate
 | 
					    # Until version 4.3.2, GCC doesn't define a macro to indicate
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -857,8 +857,8 @@ TEST_P(CustomLambdaNamingTest, CustomTestNames) {}
 | 
				
			|||||||
INSTANTIATE_TEST_CASE_P(CustomParamNameLambda,
 | 
					INSTANTIATE_TEST_CASE_P(CustomParamNameLambda,
 | 
				
			||||||
                        CustomLambdaNamingTest,
 | 
					                        CustomLambdaNamingTest,
 | 
				
			||||||
                        Values(std::string("LambdaName")),
 | 
					                        Values(std::string("LambdaName")),
 | 
				
			||||||
                        [](const ::testing::TestParamInfo<std::string>& info) {
 | 
					                        [](const ::testing::TestParamInfo<std::string>& tpinfo) {
 | 
				
			||||||
                          return info.param;
 | 
					                          return tpinfo.param;
 | 
				
			||||||
                        });
 | 
					                        });
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif  // GTEST_LANG_CXX11
 | 
					#endif  // GTEST_LANG_CXX11
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2096,7 +2096,7 @@ class UnitTestRecordPropertyTestEnvironment : public Environment {
 | 
				
			|||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// This will test property recording outside of any test or test case.
 | 
					// This will test property recording outside of any test or test case.
 | 
				
			||||||
static Environment* record_property_env =
 | 
					Environment* record_property_env GTEST_ATTRIBUTE_UNUSED_ =
 | 
				
			||||||
    AddGlobalTestEnvironment(new UnitTestRecordPropertyTestEnvironment);
 | 
					    AddGlobalTestEnvironment(new UnitTestRecordPropertyTestEnvironment);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// This group of tests is for predicate assertions (ASSERT_PRED*, etc)
 | 
					// This group of tests is for predicate assertions (ASSERT_PRED*, etc)
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										20
									
								
								travis.sh
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								travis.sh
									
									
									
									
									
								
							@@ -1,5 +1,25 @@
 | 
				
			|||||||
#!/usr/bin/env sh
 | 
					#!/usr/bin/env sh
 | 
				
			||||||
set -evx
 | 
					set -evx
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 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
 | 
					env | sort
 | 
				
			||||||
 | 
					
 | 
				
			||||||
mkdir build || true
 | 
					mkdir build || true
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user