summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHerbert Thielen <thielen@hs-worms.de>2017-09-08 09:47:14 (GMT)
committerGitHub <noreply@github.com>2017-09-08 09:47:14 (GMT)
commitc86fbd766b4d2e4b20ad7f2d6129f77452455f6e (patch)
tree3d5f8698ddff82e59fbe579c7e8ee664388ae51b
parentaa0b5458a1c33b40f813013f3a6bbb928f8a3d9f (diff)
parent894cdb82cb2a1141bde8710a67ea4c5325d1d202 (diff)
downloadgoogletest-c86fbd766b4d2e4b20ad7f2d6129f77452455f6e.zip
googletest-c86fbd766b4d2e4b20ad7f2d6129f77452455f6e.tar.gz
googletest-c86fbd766b4d2e4b20ad7f2d6129f77452455f6e.tar.bz2
Merge branch 'master' into hethi/issue-360-remove-GTEST_HAS_PARAM_TESTS
-rw-r--r--.travis.yml14
-rw-r--r--googlemock/CMakeLists.txt2
-rw-r--r--googletest/cmake/internal_utils.cmake11
-rw-r--r--googletest/test/gtest-param-test_test.cc4
-rw-r--r--googletest/test/gtest_unittest.cc2
-rwxr-xr-xtravis.sh20
6 files changed, 42 insertions, 11 deletions
diff --git a/.travis.yml b/.travis.yml
index 417d2c5..fa25abe 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -7,7 +7,11 @@ install:
# /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
# /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 ${CXX}
- ${CXX} --version
@@ -22,14 +26,16 @@ addons:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
packages:
- - gcc-4.9
- g++-4.9
- clang-3.7
- - valgrind
os:
- linux
- osx
language: cpp
+cache: ccache
+before_cache:
+ # print statistics before uploading new cache
+ - ccache --show-stats
compiler:
- gcc
- clang
@@ -37,7 +43,7 @@ script: ./travis.sh
env:
matrix:
- SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=Debug VERBOSE=1
- - SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=Debug VERBOSE=1 CXX_FLAGS=-std=c++11
+ - SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=Release VERBOSE=1 CXX_FLAGS=-std=c++11
notifications:
email: false
sudo: false
diff --git a/googlemock/CMakeLists.txt b/googlemock/CMakeLists.txt
index bd759df..724fdd5 100644
--- a/googlemock/CMakeLists.txt
+++ b/googlemock/CMakeLists.txt
@@ -164,7 +164,7 @@ if (gmock_build_tests)
cxx_test(gmock_link_test gmock_main test/gmock_link2_test.cc)
cxx_test(gmock_test gmock_main)
- if (CMAKE_USE_PTHREADS_INIT)
+ if (DEFINED GTEST_HAS_PTHREAD)
cxx_test(gmock_stress_test gmock)
endif()
diff --git a/googletest/cmake/internal_utils.cmake b/googletest/cmake/internal_utils.cmake
index ec5d08c..9915c11 100644
--- a/googletest/cmake/internal_utils.cmake
+++ b/googletest/cmake/internal_utils.cmake
@@ -48,10 +48,14 @@ endmacro()
macro(config_compiler_and_linker)
# Note: pthreads on MinGW is not supported, even if available
# instead, we use windows threading primitives
+ unset(GTEST_HAS_PTHREAD)
if (NOT gtest_disable_pthreads AND NOT MINGW)
# Defines CMAKE_USE_PTHREADS_INIT and CMAKE_THREAD_LIBS_INIT.
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads)
+ if (CMAKE_USE_PTHREADS_INIT)
+ set(GTEST_HAS_PTHREAD ON)
+ endif()
endif()
fix_default_compiler_settings_()
@@ -94,7 +98,7 @@ macro(config_compiler_and_linker)
set(cxx_no_exception_flags "-D_HAS_EXCEPTIONS=0")
set(cxx_no_rtti_flags "-GR-")
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_no_exception_flags "-fno-exceptions")
# Until version 4.3.2, GCC doesn't define a macro to indicate
@@ -126,7 +130,8 @@ macro(config_compiler_and_linker)
set(cxx_no_rtti_flags "")
endif()
- if (CMAKE_USE_PTHREADS_INIT) # The pthreads library is available and allowed.
+ # The pthreads library is available and allowed?
+ if (DEFINED GTEST_HAS_PTHREAD)
set(GTEST_HAS_PTHREAD_MACRO "-DGTEST_HAS_PTHREAD=1")
else()
set(GTEST_HAS_PTHREAD_MACRO "-DGTEST_HAS_PTHREAD=0")
@@ -159,7 +164,7 @@ function(cxx_library_with_type name type cxx_flags)
PROPERTIES
COMPILE_DEFINITIONS "GTEST_CREATE_SHARED_LIBRARY=1")
endif()
- if (CMAKE_USE_PTHREADS_INIT)
+ if (DEFINED GTEST_HAS_PTHREAD)
target_link_libraries(${name} ${CMAKE_THREAD_LIBS_INIT})
endif()
endfunction()
diff --git a/googletest/test/gtest-param-test_test.cc b/googletest/test/gtest-param-test_test.cc
index d1e9d60..7d23e49 100644
--- a/googletest/test/gtest-param-test_test.cc
+++ b/googletest/test/gtest-param-test_test.cc
@@ -855,8 +855,8 @@ TEST_P(CustomLambdaNamingTest, CustomTestNames) {}
INSTANTIATE_TEST_CASE_P(CustomParamNameLambda,
CustomLambdaNamingTest,
Values(std::string("LambdaName")),
- [](const ::testing::TestParamInfo<std::string>& info) {
- return info.param;
+ [](const ::testing::TestParamInfo<std::string>& tpinfo) {
+ return tpinfo.param;
});
#endif // GTEST_LANG_CXX11
diff --git a/googletest/test/gtest_unittest.cc b/googletest/test/gtest_unittest.cc
index f84def9..745c950 100644
--- a/googletest/test/gtest_unittest.cc
+++ b/googletest/test/gtest_unittest.cc
@@ -2096,7 +2096,7 @@ class UnitTestRecordPropertyTestEnvironment : public Environment {
};
// 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);
// This group of tests is for predicate assertions (ASSERT_PRED*, etc)
diff --git a/travis.sh b/travis.sh
index bd226a8..24a557e 100755
--- a/travis.sh
+++ b/travis.sh
@@ -1,5 +1,25 @@
#!/usr/bin/env sh
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
mkdir build || true