From 3e30543a578f9d26429f51dada416835092d26fb Mon Sep 17 00:00:00 2001
From: Mihai Moldovan <ionic@ionic.de>
Date: Tue, 29 Sep 2020 16:49:57 +0200
Subject: [PATCH] Search for libcheck via pkg-config instead of cmake; use static version.

Within Debian, only the static libcheck library is shipped. cmake's find script
will find that, but not use it correctly since the static library requires
additional private libraries and definitions.

Getting these via pkg-config is trivial, so switch to using this system
instead.
---
 libcomps/CMakeLists.txt       |  3 ++-
 libcomps/tests/CMakeLists.txt | 18 +++++++++---------
 2 files changed, 11 insertions(+), 10 deletions(-)

--- a/libcomps/CMakeLists.txt
+++ b/libcomps/CMakeLists.txt
@@ -35,7 +35,8 @@
 #include_directories("${PROJECT_SOURCE_DIR}/src/libcomps")
 
 if (ENABLE_TESTS)
-  find_library(CHECK_LIBRARY REQUIRED NAMES check)
+  find_package(PkgConfig)
+  pkg_check_modules(CHECK check REQUIRED)
 endif()
 find_library(EXPAT_LIBRARY NAMES expat)
 
--- a/libcomps/tests/CMakeLists.txt
+++ b/libcomps/tests/CMakeLists.txt
@@ -30,32 +30,32 @@
 add_executable(test_validate ${testvalidate_SOURCE})
 
 #target_link_libraries(test_list libcomps)
-#target_link_libraries(test_list ${CHECK_LIBRARY})
+#target_link_libraries(test_list ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 target_link_libraries(test_brtree libcomps)
-target_link_libraries(test_brtree ${CHECK_LIBRARY})
+target_link_libraries(test_brtree ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 target_link_libraries(test_rtree libcomps)
-target_link_libraries(test_rtree ${CHECK_LIBRARY})
+target_link_libraries(test_rtree ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 target_link_libraries(test_objrtree libcomps)
-target_link_libraries(test_objrtree ${CHECK_LIBRARY})
+target_link_libraries(test_objrtree ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 target_link_libraries(test_validate libcomps)
-target_link_libraries(test_validate ${CHECK_LIBRARY})
+target_link_libraries(test_validate ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 #target_link_libraries(test_rtree2 libcomps)
-#target_link_libraries(test_rtree2 ${CHECK_LIBRARY})
+#target_link_libraries(test_rtree2 ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS)
 
 #target_link_libraries(test_mrtree libcomps)
-#target_link_libraries(test_mrtree ${CHECK_LIBRARY})
+#target_link_libraries(test_mrtree ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 target_link_libraries(test_parse libcomps)
 target_link_libraries(test_parse expat)
-target_link_libraries(test_parse ${CHECK_LIBRARY})
+target_link_libraries(test_parse ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 
 target_link_libraries(test_comps expat)
-target_link_libraries(test_comps ${CHECK_LIBRARY})
+target_link_libraries(test_comps ${CHECK_STATIC_LIBRARIES} ${CHECK_STATIC_LDFLAGS})
 target_link_libraries(test_comps libcomps)
 set_target_properties(test_comps PROPERTIES COMPILE_FLAGS "${CMAKE_C_FLAGS} -g")
 
