diff --git a/CMakeLists.txt b/CMakeLists.txt index 83dac03..10efdef 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,7 +9,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}") find_package(Threads REQUIRED) # find_package(spdlog REQUIRED) -find_package(spdlog CONFIG) +# find_package(spdlog CONFIG) find_package(CFITSIO REQUIRED) find_package(XCLIB REQUIRED) @@ -30,21 +30,36 @@ if (STATIC_LIB) add_library(${RAPTOR_EAGLEV_LIB} STATIC ${RAPTOR_EAGLEV_LIB_SRC}) else() add_library(${RAPTOR_EAGLEV_LIB} SHARED ${RAPTOR_EAGLEV_LIB_SRC}) -# add_library(${RAPTOR_EAGLEV_LIB} SHARED -# raptor_eagle_ccd.h raptor_eagle_ccd.cpp -# raptor_eagle_cameralink.h -# raptor_eagle_exception.h -# raptor_eagle_acqproc.cpp) endif() +include(FetchContent) +include(ExternalProject) + +FetchContent_Declare(spdlog + # SOURCE_DIR ${CMAKE_BINARY_DIR}/spdlog + # BINARY_DIR ${CMAKE_BINARY_DIR}/spdlog/build + GIT_REPOSITORY "https://github.com/gabime/spdlog.git" + GIT_TAG "v1.15.0" + GIT_SHALLOW TRUE + GIT_SUBMODULES "" + GIT_PROGRESS TRUE +) +FetchContent_MakeAvailable(spdlog) +FetchContent_GetProperties(spdlog SOURCE_DIR spdlog_SOURCE_DIR) +set(spdlog_INCLUDE_DIR ${spdlog_SOURCE_DIR}/include) + + # to activate spdlog-library support in ADC-library # target_compile_definitions(${RAPTOR_EAGLEV_LIB} PRIVATE USE_ASIO_LIBRARY USE_SPDLOG_LIBRARY USE_OPENSSL_WITH_ASIO) target_compile_definitions(${RAPTOR_EAGLEV_LIB} PUBLIC USE_ASIO_LIBRARY USE_SPDLOG_LIBRARY) +target_compile_definitions(${RAPTOR_EAGLEV_LIB} PUBLIC SPDLOG_USE_STD_FORMAT) # !!!!! TEMPORARY !!!!! target_include_directories(${RAPTOR_EAGLEV_LIB} PUBLIC "../ADC/") target_include_directories(${RAPTOR_EAGLEV_LIB} PUBLIC ${XCLIB_INCLUDE_DIR} ${CFITSIO_INCLUDE_DIR}) -target_link_libraries(${RAPTOR_EAGLEV_LIB} PUBLIC Threads::Threads spdlog::spdlog_header_only ${XCLIB_LIBRARIES} ${CFITSIO_LIBRARY}) +target_include_directories(${RAPTOR_EAGLEV_LIB} PUBLIC ${spdlog_INCLUDE_DIR}) +# target_link_libraries(${RAPTOR_EAGLEV_LIB} PUBLIC Threads::Threads spdlog::spdlog_header_only ${XCLIB_LIBRARIES} ${CFITSIO_LIBRARY}) +target_link_libraries(${RAPTOR_EAGLEV_LIB} PUBLIC Threads::Threads ${XCLIB_LIBRARIES} ${CFITSIO_LIBRARY}) set(RAPTOR_EAGLEV_SERVER raptor_eaglev_server)