mirror of
https://github.com/slsdetectorgroup/aare.git
synced 2025-04-19 13:20:03 +02:00
52 lines
1.3 KiB
CMake
52 lines
1.3 KiB
CMake
|
|
find_package (Python 3.10 COMPONENTS Interpreter Development)
|
|
|
|
# Download or find pybind11 depending on configuration
|
|
if(AARE_FETCH_PYBIND11)
|
|
FetchContent_Declare(
|
|
pybind11
|
|
GIT_REPOSITORY https://github.com/pybind/pybind11
|
|
GIT_TAG v2.13.0
|
|
)
|
|
FetchContent_MakeAvailable(pybind11)
|
|
else()
|
|
find_package(pybind11 2.13 REQUIRED)
|
|
endif()
|
|
|
|
# Add the compiled python extension
|
|
pybind11_add_module(
|
|
_aare # name of the module
|
|
src/module.cpp # source file
|
|
)
|
|
|
|
set_target_properties(_aare PROPERTIES
|
|
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}
|
|
)
|
|
target_link_libraries(_aare PRIVATE aare_core aare_compiler_flags)
|
|
|
|
# List of python files to be copied to the build directory
|
|
set( PYTHON_FILES
|
|
aare/__init__.py
|
|
aare/CtbRawFile.py
|
|
aare/RawFile.py
|
|
aare/transform.py
|
|
aare/ScanParameters.py
|
|
aare/utils.py
|
|
)
|
|
|
|
# Copy the python files to the build directory
|
|
foreach(FILE ${PYTHON_FILES})
|
|
configure_file(${FILE} ${CMAKE_BINARY_DIR}/${FILE} )
|
|
endforeach(FILE ${PYTHON_FILES})
|
|
|
|
set_target_properties(_aare PROPERTIES
|
|
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/aare
|
|
)
|
|
|
|
|
|
|
|
# Copy the examples/scripts to the build directory
|
|
configure_file(examples/play.py ${CMAKE_BINARY_DIR}/play.py)
|
|
|
|
|
|
install(TARGETS _aare DESTINATION aare) |