From 750fcb30ba872c894bb15bc10efe5b53dc7b43a1 Mon Sep 17 00:00:00 2001 From: Allan Leal Date: Tue, 27 Sep 2022 09:17:21 +0200 Subject: [PATCH 1/2] Add nlohmann_json to ThermoFunFindDeps. Removed else branch that prints found version of dep. This is already printed by default when found. --- cmake/modules/ThermoFunFindDeps.cmake | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/cmake/modules/ThermoFunFindDeps.cmake b/cmake/modules/ThermoFunFindDeps.cmake index 8cfad87..d768053 100644 --- a/cmake/modules/ThermoFunFindDeps.cmake +++ b/cmake/modules/ThermoFunFindDeps.cmake @@ -1,7 +1,3 @@ -# Find Boost library -#find_package(Boost REQUIRED) - - # Find pybind11 library (if needed) if(TFUN_BUILD_PYTHON) find_package(pybind11 REQUIRED) @@ -13,16 +9,17 @@ if(TFUN_BUILD_PYTHON) endif() endif() +find_package(nlohmann_json REQUIRED) +if(NOT nlohmann_json_FOUND) + message(FATAL_ERROR "nlohmann_json library not found") +endif() + find_package(ChemicalFun REQUIRED) if(NOT ChemicalFun_FOUND) - message(FATAL_ERROR "ChemicalFun library not found") -else() - message(STATUS "Found ChemicalFun v${ChemicalFun_VERSION}") + message(FATAL_ERROR "ChemicalFun library not found") endif() find_package(spdlog REQUIRED) if(NOT spdlog_FOUND) - message(FATAL_ERROR "spdlog not found") -else() - message(STATUS "Found spdlog v${spdlog_VERSION}") + message(FATAL_ERROR "spdlog not found") endif() From 258e944dce2a475f1074e61265672489c8369d96 Mon Sep 17 00:00:00 2001 From: Allan Leal Date: Tue, 27 Sep 2022 09:17:57 +0200 Subject: [PATCH 2/2] Simplified `target_link_library` calls; only one now with all required deps --- ThermoFun/CMakeLists.txt | 32 ++++++++------------------------ 1 file changed, 8 insertions(+), 24 deletions(-) diff --git a/ThermoFun/CMakeLists.txt b/ThermoFun/CMakeLists.txt index 9556f16..3cfd0f9 100644 --- a/ThermoFun/CMakeLists.txt +++ b/ThermoFun/CMakeLists.txt @@ -25,32 +25,16 @@ endif() # Create a library using the collected source files add_library(ThermoFun ${HEADER_FILES} ${SOURCE_FILES}) + # Add aliases for ThermoFun shared and static libraries add_library(ThermoFun::ThermoFun ALIAS ThermoFun) -if(ChemicalFun_FOUND) - target_link_libraries(ThermoFun PUBLIC ChemicalFun::ChemicalFun) -endif() - -target_link_libraries(ThermoFun PRIVATE spdlog::spdlog) - - -if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC") - #link_directories("/usr/local/lib") -else() - if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") -# build options for MacOS - else() -# build options for Linux -# Find library and software dependencies - #find_package(Boost 1.58.0 REQUIRED) - find_package(nlohmann_json REQUIRED) -# Specify the dependency libraries to link against - target_link_libraries(ThermoFun -# PRIVATE Boost::boost - PRIVATE nlohmann_json::nlohmann_json) - endif() -endif() +# Link ThermoFun against all required dependencies +target_link_libraries(ThermoFun + PUBLIC ChemicalFun::ChemicalFun + PRIVATE spdlog::spdlog + PRIVATE nlohmann_json::nlohmann_json +) # Specify the include directories of the library target target_include_directories(ThermoFun @@ -64,7 +48,7 @@ install(TARGETS ThermoFun ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT libraries) - + # Install debug symbols if(MSVC) install(