From 3f1d82a1e20631da706748a735ac109a56e31bc8 Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sun, 5 Jan 2025 22:00:57 +0000 Subject: [PATCH 01/10] (cmake) use googletest v1.15.2 --- cmake/dependencies.cmake | 6 +++--- src/db/CMakeLists.txt | 2 +- src/encoding/CMakeLists.txt | 2 +- src/err/CMakeLists.txt | 2 +- src/svc/CMakeLists.txt | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake index b6e357f..3d43c61 100644 --- a/cmake/dependencies.cmake +++ b/cmake/dependencies.cmake @@ -49,9 +49,9 @@ endif() if (RUEK_BUILD_TESTING) # googletest FetchContent_Declare(googletest - URL https://github.com/google/googletest/archive/refs/tags/v1.14.0.tar.gz - URL_HASH SHA256=8ad598c73ad796e0d8280b082cebd82a630d73e73cd3c70057938a6501bba5d7 - FIND_PACKAGE_ARGS NAMES GTest + URL https://github.com/google/googletest/archive/refs/tags/v1.15.2.tar.gz + URL_HASH SHA256=7b42b4d6ed48810c5362c265a17faebe90dc2373c885e5216439d37927f02926 + FIND_PACKAGE_ARGS 1.15.2 NAMES GTest ) FetchContent_MakeAvailable(googletest) endif() diff --git a/src/db/CMakeLists.txt b/src/db/CMakeLists.txt index 7118409..af8afcd 100644 --- a/src/db/CMakeLists.txt +++ b/src/db/CMakeLists.txt @@ -62,7 +62,7 @@ if (RUEK_BUILD_TESTING) target_link_libraries(db_tests PRIVATE db - gtest_main + GTest::gtest_main ${PROJECT_NAME}::err ) diff --git a/src/encoding/CMakeLists.txt b/src/encoding/CMakeLists.txt index 9521702..1a40800 100644 --- a/src/encoding/CMakeLists.txt +++ b/src/encoding/CMakeLists.txt @@ -18,7 +18,7 @@ if (RUEK_BUILD_TESTING) target_link_libraries(encoding_tests PRIVATE encoding - gtest_main + GTest::gtest_main ) if (RUEK_ENABLE_COVERAGE) diff --git a/src/err/CMakeLists.txt b/src/err/CMakeLists.txt index cc3c195..61090f2 100644 --- a/src/err/CMakeLists.txt +++ b/src/err/CMakeLists.txt @@ -18,7 +18,7 @@ if (RUEK_BUILD_TESTING) target_link_libraries(err_tests PRIVATE err - gtest_main + GTest::gtest_main ) if (RUEK_ENABLE_COVERAGE) diff --git a/src/svc/CMakeLists.txt b/src/svc/CMakeLists.txt index 75a4851..07236fe 100644 --- a/src/svc/CMakeLists.txt +++ b/src/svc/CMakeLists.txt @@ -45,7 +45,7 @@ if (RUEK_BUILD_TESTING) target_link_libraries(svc_tests PRIVATE svc - gtest_main + GTest::gtest_main ) if (RUEK_ENABLE_COVERAGE) From 7065ce5ecd56e5baf4b0cbb84f0d404d094a9741 Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sun, 5 Jan 2025 22:01:56 +0000 Subject: [PATCH 02/10] (cmake) use libpqxx v7.10.0 --- cmake/dependencies.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake index 3d43c61..7c3f4bd 100644 --- a/cmake/dependencies.cmake +++ b/cmake/dependencies.cmake @@ -19,8 +19,8 @@ FetchContent_MakeAvailable(grpcxx) # libpqxx FetchContent_Declare(libpqxx - URL https://github.com/jtv/libpqxx/archive/refs/tags/7.7.5.tar.gz - URL_HASH SHA256=c7dc3e8fa2eee656f2b6a8179d72f15db10e97a80dc4f173f806e615ea990973 + URL https://github.com/jtv/libpqxx/archive/refs/tags/7.10.0.tar.gz + URL_HASH SHA256=d588bca36357eda8bcafd5bc1f95df1afe613fdc70c80e426fc89eecb828fc3e ) set(SKIP_BUILD_TEST ON) # Not defined as `option()`, no need to set as a cache entry (Ref: CMP0077) From 10a1e8de226d82146844f09d9f986c14eb37059d Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sun, 5 Jan 2025 22:02:39 +0000 Subject: [PATCH 03/10] update .gitignore --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index d6cde95..8a549c3 100644 --- a/.gitignore +++ b/.gitignore @@ -12,4 +12,4 @@ *.swo *.swp *~ -tmp/ +.tmp/ From 8caf58dea98ef4c8a34f63fffdff60ffe08a8d6d Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sun, 5 Jan 2025 22:03:50 +0000 Subject: [PATCH 04/10] (cmake) tidy-up --- CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fd83aec..54dcdb5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,13 +14,13 @@ option(RUEK_BUILD_BENCHMARKS include(CMakeDependentOption) cmake_dependent_option(RUEK_BUILD_TESTING - "Build tests when this is the root project" ON - "CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF + "Build tests when BUILD_TESTING flag is set or this is the root project" ON + "BUILD_TESTING OR CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF ) cmake_dependent_option(RUEK_ENABLE_COVERAGE "Enable code coverage when RUEK_BUILD_TESTING is enabled and this is the root project" ON - "RUEK_BUILD_TESTING;CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF + "RUEK_BUILD_TESTING; CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF ) if (RUEK_ENABLE_COVERAGE) From 94682957c9bf5bfbd4b6b50d2337b78a5e11d234 Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Mon, 6 Jan 2025 18:06:44 +0000 Subject: [PATCH 05/10] (cmake) benchmark v1.9.1 --- cmake/dependencies.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake index 7c3f4bd..16d35fc 100644 --- a/cmake/dependencies.cmake +++ b/cmake/dependencies.cmake @@ -37,8 +37,8 @@ FetchContent_MakeAvailable(libxid) if (RUEK_BUILD_BENCHMARKS) # google benchmark FetchContent_Declare(benchmark - URL https://github.com/google/benchmark/archive/refs/tags/v1.8.3.tar.gz - URL_HASH SHA256=6bc180a57d23d4d9515519f92b0c83d61b05b5bab188961f36ac7b06b0d9e9ce + URL https://github.com/google/benchmark/archive/refs/tags/v1.9.1.tar.gz + URL_HASH SHA256=32131c08ee31eeff2c8968d7e874f3cb648034377dfc32a4c377fa8796d84981 ) set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "Disable tests for google benchmark") From c0b170f10c2ced6caf842c2364c778d79fa293f7 Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Mon, 6 Jan 2025 18:07:12 +0000 Subject: [PATCH 06/10] (cmake) fmt v11.1.1 --- cmake/dependencies.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake index 16d35fc..4c4e5e6 100644 --- a/cmake/dependencies.cmake +++ b/cmake/dependencies.cmake @@ -5,8 +5,8 @@ find_package(Protobuf REQUIRED) # fmt FetchContent_Declare(fmt - URL https://github.com/fmtlib/fmt/archive/refs/tags/10.1.1.tar.gz - URL_HASH SHA256=78b8c0a72b1c35e4443a7e308df52498252d1cefc2b08c9a97bc9ee6cfe61f8b + URL https://github.com/fmtlib/fmt/archive/refs/tags/11.1.1.tar.gz + URL_HASH SHA256=482eed9efbc98388dbaee5cb5f368be5eca4893456bb358c18b7ff71f835ae43 ) FetchContent_MakeAvailable(fmt) From 8b7b41855337201f9ba199f65fe74668135c7b9c Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sat, 11 Jan 2025 09:39:40 +0000 Subject: [PATCH 07/10] (cmake) grpcxx v0.6.1 --- cmake/dependencies.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/dependencies.cmake b/cmake/dependencies.cmake index 4c4e5e6..bae6619 100644 --- a/cmake/dependencies.cmake +++ b/cmake/dependencies.cmake @@ -12,8 +12,8 @@ FetchContent_MakeAvailable(fmt) # grpcxx FetchContent_Declare(grpcxx - URL https://github.com/uatuko/grpcxx/archive/refs/tags/v0.2.0.tar.gz - URL_HASH SHA256=ed0e0c6ccd44aabb9447de9030b9be092bfb97cb654d69c970cbefd7b7bb44da + URL https://github.com/uatuko/grpcxx/archive/refs/tags/v0.6.1.tar.gz + URL_HASH SHA256=70d65da48bd19f8b8262515fcea8483c7b3405ed108242f5cf326877c52372d7 ) FetchContent_MakeAvailable(grpcxx) From 9e349539dd6dd0d369b84697d63a8f0ec16cf259 Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sat, 11 Jan 2025 09:40:28 +0000 Subject: [PATCH 08/10] (cmake) tidy-up --- CMakeLists.txt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 54dcdb5..fb69240 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,9 +8,8 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) -option(RUEK_BUILD_BENCHMARKS - "Build benchmarks" OFF -) +option(BUILD_SHARED_LIBS "Build using shared libraries" OFF) +option(RUEK_BUILD_BENCHMARKS "Build benchmarks" OFF) include(CMakeDependentOption) cmake_dependent_option(RUEK_BUILD_TESTING @@ -20,7 +19,7 @@ cmake_dependent_option(RUEK_BUILD_TESTING cmake_dependent_option(RUEK_ENABLE_COVERAGE "Enable code coverage when RUEK_BUILD_TESTING is enabled and this is the root project" ON - "RUEK_BUILD_TESTING; CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF + "NOT BUILD_SHARED_LIBS; RUEK_BUILD_TESTING; CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR" OFF ) if (RUEK_ENABLE_COVERAGE) From 1f9d09a6f7a40cd0ff3673ebd115c79498fee3c5 Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sat, 11 Jan 2025 09:40:57 +0000 Subject: [PATCH 09/10] avoid unintentionally building tests from dependencies --- Containerfile | 1 + Makefile | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Containerfile b/Containerfile index e647586..b4d27ad 100644 --- a/Containerfile +++ b/Containerfile @@ -22,6 +22,7 @@ RUN ruek_march=$(./source/bin/march.sh) \ cmake -B build -G Ninja -S source/ \ -DCMAKE_CXX_COMPILER_TARGET=${ruek_march}-linux-gnu \ -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_TESTING=OFF \ -DRUEK_BUILD_TESTING=OFF RUN cmake --build build/ --config Release diff --git a/Makefile b/Makefile index 612abf0..fcbf0c6 100644 --- a/Makefile +++ b/Makefile @@ -40,7 +40,7 @@ $(binary): $(buildfile) cmake --build $(builddir) $(buildfile): - cmake -B $(builddir) -G Ninja + cmake -B $(builddir) -G Ninja -DBUILD_TESTING=OFF bench: $(binary) $(benchbin) $(filter-out $@,$(MAKECMDGOALS)) $(MAKEFLAGS) From 0bd2c7ce6c190ff6312eee2261b6c772c41d100c Mon Sep 17 00:00:00 2001 From: Uditha Atukorala Date: Sat, 11 Jan 2025 09:41:58 +0000 Subject: [PATCH 10/10] update .containerignore --- .containerignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.containerignore b/.containerignore index 89122f5..f2fecc2 100644 --- a/.containerignore +++ b/.containerignore @@ -11,4 +11,4 @@ .build/ .git/ .vscode/ -tmp/ +.tmp/