ba-thesis/sw/cpp/CMakeLists.txt

36 lines
1015 B
CMake

cmake_minimum_required (VERSION 3.0)
project(cpp_decoders)
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
message(STATUS "Setting build type to 'Release' as none was specified.")
set(CMAKE_BUILD_TYPE
Release
CACHE STRING "Choose the type of build." FORCE)
set_property(
CACHE CMAKE_BUILD_TYPE
PROPERTY STRINGS
"Debug"
"Release")
endif()
set(CMAKE_CXX_STANDARD 23)
find_package(Eigen3 3.3 REQUIRED NO_MODULE)
find_package(pybind11 CONFIG REQUIRED)
include_directories(${pybind11_INCLUDE_DIRS})
find_package(OpenMP REQUIRED)
pybind11_add_module(cpp_decoders src/cpp_decoders.cpp)
target_link_libraries(cpp_decoders PRIVATE Eigen3::Eigen OpenMP::OpenMP_CXX)
set(INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../cpp_modules)
install(TARGETS cpp_decoders ARCHIVE DESTINATION ${INSTALL_DIR}
LIBRARY DESTINATION ${INSTALL_DIR}
RUNTIME DESTINATION ${INSTALL_DIR})