1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-25 17:28:50 -05:00
sdrangel/plugins/channeltx/moddatv/CMakeLists.txt
srcejon e277ed0736 Update CMakeLists.txt to allow static libraries to be built, as well as shared.
Add BUILD_BENCH, BUILD_SHARED_LIBS, ENABLE_AARONIARTSA and ENABLE_METIS options.
2024-10-30 20:29:21 +01:00

106 lines
2.4 KiB
CMake

project(moddatv)
set(moddatv_SOURCES
datvmod.cpp
datvmodbaseband.cpp
datvmodreport.cpp
datvmodsource.cpp
datvmodplugin.cpp
datvmodsettings.cpp
datvmodwebapiadapter.cpp
dvb-s/dvb-s.cpp
dvb-s2/DVB2.cpp
dvb-s2/DVBS2.cpp
dvb-s2/dvb2_bbheader.cpp
dvb-s2/dvb2_bch.cpp
dvb-s2/dvb2_ldpc_encode.cpp
dvb-s2/dvb2_ldpc_tables.cpp
dvb-s2/dvb2_scrambler.cpp
dvb-s2/dvbs2_interleave.cpp
dvb-s2/dvbs2_modulator.cpp
dvb-s2/dvbs2_physical.cpp
dvb-s2/dvbs2_scrambler.cpp
dvb-s2/dvbs2_tables.cpp
)
set(moddatv_HEADERS
datvmod.h
datvmodbaseband.h
datvmodreport.h
datvmodsource.h
datvmodplugin.h
datvmodsettings.h
datvmodwebapiadapter.h
dvb-s/dvb-s.h
dvb-s/dvb-s.h
dvb-s2/DVB2.h
dvb-s2/DVBS2.h
)
include_directories(
${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client
${Boost_INCLUDE_DIRS}
${AVCODEC_INCLUDE_DIRS}
${AVFORMAT_INCLUDE_DIRS}
${AVUTIL_INCLUDE_DIRS}
${SWSCALE_INCLUDE_DIRS}
${SWRESAMPLE_INCLUDE_DIRS}
)
if(NOT SERVER_MODE)
set(moddatv_SOURCES
${moddatv_SOURCES}
datvmodgui.cpp
datvmodgui.ui
)
set(moddatv_HEADERS
${moddatv_HEADERS}
datvmodgui.h
)
set(TARGET_NAME ${PLUGINS_PREFIX}moddatv)
set(TARGET_LIB "Qt::Widgets")
set(TARGET_LIB_GUI "sdrgui")
set(INSTALL_FOLDER ${INSTALL_PLUGINS_DIR})
else()
set(TARGET_NAME ${PLUGINSSRV_PREFIX}moddatvsrv)
set(TARGET_LIB "")
set(TARGET_LIB_GUI "")
set(INSTALL_FOLDER ${INSTALL_PLUGINSSRV_DIR})
endif()
if(NOT Qt6_FOUND)
add_library(${TARGET_NAME} ${moddatv_SOURCES})
else()
qt_add_plugin(${TARGET_NAME} CLASS_NAME DATVModPlugin ${moddatv_SOURCES})
endif()
if(NOT BUILD_SHARED_LIBS)
set_property(GLOBAL APPEND PROPERTY STATIC_PLUGINS_PROPERTY ${TARGET_NAME})
endif()
target_link_libraries(${TARGET_NAME} PRIVATE
Boost::disable_autolinking
Qt::Core
${TARGET_LIB}
sdrbase
${TARGET_LIB_GUI}
swagger
${AVCODEC_LIBRARIES}
${AVFORMAT_LIBRARIES}
${AVUTIL_LIBRARIES}
${SWSCALE_LIBRARIES}
${SWRESAMPLE_LIBRARIES}
)
if(DEFINED FFMPEG_DEPENDS)
add_dependencies(${TARGET_NAME} ${FFMPEG_DEPENDS})
endif()
install(TARGETS ${TARGET_NAME} DESTINATION ${INSTALL_FOLDER})
# Install debug symbols
if (WIN32)
install(FILES $<TARGET_PDB_FILE:${TARGET_NAME}> CONFIGURATIONS Debug RelWithDebInfo DESTINATION ${INSTALL_FOLDER} )
endif()