mirror of
https://github.com/AlexandreRouma/dsp2.git
synced 2026-04-18 14:52:43 +00:00
53 lines
1.3 KiB
CMake
53 lines
1.3 KiB
CMake
cmake_minimum_required(VERSION 3.13)
|
|
project(dsp)
|
|
|
|
file(GLOB_RECURSE SRC "src/*.cpp" "dsp/*.cpp")
|
|
|
|
add_executable(${PROJECT_NAME} ${SRC})
|
|
|
|
target_include_directories(${PROJECT_NAME} PRIVATE "/")
|
|
|
|
target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20)
|
|
|
|
# Set compiler options
|
|
if (MSVC)
|
|
target_compile_options(${PROJECT_NAME} PRIVATE /EHsc) # /O2 /Ob2
|
|
elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
target_compile_options(${PROJECT_NAME} PRIVATE -O3 -Wno-literal-suffix)
|
|
else ()
|
|
target_compile_options(${PROJECT_NAME} PRIVATE -O3 -Wno-literal-suffix)
|
|
endif ()
|
|
|
|
|
|
if (MSVC)
|
|
# Lib path
|
|
target_link_directories(${PROJECT_NAME} PUBLIC "C:/Program Files/PothosSDR/lib/")
|
|
|
|
# Misc headers
|
|
target_include_directories(${PROJECT_NAME} PUBLIC "C:/Program Files/PothosSDR/include/")
|
|
|
|
# Volk
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC volk)
|
|
|
|
else()
|
|
find_package(PkgConfig)
|
|
|
|
pkg_check_modules(VOLK REQUIRED volk)
|
|
|
|
target_include_directories(${PROJECT_NAME} PUBLIC
|
|
${VOLK_INCLUDE_DIRS}
|
|
)
|
|
|
|
target_link_directories(${PROJECT_NAME} PUBLIC
|
|
${VOLK_LIBRARY_DIRS}
|
|
)
|
|
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC
|
|
${VOLK_LIBRARIES}
|
|
)
|
|
|
|
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC stdc++fs pthread)
|
|
endif ()
|
|
|
|
endif () |