# src/lasp/CMakeLists.txt # Armadillo, don't build the wrapper lib, but instead directly link to # openblas. add_definitions(-DARMA_DONT_USE_WRAPPER) configure_file(lasp_config.h.in lasp_config.h) include_directories(${CMAKE_CURRENT_BINARY_DIR}) include_directories(SYSTEM ${PROJECT_SOURCE_DIR}/third_party/armadillo-code/include) include_directories(${PROJECT_SOURCE_DIR}/third_party/DebugTrace-cpp/include) include_directories(${PROJECT_SOURCE_DIR}/third_party/gsl-lite/include) include_directories(${PROJECT_SOURCE_DIR}/third_party/tomlplusplus/include) include_directories(${PROJECT_SOURCE_DIR}/third_party/thread-pool) if(LASP_HAS_RTAUDIO) include_directories(${PROJECT_SOURCE_DIR}/third_party/rtaudio) endif() if(LASP_HAS_ULDAQ) include_directories(${PROJECT_SOURCE_DIR}/third_party/uldaq/src) endif() add_subdirectory(device) add_subdirectory(dsp) pybind11_add_module(lasp_cpp MODULE lasp_cpp.cpp pybind11/lasp_deviceinfo.cpp pybind11/lasp_daqconfig.cpp pybind11//lasp_dsp_pybind.cpp pybind11/lasp_streammgr.cpp pybind11/lasp_daq.cpp pybind11/lasp_deviceinfo.cpp pybind11/lasp_pyindatahandler.cpp pybind11/lasp_siggen.cpp ) target_link_libraries(lasp_cpp PRIVATE lasp_device_lib lasp_dsp_lib ${OpenMP_CXX_LIBRARIES} ${LASP_FFT_LIBS} ${TARGET_OS_LINKLIBS}) # Install the Python module install(TARGETS lasp_cpp EXCLUDE_FROM_ALL COMPONENT python_modules DESTINATION ${PY_BUILD_CMAKE_MODULE_NAME}) # Install the debug file for the Python module (Windows only) if (WIN32) install(FILES $ EXCLUDE_FROM_ALL COMPONENT python_modules DESTINATION ${PY_BUILD_CMAKE_MODULE_NAME} OPTIONAL) endif()