The generated test files are neither executed nor installed into the
target. Therefore disabling them to remove the dependency on Google Test.

Signed-off-by: Sven Püschel <[email protected]>
---
 ...ithout-GTest-when-BUILD_TESTING-is-n.patch | 60 +++++++++++++++++++
 patches/apitrace-11.1/series                  |  3 +-
 rules/apitrace.in                             |  1 -
 rules/apitrace.make                           |  2 +-
 4 files changed, 63 insertions(+), 3 deletions(-)
 create mode 100644 
patches/apitrace-11.1/0003-Allow-building-without-GTest-when-BUILD_TESTING-is-n.patch

diff --git 
a/patches/apitrace-11.1/0003-Allow-building-without-GTest-when-BUILD_TESTING-is-n.patch
 
b/patches/apitrace-11.1/0003-Allow-building-without-GTest-when-BUILD_TESTING-is-n.patch
new file mode 100644
index 000000000..6141bc92f
--- /dev/null
+++ 
b/patches/apitrace-11.1/0003-Allow-building-without-GTest-when-BUILD_TESTING-is-n.patch
@@ -0,0 +1,60 @@
+From: Brent Spillner <[email protected]>
+Date: Sat, 23 Sep 2023 00:07:25 +1000
+Subject: [PATCH] Allow building without GTest when BUILD_TESTING is not set
+
+Link: https://github.com/apitrace/apitrace/pull/894
+---
+ CMakeLists.txt            | 19 ++++++++++++-------
+ thirdparty/CMakeLists.txt |  2 +-
+ 2 files changed, 13 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3d8b5811ebe2..ecdf8a0f0b0b 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -483,7 +483,9 @@ if (NOT WIN32 AND NOT ENABLE_STATIC_EXE)
+         pkg_check_modules (BROTLIENC IMPORTED_TARGET libbrotlienc>=1.0.7)
+     endif ()
+ 
+-    find_package (GTest)
++    if (BUILD_TESTING)
++        find_package (GTest)
++    endif ()
+ endif ()
+ 
+ add_subdirectory (thirdparty)
+@@ -495,12 +497,15 @@ add_subdirectory (thirdparty)
+ include_directories (BEFORE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/khronos)
+ 
+ # Convenience macro for adding unit tests
+-macro (add_gtest)
+-    add_executable (${ARGV})
+-    target_link_libraries (${ARGV0} GTest::GTest)
+-    add_dependencies (check ${ARGV0})
+-    add_test (NAME ${ARGV0} COMMAND ${ARGV0})
+-endmacro ()
++# Should only be invoked when BUILD_TESTING is enabled
++if (BUILD_TESTING)
++  macro (add_gtest)
++      add_executable (${ARGV})
++      target_link_libraries (${ARGV0} GTest::GTest)
++      add_dependencies (check ${ARGV0})
++      add_test (NAME ${ARGV0} COMMAND ${ARGV0})
++  endmacro ()
++endif ()
+ 
+ 
+ ##############################################################################
+diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt
+index ceb9305b44a4..4aca96c7e860 100644
+--- a/thirdparty/CMakeLists.txt
++++ b/thirdparty/CMakeLists.txt
+@@ -52,7 +52,7 @@ if (CMAKE_EXECUTABLE_FORMAT STREQUAL "ELF")
+ endif ()
+ 
+ # We use non-standard C++ flags, so we can't just use GTest's CMakeLists.txt
+-if (NOT GTEST_FOUND)
++if (BUILD_TESTING AND NOT GTEST_FOUND)
+     message (STATUS "Using bundled GTest")
+     include_with_scope (gtest.cmake)
+ endif ()
diff --git a/patches/apitrace-11.1/series b/patches/apitrace-11.1/series
index d4c24c917..3ec615140 100644
--- a/patches/apitrace-11.1/series
+++ b/patches/apitrace-11.1/series
@@ -2,4 +2,5 @@
 #tag:base --start-number 1
 0001-HACK-don-t-check-for-submodules-for-external-depende.patch
 0002-HACK-don-t-do-dpkg-architecture-magic.patch
-# d781b7ce7b411ab6ab663c32f56ed491  - git-ptx-patches magic
+0003-Allow-building-without-GTest-when-BUILD_TESTING-is-n.patch
+# b2c22b5a761a53785691516d94cb19c1  - git-ptx-patches magic
diff --git a/rules/apitrace.in b/rules/apitrace.in
index 581517a17..5a8b3e596 100644
--- a/rules/apitrace.in
+++ b/rules/apitrace.in
@@ -7,7 +7,6 @@ config APITRACE
        select ZLIB
        select LIBPNG
        select BROTLI
-       select GOOGLETEST
        prompt "apitrace"
        help
          Tools for tracing OpenGL, Direct3D, and other graphics APIs.
diff --git a/rules/apitrace.make b/rules/apitrace.make
index 197413fbb..6be996408 100644
--- a/rules/apitrace.make
+++ b/rules/apitrace.make
@@ -55,7 +55,7 @@ APITRACE_CONF_TOOL    := cmake
 APITRACE_CONF_OPT      :=  \
        $(CROSS_CMAKE_USR) \
        -DWRAPPER_INSTALL_DIR=/usr/lib/apitrace/wrappers \
-       -DBUILD_TESTING=ON \
+       -DBUILD_TESTING=OFF \
        -DENABLE_ASAN=OFF \
        -DENABLE_CLI=ON \
        -DENABLE_EGL=ON \
-- 
2.39.2


Reply via email to