mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2025-06-08 13:40:39 +02:00
cleanup
This commit is contained in:
parent
ef61e62238
commit
1f56374496
@ -1,5 +1,5 @@
|
|||||||
cmake_minimum_required(VERSION 3.12)
|
cmake_minimum_required(VERSION 3.12)
|
||||||
set(CMAKE_CXX_STANDARD 17)
|
set(CMAKE_CXX_STANDARD 17) #TODO! Global or per target?
|
||||||
project(aare
|
project(aare
|
||||||
VERSION 0.1
|
VERSION 0.1
|
||||||
DESCRIPTION "Data processing library for PSI detectors"
|
DESCRIPTION "Data processing library for PSI detectors"
|
||||||
@ -10,29 +10,26 @@ project(aare
|
|||||||
cmake_policy(SET CMP0135 NEW)
|
cmake_policy(SET CMP0135 NEW)
|
||||||
cmake_policy(SET CMP0079 NEW)
|
cmake_policy(SET CMP0079 NEW)
|
||||||
|
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
include(FetchContent)
|
include(FetchContent)
|
||||||
|
|
||||||
|
|
||||||
option(USE_SANITIZER "Sanitizers for debugging" ON)
|
option(AARE_USE_SANITIZER "Sanitizers for debugging" ON)
|
||||||
option(DISABLE_WARNINGS "Disbale compilation warnings" OFF)
|
option(AARE_PYTHON_BINDINGS "Build python bindings" ON)
|
||||||
option(USE_PYTHON "Build python bindings" ON)
|
option(AARE_TESTS "Build tests" OFF)
|
||||||
option(AARE_BUILD_TESTS "Build tests" OFF)
|
option(AARE_EXAMPLES "Build examples" OFF)
|
||||||
|
|
||||||
|
#TODO! Should this be on the top level or move it down to the component
|
||||||
|
#that needs it?
|
||||||
FetchContent_Declare(json
|
FetchContent_Declare(json
|
||||||
GIT_REPOSITORY https://github.com/nlohmann/json
|
GIT_REPOSITORY https://github.com/nlohmann/json
|
||||||
GIT_TAG v3.11.3
|
GIT_TAG v3.11.3
|
||||||
)
|
)
|
||||||
FetchContent_MakeAvailable(json)
|
FetchContent_MakeAvailable(json)
|
||||||
|
|
||||||
if(AARE_BUILD_TESTS)
|
|
||||||
add_subdirectory(tests)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
|
|
||||||
find_package(fmt 6 REQUIRED)
|
find_package(fmt 6 REQUIRED)
|
||||||
|
|
||||||
|
|
||||||
@ -63,32 +60,26 @@ find_package(fmt 6 REQUIRED)
|
|||||||
|
|
||||||
# set(CMAKE_CXX_FLAGS "${OPTIMIZATION_FLAGS} ${SUPPRESSED_WARNINGS}")
|
# set(CMAKE_CXX_FLAGS "${OPTIMIZATION_FLAGS} ${SUPPRESSED_WARNINGS}")
|
||||||
|
|
||||||
# if(USE_PYTHON)
|
|
||||||
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
|
|
||||||
# endif(USE_PYTHON)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# include_directories(include)
|
|
||||||
# add_subdirectory(src)
|
|
||||||
|
|
||||||
|
if(AARE_BUILD_TESTS)
|
||||||
|
add_subdirectory(tests)
|
||||||
|
endif()
|
||||||
add_subdirectory(core)
|
add_subdirectory(core)
|
||||||
add_subdirectory(file_io)
|
add_subdirectory(file_io)
|
||||||
|
|
||||||
|
|
||||||
|
#Overall target to link to when using the library
|
||||||
add_library(aare INTERFACE)
|
add_library(aare INTERFACE)
|
||||||
target_link_libraries(aare INTERFACE core file_io)
|
target_link_libraries(aare INTERFACE core file_io)
|
||||||
|
target_include_directories(aare INTERFACE
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||||
|
$<INSTALL_INTERFACE:include>
|
||||||
|
)
|
||||||
|
|
||||||
add_subdirectory(examples)
|
add_subdirectory(examples)
|
||||||
target_link_libraries(example PUBLIC aare)
|
target_link_libraries(example PUBLIC aare)
|
||||||
|
|
||||||
|
|
||||||
if(USE_PYTHON)
|
if(AARE_PYTHON_BINDINGS)
|
||||||
find_package (Python 3.11 COMPONENTS Interpreter Development)
|
|
||||||
find_package(pybind11 2.11 REQUIRED)
|
|
||||||
add_subdirectory(python)
|
add_subdirectory(python)
|
||||||
target_link_libraries(_aare PRIVATE aare nlohmann_json::nlohmann_json fmt::fmt)
|
|
||||||
endif()
|
endif()
|
@ -1,4 +1,8 @@
|
|||||||
|
|
||||||
|
find_package (Python 3.11 COMPONENTS Interpreter Development)
|
||||||
|
find_package(pybind11 2.11 REQUIRED)
|
||||||
pybind11_add_module(_aare src/bindings.cpp)
|
pybind11_add_module(_aare src/bindings.cpp)
|
||||||
set_target_properties(_aare PROPERTIES
|
set_target_properties(_aare PROPERTIES
|
||||||
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}
|
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||||
)
|
)
|
||||||
|
target_link_libraries(_aare PRIVATE aare)
|
Loading…
x
Reference in New Issue
Block a user