From 46c9f147ec57ae7e576cd8aa22778ad3fe6b5bf7 Mon Sep 17 00:00:00 2001 From: Jason Rhinelander Date: Sun, 1 Mar 2020 14:28:50 -0400 Subject: [PATCH] Better subproject cmake support - disable cppzmq test building - add target for main and static library - don't build tests by default when used as a subproject --- CMakeLists.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4048db4..1cbd6cd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,7 @@ set_target_properties(lokimq-static PROPERTIES OUTPUT_NAME lokimq) find_package(PkgConfig REQUIRED) pkg_check_modules(ZMQ REQUIRED libzmq>=4.1) +set(CPPZMQ_BUILD_TESTS OFF) add_subdirectory(cppzmq EXCLUDE_FROM_ALL) foreach(target lokimq lokimq-static) @@ -34,7 +35,17 @@ endforeach() target_link_libraries(lokimq PUBLIC cppzmq) target_link_libraries(lokimq-static PUBLIC cppzmq-static) -if(BUILD_TESTING) +add_library(lokimq::lokimq ALIAS lokimq) +add_library(lokimq::static ALIAS lokimq-static) + +if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME) + set(lokimq_IS_TOPLEVEL_PROJECT TRUE) +else() + set(lokimq_IS_TOPLEVEL_PROJECT FALSE) +endif() + +option(LOKIMQ_BUILD_TESTS "Building and perform lokimq tests" ${lokimq_IS_TOPLEVEL_PROJECT}) +if(LOKIMQ_BUILD_TESTS) add_subdirectory(tests) endif()