sdrangel/plugins/samplesource/gnuradio/CMakeLists.txt

88 lines
2.0 KiB
CMake

project(gnuradio)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
find_package(GnuradioRuntime)
find_package(GnuradioOsmosdr)
if(UNIX AND NOT BOOST_ROOT AND EXISTS "/usr/lib64")
list(APPEND BOOST_LIBRARYDIR "/usr/lib64") #fedora 64-bit fix
endif(UNIX AND NOT BOOST_ROOT AND EXISTS "/usr/lib64")
find_package(Boost COMPONENTS system)
if(NOT GNURADIO_RUNTIME_FOUND AND GNURADIO_OSMOSDR_FOUND)
message(STATUS "GNU Radio not found, assuming built-in gr-osmosdr runtime.")
set(GNURADIO_RUNTIME_FOUND TRUE)
set(GNURADIO_RUNTIME_INCLUDE_DIRS "")
set(GNURADIO_RUNTIME_LIBRARIES "")
FOREACH(inc ${GNURADIO_OSMOSDR_INCLUDE_DIRS})
LIST(APPEND GNURADIO_RUNTIME_INCLUDE_DIRS "${inc}/osmosdr/runtime")
ENDFOREACH(inc)
LIST(APPEND GNURADIO_RUNTIME_LIBRARIES ${GNURADIO_OSMOSDR_LIBRARIES})
endif(NOT GNURADIO_RUNTIME_FOUND AND GNURADIO_OSMOSDR_FOUND)
if(Boost_FOUND AND GNURADIO_RUNTIME_FOUND AND GNURADIO_OSMOSDR_FOUND)
set(gnuradio_SOURCES
gnuradiogui.cpp
gnuradioinput.cpp
gnuradioplugin.cpp
gnuradiothread.cpp
)
set(gnuradio_HEADERS
gnuradiogui.h
gnuradioinput.h
gnuradioplugin.h
gnuradiothread.h
)
set(gnuradio_FORMS
gnuradiogui.ui
)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/include
${CMAKE_SOURCE_DIR}/include-gpl
${Boost_INCLUDE_DIRS}
${GNURADIO_RUNTIME_INCLUDE_DIRS}
${GNURADIO_OSMOSDR_INCLUDE_DIRS}
)
add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_PLUGIN)
add_definitions(-DQT_SHARED)
add_definitions(-DBOOST_ALL_NO_LIB)
if(MSVC)
add_definitions(-DNOMINMAX)
endif()
qt5_wrap_ui(gnuradio_FORMS_HEADERS ${gnuradio_FORMS})
add_library(inputgnuradio SHARED
${gnuradio_SOURCES}
${gnuradio_HEADERS_MOC}
${gnuradio_FORMS_HEADERS}
)
target_link_libraries(inputgnuradio
${QT_LIBRARIES}
${Boost_LIBRARIES}
${GNURADIO_RUNTIME_LIBRARIES}
${GNURADIO_OSMOSDR_LIBRARIES}
sdrbase
)
qt5_use_modules(inputgnuradio Core Widgets OpenGL Multimedia)
endif(Boost_FOUND AND GNURADIO_RUNTIME_FOUND AND GNURADIO_OSMOSDR_FOUND)