From 9fd09d6dce42cc53f85886cacd929cdc0f7cc158 Mon Sep 17 00:00:00 2001 From: David Neto Date: Mon, 16 Dec 2024 10:51:28 -0500 Subject: [PATCH] kokoro: update tooling, fix warnings Kokoro changes: - Linux: gcc-13, cmake-3.31.2 - Windows: python 3.12, cmake-3.31.2 * Disable warnings in gtest, gmock This is required in order to build with GCC 13, and Apple Clang with warnings-as-errors Bug: crbug.com/383538610 * disable license check on .github/workflows/main.yml * Use add_subdirectory for internal gtest, gmock --------- Co-authored-by: Antonio Maiorano --- CMakeLists.txt | 20 +++++++++----------- kokoro/ubuntu/presubmit-docker.sh | 4 ++-- kokoro/windows/presubmit.bat | 2 +- license-checker.cfg | 1 + 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e34e17..1c60699 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -298,21 +298,19 @@ if(CPPDAP_BUILD_TESTS) if(CPPDAP_USE_EXTERNAL_GTEST_PACKAGE) find_package(GTest REQUIRED) else() - list(APPEND DAP_TEST_LIST - ${CPPDAP_GOOGLETEST_DIR}/googletest/src/gtest-all.cc - ) - - set(DAP_TEST_INCLUDE_DIR - ${CPPDAP_GOOGLETEST_DIR}/googlemock/include/ - ${CPPDAP_GOOGLETEST_DIR}/googletest/ - ${CPPDAP_GOOGLETEST_DIR}/googletest/include/ - ) + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + set(INSTALL_GTEST OFF CACHE BOOL "" FORCE) + add_subdirectory(${CPPDAP_GOOGLETEST_DIR}) + # googletest has -Werror=maybe-uninitialized problems. + # Disable all warnings in googletest code. + target_compile_options(gtest PRIVATE -w) + # gmock has -Werror=deprecated-copy problems. + target_compile_options(gmock PRIVATE -w) endif() add_executable(cppdap-unittests ${DAP_TEST_LIST}) add_test(NAME cppdap-unittests COMMAND cppdap-unittests) - target_include_directories(cppdap-unittests PUBLIC ${DAP_TEST_INCLUDE_DIR} ) set_target_properties(cppdap-unittests PROPERTIES FOLDER "Tests" ) @@ -326,7 +324,7 @@ if(CPPDAP_BUILD_TESTS) if(CPPDAP_USE_EXTERNAL_GTEST_PACKAGE) target_link_libraries(cppdap-unittests PRIVATE cppdap GTest::gtest) else() - target_link_libraries(cppdap-unittests PRIVATE cppdap) + target_link_libraries(cppdap-unittests PRIVATE cppdap gtest gmock) endif() endif(CPPDAP_BUILD_TESTS) diff --git a/kokoro/ubuntu/presubmit-docker.sh b/kokoro/ubuntu/presubmit-docker.sh index c9caae2..b779160 100755 --- a/kokoro/ubuntu/presubmit-docker.sh +++ b/kokoro/ubuntu/presubmit-docker.sh @@ -28,8 +28,8 @@ git config --global --add safe.directory '*' git submodule update --init if [ "$BUILD_SYSTEM" == "cmake" ]; then - using cmake-3.17.2 - using gcc-9 + using cmake-3.31.2 + using gcc-13 mkdir build cd build diff --git a/kokoro/windows/presubmit.bat b/kokoro/windows/presubmit.bat index 91d3406..ad3be81 100644 --- a/kokoro/windows/presubmit.bat +++ b/kokoro/windows/presubmit.bat @@ -17,7 +17,7 @@ REM limitations under the License. SETLOCAL ENABLEDELAYEDEXPANSION SET BUILD_ROOT=%cd% -SET PATH=C:\python36;C:\Program Files\cmake-3.23.1-windows-x86_64\bin;%PATH% +SET PATH=C:\python312;C:\cmake-3.31.2\bin;%PATH% SET SRC=%cd%\github\cppdap cd %SRC% diff --git a/license-checker.cfg b/license-checker.cfg index fcc9142..163aec7 100644 --- a/license-checker.cfg +++ b/license-checker.cfg @@ -8,6 +8,7 @@ "exclude": [ ".clang-format", ".gitattributes", + ".github/workflows/main.yml", ".gitignore", ".gitmodules", ".vscode/*.json",