From 561a4c68580b48cb13bfdb0bba6651a4bbbcbe62 Mon Sep 17 00:00:00 2001 From: f4exb Date: Sun, 22 Oct 2017 12:01:04 +0200 Subject: [PATCH] Create a CMakeList.txt in its own right for sdrbase library --- CMakeLists.txt | 364 +----------------------------------- debian/changelog | 8 +- sdrbase/CMakeLists.txt | 367 +++++++++++++++++++++++++++++++++++++ sdrbase/dsp/dspengine.cpp | 39 +++- sdrbase/dsp/dspengine.h | 26 +-- sdrbase/gui/aboutdialog.ui | 2 +- sdrbase/mainwindow.cpp | 4 +- 7 files changed, 421 insertions(+), 389 deletions(-) create mode 100644 sdrbase/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index e24226041..84cb10750 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -185,366 +185,8 @@ endif() set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -fmax-errors=10 -ffast-math -ftree-vectorize ${EXTRA_FLAGS}") ############################################################################## - -set(sdrbase_SOURCES - sdrbase/mainwindow.cpp - - sdrbase/audio/audiodeviceinfo.cpp - sdrbase/audio/audiofifo.cpp - sdrbase/audio/audiooutput.cpp - sdrbase/audio/audioinput.cpp - - sdrbase/dsp/afsquelch.cpp - sdrbase/dsp/agc.cpp - sdrbase/dsp/downchannelizer.cpp - sdrbase/dsp/upchannelizer.cpp - sdrbase/dsp/channelmarker.cpp - sdrbase/dsp/ctcssdetector.cpp - sdrbase/dsp/cwkeyer.cpp - sdrbase/dsp/dspcommands.cpp - sdrbase/dsp/dspengine.cpp - sdrbase/dsp/dspdevicesourceengine.cpp - sdrbase/dsp/dspdevicesinkengine.cpp - sdrbase/dsp/fftengine.cpp - sdrbase/dsp/fftfilt.cxx - sdrbase/dsp/fftwindow.cpp - sdrbase/dsp/filterrc.cpp - sdrbase/dsp/filtermbe.cpp - sdrbase/dsp/filerecord.cpp - sdrbase/dsp/interpolator.cpp - sdrbase/dsp/hbfiltertraits.cpp - sdrbase/dsp/lowpass.cpp - sdrbase/dsp/nco.cpp - sdrbase/dsp/ncof.cpp - sdrbase/dsp/pidcontroller.cpp - sdrbase/dsp/phaselock.cpp - sdrbase/dsp/samplesinkfifo.cpp - sdrbase/dsp/samplesourcefifo.cpp - sdrbase/dsp/samplesinkfifodoublebuffered.cpp - sdrbase/dsp/basebandsamplesink.cpp - sdrbase/dsp/basebandsamplesource.cpp - sdrbase/dsp/nullsink.cpp - sdrbase/dsp/recursivefilters.cpp - sdrbase/dsp/spectrumscopecombovis.cpp - sdrbase/dsp/spectrumscopengcombovis.cpp - sdrbase/dsp/scopevis.cpp - sdrbase/dsp/scopevisng.cpp - sdrbase/dsp/scopevismulti.cpp - sdrbase/dsp/spectrumvis.cpp - sdrbase/dsp/threadedbasebandsamplesink.cpp - sdrbase/dsp/threadedbasebandsamplesource.cpp - sdrbase/dsp/wfir.cpp - - sdrbase/gui/aboutdialog.cpp - sdrbase/gui/addpresetdialog.cpp - sdrbase/gui/basicchannelsettingswidget.cpp - sdrbase/gui/basicchannelsettingsdialog.cpp - sdrbase/gui/buttonswitch.cpp - sdrbase/gui/channelwindow.cpp - sdrbase/gui/clickablelabel.cpp - sdrbase/gui/colormapper.cpp - sdrbase/gui/cwkeyergui.cpp - sdrbase/gui/glscope.cpp - sdrbase/gui/glscopegui.cpp - sdrbase/gui/glscopeng.cpp - sdrbase/gui/glscopemulti.cpp - sdrbase/gui/glscopenggui.cpp - sdrbase/gui/glscopemultigui.cpp - sdrbase/gui/glshadersimple.cpp - sdrbase/gui/glshadertextured.cpp - sdrbase/gui/glspectrum.cpp - sdrbase/gui/glspectrumgui.cpp - sdrbase/gui/indicator.cpp - sdrbase/gui/levelmeter.cpp - sdrbase/gui/mypositiondialog.cpp - sdrbase/gui/pluginsdialog.cpp - sdrbase/gui/audiodialog.cpp - sdrbase/gui/presetitem.cpp - sdrbase/gui/rollupwidget.cpp - sdrbase/gui/samplingdevicecontrol.cpp - sdrbase/gui/scale.cpp - sdrbase/gui/scaleengine.cpp - sdrbase/gui/transverterbutton.cpp - sdrbase/gui/transverterdialog.cpp - sdrbase/gui/valuedial.cpp - sdrbase/gui/valuedialz.cpp - - sdrbase/dsp/devicesamplesource.cpp - sdrbase/dsp/devicesamplesink.cpp - - sdrbase/plugin/pluginapi.cpp - sdrbase/plugin/plugininterface.cpp - sdrbase/plugin/pluginmanager.cpp - - sdrbase/settings/preferences.cpp - sdrbase/settings/preset.cpp - sdrbase/settings/mainsettings.cpp - - sdrbase/util/CRC64.cpp - sdrbase/util/db.cpp - sdrbase/util/message.cpp - sdrbase/util/messagequeue.cpp - sdrbase/util/prettyprint.cpp - sdrbase/util/syncmessenger.cpp - sdrbase/util/samplesourceserializer.cpp - sdrbase/util/simpleserializer.cpp - #sdrbase/util/spinlock.cpp - - sdrbase/device/devicesourceapi.cpp - sdrbase/device/devicesinkapi.cpp -) - -set(sdrbase_HEADERS - sdrbase/mainwindow.h - - sdrbase/audio/audiodeviceinfo.h - sdrbase/audio/audiofifo.h - sdrbase/audio/audiooutput.h - sdrbase/audio/audioinput.h - - sdrbase/dsp/afsquelch.h - sdrbase/dsp/downchannelizer.h - sdrbase/dsp/upchannelizer.h - sdrbase/dsp/channelmarker.h - sdrbase/dsp/complex.h - sdrbase/dsp/cwkeyer.h - sdrbase/dsp/decimators.h - sdrbase/dsp/interpolators.h - sdrbase/dsp/dspcommands.h - sdrbase/dsp/dspengine.h - sdrbase/dsp/dspdevicesourceengine.h - sdrbase/dsp/dspdevicesinkengine.h - sdrbase/dsp/dsptypes.h - sdrbase/dsp/fftengine.h - sdrbase/dsp/fftfilt.h - sdrbase/dsp/fftwengine.h - sdrbase/dsp/fftwindow.h - sdrbase/dsp/filterrc.h - sdrbase/dsp/filtermbe.h - sdrbase/dsp/filerecord.h - sdrbase/dsp/gfft.h - sdrbase/dsp/interpolator.h - sdrbase/dsp/hbfiltertraits.h - sdrbase/dsp/inthalfbandfilter.h - sdrbase/dsp/inthalfbandfilterdb.h - sdrbase/dsp/inthalfbandfiltereo1.h - sdrbase/dsp/inthalfbandfiltereo1i.h - sdrbase/dsp/inthalfbandfilterst.h - sdrbase/dsp/inthalfbandfiltersti.h - sdrbase/dsp/kissfft.h - sdrbase/dsp/kissengine.h - sdrbase/dsp/lowpass.h - sdrbase/dsp/misc.h - sdrbase/dsp/movingaverage.h - sdrbase/dsp/nco.h - sdrbase/dsp/ncof.h - sdrbase/dsp/phasediscri.h - sdrbase/dsp/phaselock.h - sdrbase/dsp/pidcontroller.h - sdrbase/dsp/recursivefilters.h - sdrbase/dsp/samplesinkfifo.h - sdrbase/dsp/samplesourcefifo.h - sdrbase/dsp/samplesinkfifodoublebuffered.h - sdrbase/dsp/samplesinkfifodecimator.h - sdrbase/dsp/basebandsamplesink.h - sdrbase/dsp/basebandsamplesource.h - sdrbase/dsp/nullsink.h - sdrbase/dsp/spectrumscopecombovis.h - sdrbase/dsp/spectrumscopengcombovis.h - sdrbase/dsp/scopevis.h - sdrbase/dsp/scopevisng.h - sdrbase/dsp/scopevismulti.h - sdrbase/dsp/spectrumvis.h - sdrbase/dsp/threadedbasebandsamplesink.h - sdrbase/dsp/threadedbasebandsamplesource.h - sdrbase/dsp/wfir.h - - sdrbase/gui/aboutdialog.h - sdrbase/gui/addpresetdialog.h - sdrbase/gui/basicchannelsettingswidget.h - sdrbase/gui/basicchannelsettingsdialog.h - sdrbase/gui/buttonswitch.h - sdrbase/gui/channelwindow.h - sdrbase/gui/colormapper.h - sdrbase/gui/cwkeyergui.h - sdrbase/gui/glscope.h - sdrbase/gui/glscopegui.h - sdrbase/gui/glscopeng.h - sdrbase/gui/glscopemulti.h - sdrbase/gui/glscopenggui.h - sdrbase/gui/glscopemultigui.h - sdrbase/gui/glshadersimple.h - sdrbase/gui/glshadertextured.h - sdrbase/gui/glspectrum.h - sdrbase/gui/glspectrumgui.h - sdrbase/gui/indicator.h - sdrbase/gui/levelmeter.h - sdrbase/gui/mypositiondialog.h - sdrbase/gui/physicalunit.h - sdrbase/gui/pluginsdialog.h - sdrbase/gui/audiodialog.h - sdrbase/gui/presetitem.h - sdrbase/gui/rollupwidget.h - sdrbase/gui/samplingdevicecontrol.h - sdrbase/gui/scale.h - sdrbase/gui/scaleengine.h - sdrbase/gui/transverterbutton.h - sdrbase/gui/transverterdialog.h - sdrbase/gui/valuedial.h - sdrbase/gui/valuedialz.h - - sdrbase/dsp/devicesamplesource.h - sdrbase/dsp/devicesamplesink.h - - sdrbase/plugin/pluginapi.h - sdrbase/plugin/plugininstancegui.h - sdrbase/plugin/plugininterface.h - sdrbase/plugin/pluginmanager.h - - sdrbase/settings/preferences.h - sdrbase/settings/preset.h - sdrbase/settings/mainsettings.h - - sdrbase/util/CRC64.h - sdrbase/util/db.h - sdrbase/util/doublebuffer.h - sdrbase/util/export.h - sdrbase/util/message.h - sdrbase/util/messagequeue.h - sdrbase/util/movingaverage.h - sdrbase/util/prettyprint.h - sdrbase/util/syncmessenger.h - sdrbase/util/samplesourceserializer.h - sdrbase/util/simpleserializer.h - #sdrbase/util/spinlock.h - - sdrbase/device/devicesourceapi.h - sdrbase/device/devicesinkapi.h -) - -set(sdrbase_SOURCES - ${sdrbase_SOURCES} - ${sdrbase_HEADERS} -) - -set(sdrbase_FORMS - sdrbase/mainwindow.ui - - sdrbase/gui/aboutdialog.ui - sdrbase/gui/addpresetdialog.ui - sdrbase/gui/basicchannelsettingswidget.ui - sdrbase/gui/basicchannelsettingsdialog.ui - sdrbase/gui/cwkeyergui.ui - sdrbase/gui/glscopegui.ui - sdrbase/gui/glscopenggui.ui - sdrbase/gui/glscopemultigui.ui - sdrbase/gui/glspectrumgui.ui - sdrbase/gui/pluginsdialog.ui - sdrbase/gui/audiodialog.ui - sdrbase/gui/samplingdevicecontrol.ui - sdrbase/gui/myposdialog.ui - sdrbase/gui/transverterdialog.ui -) - -set(sdrbase_RESOURCES - sdrbase/resources/res.qrc -) - -if(FFTW3F_FOUND) - set(sdrbase_SOURCES - ${sdrbase_SOURCES} - sdrbase/dsp/fftwengine.cpp - ) - set(sdrbase_HEADERS - ${sdrbase_HEADERS} - sdrbase/dsp/fftwengine.h - ) - add_definitions(-DUSE_FFTW) - include_directories(${FFTW3F_INCLUDE_DIRS}) -else(FFTW3F_FOUND) - set(sdrbase_SOURCES - ${sdrbase_SOURCES} - sdrbase/dsp/kissengine.cpp - sdrbase/dsp/kissfft.h - ) - set(sdrbase_HEADERS - ${sdrbase_HEADERS} - sdrbase/dsp/kissengine.h - ) - add_definitions(-DUSE_KISSFFT) -endif(FFTW3F_FOUND) - -if (LIBSERIALDV_FOUND) - set(sdrbase_SOURCES - ${sdrbase_SOURCES} - sdrbase/dsp/dvserialworker.cpp - sdrbase/dsp/dvserialengine.cpp - ) - set(sdrbase_HEADERS - ${sdrbase_HEADERS} - sdrbase/dsp/dvserialworker.h - sdrbase/dsp/dvserialengine.h - ) - add_definitions(-DDSD_USE_SERIALDV) - include_directories(${LIBSERIALDV_INCLUDE_DIR}) -endif(LIBSERIALDV_FOUND) - -if (BUILD_DEBIAN) - set(sdrbase_SOURCES - ${sdrbase_SOURCES} - sdrbase/dsp/dvserialworker.cpp - sdrbase/dsp/dvserialengine.cpp - ) - set(sdrbase_HEADERS - ${sdrbase_HEADERS} - sdrbase/dsp/dvserialworker.h - sdrbase/dsp/dvserialengine.h - ) - add_definitions(-DDSD_USE_SERIALDV) - include_directories(${LIBSERIALDVSRC}) -endif (BUILD_DEBIAN) - -#include(${QT_USE_FILE}) -add_definitions(${QT_DEFINITIONS}) - -#qt5_wrap_cpp(sdrbase_HEADERS_MOC ${sdrbase_HEADERS}) -qt5_wrap_ui(sdrbase_FORMS_HEADERS ${sdrbase_FORMS}) -qt5_add_resources(sdrbase_RESOURCES_RCC ${sdrbase_RESOURCES}) - -if(WIN32) - SET(sdrbase_SOURCES ${sdrbase_SOURCES} sdrbase/resources/sdrangel.rc) -endif(WIN32) - -add_library(sdrbase SHARED - ${sdrbase_SOURCES} - ${sdrbase_HEADERS_MOC} - ${sdrbase_FORMS_HEADERS} - ${sdrbase_RESOURCES_RCC} -) - -target_link_libraries(sdrbase - ${QT_LIBRARIES} - ${OPENGL_LIBRARIES} -) - -if(FFTW3F_FOUND) - target_link_libraries(sdrbase ${FFTW3F_LIBRARIES}) -endif(FFTW3F_FOUND) - -if(LIBSERIALDV_FOUND) - target_link_libraries(sdrbase ${LIBSERIALDV_LIBRARY}) -endif(LIBSERIALDV_FOUND) - -if (BUILD_DEBIAN) - target_link_libraries(sdrbase serialdv) -endif (BUILD_DEBIAN) - -############################################################################## - -set_target_properties(sdrbase PROPERTIES DEFINE_SYMBOL "sdrangel_EXPORTS") -target_compile_features(sdrbase PRIVATE cxx_generalized_initializers) # cmake >= 3.1.0 - -qt5_use_modules(sdrbase Core Widgets OpenGL Multimedia) +# SDRbase library +add_subdirectory(sdrbase) include_directories( ${CMAKE_CURRENT_BINARY_DIR} @@ -610,7 +252,7 @@ endif(LIBUSB_FOUND AND UNIX) #install targets install(TARGETS sdrangel DESTINATION bin) -install(TARGETS sdrbase DESTINATION lib) +#install(TARGETS sdrbase DESTINATION lib) ############################################################################## diff --git a/debian/changelog b/debian/changelog index a765f7e63..b060c8d60 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,10 +1,16 @@ +sdrangel (3.7.6-1) unstable; urgency=medium + + * Create sdrbase library own CMakeLists.txt + + -- Edouard Griffiths, F4EXB Sun, 21 Oct 2017 23:14:18 +0200 + sdrangel (3.7.5-1) unstable; urgency=medium * CW keyer: make ramp as 20% of dot length to smoothen even more * Fixed BFM demod frequency shift * GUI and demod separation step 1 full - -- Edouard Griffiths, F4EXB Sun, 08 Oct 2017 23:14:18 +0200 + -- Edouard Griffiths, F4EXB Sun, 14 Oct 2017 23:14:18 +0200 sdrangel (3.7.4-1) unstable; urgency=medium diff --git a/sdrbase/CMakeLists.txt b/sdrbase/CMakeLists.txt new file mode 100644 index 000000000..d046a42ce --- /dev/null +++ b/sdrbase/CMakeLists.txt @@ -0,0 +1,367 @@ +project (sdrbase) + +set(sdrbase_SOURCES + mainwindow.cpp + + audio/audiodeviceinfo.cpp + audio/audiofifo.cpp + audio/audiooutput.cpp + audio/audioinput.cpp + + dsp/afsquelch.cpp + dsp/agc.cpp + dsp/downchannelizer.cpp + dsp/upchannelizer.cpp + dsp/channelmarker.cpp + dsp/ctcssdetector.cpp + dsp/cwkeyer.cpp + dsp/dspcommands.cpp + dsp/dspengine.cpp + dsp/dspdevicesourceengine.cpp + dsp/dspdevicesinkengine.cpp + dsp/fftengine.cpp + dsp/fftfilt.cxx + dsp/fftwindow.cpp + dsp/filterrc.cpp + dsp/filtermbe.cpp + dsp/filerecord.cpp + dsp/interpolator.cpp + dsp/hbfiltertraits.cpp + dsp/lowpass.cpp + dsp/nco.cpp + dsp/ncof.cpp + dsp/pidcontroller.cpp + dsp/phaselock.cpp + dsp/samplesinkfifo.cpp + dsp/samplesourcefifo.cpp + dsp/samplesinkfifodoublebuffered.cpp + dsp/basebandsamplesink.cpp + dsp/basebandsamplesource.cpp + dsp/nullsink.cpp + dsp/recursivefilters.cpp + dsp/spectrumscopecombovis.cpp + dsp/spectrumscopengcombovis.cpp + dsp/scopevis.cpp + dsp/scopevisng.cpp + dsp/scopevismulti.cpp + dsp/spectrumvis.cpp + dsp/threadedbasebandsamplesink.cpp + dsp/threadedbasebandsamplesource.cpp + dsp/wfir.cpp + + gui/aboutdialog.cpp + gui/addpresetdialog.cpp + gui/basicchannelsettingswidget.cpp + gui/basicchannelsettingsdialog.cpp + gui/buttonswitch.cpp + gui/channelwindow.cpp + gui/clickablelabel.cpp + gui/colormapper.cpp + gui/cwkeyergui.cpp + gui/glscope.cpp + gui/glscopegui.cpp + gui/glscopeng.cpp + gui/glscopemulti.cpp + gui/glscopenggui.cpp + gui/glscopemultigui.cpp + gui/glshadersimple.cpp + gui/glshadertextured.cpp + gui/glspectrum.cpp + gui/glspectrumgui.cpp + gui/indicator.cpp + gui/levelmeter.cpp + gui/mypositiondialog.cpp + gui/pluginsdialog.cpp + gui/audiodialog.cpp + gui/presetitem.cpp + gui/rollupwidget.cpp + gui/samplingdevicecontrol.cpp + gui/scale.cpp + gui/scaleengine.cpp + gui/transverterbutton.cpp + gui/transverterdialog.cpp + gui/valuedial.cpp + gui/valuedialz.cpp + + dsp/devicesamplesource.cpp + dsp/devicesamplesink.cpp + + plugin/pluginapi.cpp + plugin/plugininterface.cpp + plugin/pluginmanager.cpp + + settings/preferences.cpp + settings/preset.cpp + settings/mainsettings.cpp + + util/CRC64.cpp + util/db.cpp + util/message.cpp + util/messagequeue.cpp + util/prettyprint.cpp + util/syncmessenger.cpp + util/samplesourceserializer.cpp + util/simpleserializer.cpp + #util/spinlock.cpp + + device/devicesourceapi.cpp + device/devicesinkapi.cpp +) + +set(sdrbase_HEADERS + mainwindow.h + + audio/audiodeviceinfo.h + audio/audiofifo.h + audio/audiooutput.h + audio/audioinput.h + + dsp/afsquelch.h + dsp/downchannelizer.h + dsp/upchannelizer.h + dsp/channelmarker.h + dsp/complex.h + dsp/cwkeyer.h + dsp/decimators.h + dsp/interpolators.h + dsp/dspcommands.h + dsp/dspengine.h + dsp/dspdevicesourceengine.h + dsp/dspdevicesinkengine.h + dsp/dsptypes.h + dsp/fftengine.h + dsp/fftfilt.h + dsp/fftwengine.h + dsp/fftwindow.h + dsp/filterrc.h + dsp/filtermbe.h + dsp/filerecord.h + dsp/gfft.h + dsp/interpolator.h + dsp/hbfiltertraits.h + dsp/inthalfbandfilter.h + dsp/inthalfbandfilterdb.h + dsp/inthalfbandfiltereo1.h + dsp/inthalfbandfiltereo1i.h + dsp/inthalfbandfilterst.h + dsp/inthalfbandfiltersti.h + dsp/kissfft.h + dsp/kissengine.h + dsp/lowpass.h + dsp/misc.h + dsp/movingaverage.h + dsp/nco.h + dsp/ncof.h + dsp/phasediscri.h + dsp/phaselock.h + dsp/pidcontroller.h + dsp/recursivefilters.h + dsp/samplesinkfifo.h + dsp/samplesourcefifo.h + dsp/samplesinkfifodoublebuffered.h + dsp/samplesinkfifodecimator.h + dsp/basebandsamplesink.h + dsp/basebandsamplesource.h + dsp/nullsink.h + dsp/spectrumscopecombovis.h + dsp/spectrumscopengcombovis.h + dsp/scopevis.h + dsp/scopevisng.h + dsp/scopevismulti.h + dsp/spectrumvis.h + dsp/threadedbasebandsamplesink.h + dsp/threadedbasebandsamplesource.h + dsp/wfir.h + + gui/aboutdialog.h + gui/addpresetdialog.h + gui/basicchannelsettingswidget.h + gui/basicchannelsettingsdialog.h + gui/buttonswitch.h + gui/channelwindow.h + gui/colormapper.h + gui/cwkeyergui.h + gui/glscope.h + gui/glscopegui.h + gui/glscopeng.h + gui/glscopemulti.h + gui/glscopenggui.h + gui/glscopemultigui.h + gui/glshadersimple.h + gui/glshadertextured.h + gui/glspectrum.h + gui/glspectrumgui.h + gui/indicator.h + gui/levelmeter.h + gui/mypositiondialog.h + gui/physicalunit.h + gui/pluginsdialog.h + gui/audiodialog.h + gui/presetitem.h + gui/rollupwidget.h + gui/samplingdevicecontrol.h + gui/scale.h + gui/scaleengine.h + gui/transverterbutton.h + gui/transverterdialog.h + gui/valuedial.h + gui/valuedialz.h + + dsp/devicesamplesource.h + dsp/devicesamplesink.h + + plugin/pluginapi.h + plugin/plugininstancegui.h + plugin/plugininterface.h + plugin/pluginmanager.h + + settings/preferences.h + settings/preset.h + settings/mainsettings.h + + util/CRC64.h + util/db.h + util/doublebuffer.h + util/export.h + util/message.h + util/messagequeue.h + util/movingaverage.h + util/prettyprint.h + util/syncmessenger.h + util/samplesourceserializer.h + util/simpleserializer.h + #util/spinlock.h + + device/devicesourceapi.h + device/devicesinkapi.h +) + +set(sdrbase_SOURCES + ${sdrbase_SOURCES} + ${sdrbase_HEADERS} +) + +set(sdrbase_FORMS + mainwindow.ui + + gui/aboutdialog.ui + gui/addpresetdialog.ui + gui/basicchannelsettingswidget.ui + gui/basicchannelsettingsdialog.ui + gui/cwkeyergui.ui + gui/glscopegui.ui + gui/glscopenggui.ui + gui/glscopemultigui.ui + gui/glspectrumgui.ui + gui/pluginsdialog.ui + gui/audiodialog.ui + gui/samplingdevicecontrol.ui + gui/myposdialog.ui + gui/transverterdialog.ui +) + +set(sdrbase_RESOURCES + resources/res.qrc +) + +if(FFTW3F_FOUND) + set(sdrbase_SOURCES + ${sdrbase_SOURCES} + dsp/fftwengine.cpp + ) + set(sdrbase_HEADERS + ${sdrbase_HEADERS} + dsp/fftwengine.h + ) + add_definitions(-DUSE_FFTW) + include_directories(${FFTW3F_INCLUDE_DIRS}) +else(FFTW3F_FOUND) + set(sdrbase_SOURCES + ${sdrbase_SOURCES} + dsp/kissengine.cpp + dsp/kissfft.h + ) + set(sdrbase_HEADERS + ${sdrbase_HEADERS} + dsp/kissengine.h + ) + add_definitions(-DUSE_KISSFFT) +endif(FFTW3F_FOUND) + +if (LIBSERIALDV_FOUND) + set(sdrbase_SOURCES + ${sdrbase_SOURCES} + dsp/dvserialworker.cpp + dsp/dvserialengine.cpp + ) + set(sdrbase_HEADERS + ${sdrbase_HEADERS} + dsp/dvserialworker.h + dsp/dvserialengine.h + ) + add_definitions(-DDSD_USE_SERIALDV) + include_directories(${LIBSERIALDV_INCLUDE_DIR}) +endif(LIBSERIALDV_FOUND) + +if (BUILD_DEBIAN) + set(sdrbase_SOURCES + ${sdrbase_SOURCES} + dsp/dvserialworker.cpp + dsp/dvserialengine.cpp + ) + set(sdrbase_HEADERS + ${sdrbase_HEADERS} + dsp/dvserialworker.h + dsp/dvserialengine.h + ) + add_definitions(-DDSD_USE_SERIALDV) + include_directories(${LIBSERIALDVSRC}) +endif (BUILD_DEBIAN) + +add_definitions(${QT_DEFINITIONS}) +add_definitions(-DQT_SHARED) + +qt5_wrap_ui(sdrbase_FORMS_HEADERS ${sdrbase_FORMS}) +qt5_add_resources(sdrbase_RESOURCES_RCC ${sdrbase_RESOURCES}) + +if(WIN32) + SET(sdrbase_SOURCES ${sdrbase_SOURCES} resources/sdrangel.rc) +endif(WIN32) + +add_library(sdrbase SHARED + ${sdrbase_SOURCES} + ${sdrbase_HEADERS_MOC} + ${sdrbase_FORMS_HEADERS} + ${sdrbase_RESOURCES_RCC} +) + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${OPENGL_INCLUDE_DIR} + . +) + +target_link_libraries(sdrbase + ${QT_LIBRARIES} + ${OPENGL_LIBRARIES} +) + +if(FFTW3F_FOUND) + target_link_libraries(sdrbase ${FFTW3F_LIBRARIES}) +endif(FFTW3F_FOUND) + +if(LIBSERIALDV_FOUND) + target_link_libraries(sdrbase ${LIBSERIALDV_LIBRARY}) +endif(LIBSERIALDV_FOUND) + +if (BUILD_DEBIAN) + target_link_libraries(sdrbase serialdv) +endif (BUILD_DEBIAN) + +set_target_properties(sdrbase PROPERTIES DEFINE_SYMBOL "sdrangel_EXPORTS") +target_compile_features(sdrbase PRIVATE cxx_generalized_initializers) # cmake >= 3.1.0 + +qt5_use_modules(sdrbase Core Widgets OpenGL Multimedia) + +install(TARGETS sdrbase DESTINATION lib) + diff --git a/sdrbase/dsp/dspengine.cpp b/sdrbase/dsp/dspengine.cpp index 3b95503c7..d16689186 100644 --- a/sdrbase/dsp/dspengine.cpp +++ b/sdrbase/dsp/dspengine.cpp @@ -192,9 +192,9 @@ DSPDeviceSinkEngine *DSPEngine::getDeviceSinkEngineByUID(uint uid) return 0; } +#ifdef DSD_USE_SERIALDV void DSPEngine::setDVSerialSupport(bool support) { -#ifdef DSD_USE_SERIALDV if (support) { m_dvSerialSupport = m_dvSerialEngine.scan(); @@ -204,5 +204,42 @@ void DSPEngine::setDVSerialSupport(bool support) m_dvSerialEngine.release(); m_dvSerialSupport = false; } +} +#else +void DSPEngine::setDVSerialSupport(bool support __attribute__((unused))) +{} +#endif + +bool DSPEngine::hasDVSerialSupport() +{ +#ifdef DSD_USE_SERIALDV + return m_dvSerialSupport; +#else + return false; #endif } + +#ifdef DSD_USE_SERIALDV +void DSPEngine::getDVSerialNames(std::vector& deviceNames) +{ + m_dvSerialEngine.getDevicesNames(deviceNames); +} +#else +void DSPEngine::getDVSerialNames(std::vector& deviceNames __attribute((unused))) +{} +#endif + +#ifdef DSD_USE_SERIALDV +void DSPEngine::pushMbeFrame(const unsigned char *mbeFrame, int mbeRateIndex, int mbeVolumeIndex, unsigned char channels, AudioFifo *audioFifo) +{ + m_dvSerialEngine.pushMbeFrame(mbeFrame, mbeRateIndex, mbeVolumeIndex, channels, audioFifo); +} +#else +void DSPEngine::pushMbeFrame( + const unsigned char *mbeFrame __attribute((unused)), + int mbeRateIndex __attribute((unused)), + int mbeVolumeIndex __attribute((unused)), + unsigned char channels __attribute((unused)), + AudioFifo *audioFifo __attribute((unused))) +{} +#endif diff --git a/sdrbase/dsp/dspengine.h b/sdrbase/dsp/dspengine.h index ad6cf73e8..aee3f1f28 100644 --- a/sdrbase/dsp/dspengine.h +++ b/sdrbase/dsp/dspengine.h @@ -73,30 +73,10 @@ public: // Serial DV methods: - bool hasDVSerialSupport() - { -#ifdef DSD_USE_SERIALDV - return m_dvSerialSupport; -#else - return false; -#endif - } - + bool hasDVSerialSupport(); void setDVSerialSupport(bool support); - - void getDVSerialNames(std::vector& deviceNames) - { -#ifdef DSD_USE_SERIALDV - m_dvSerialEngine.getDevicesNames(deviceNames); -#endif - } - - void pushMbeFrame(const unsigned char *mbeFrame, int mbeRateIndex, int mbeVolumeIndex, unsigned char channels, AudioFifo *audioFifo) - { -#ifdef DSD_USE_SERIALDV - m_dvSerialEngine.pushMbeFrame(mbeFrame, mbeRateIndex, mbeVolumeIndex, channels, audioFifo); -#endif - } + void getDVSerialNames(std::vector& deviceNames); + void pushMbeFrame(const unsigned char *mbeFrame, int mbeRateIndex, int mbeVolumeIndex, unsigned char channels, AudioFifo *audioFifo); private: std::vector m_deviceSourceEngines; diff --git a/sdrbase/gui/aboutdialog.ui b/sdrbase/gui/aboutdialog.ui index d166da3ae..02d0ece13 100644 --- a/sdrbase/gui/aboutdialog.ui +++ b/sdrbase/gui/aboutdialog.ui @@ -84,7 +84,7 @@ - <html><head/><body><p>Version 3.7.5 - Copyright (C) 2015-2017 Edouard Griffiths, F4EXB. </p><p>Code at <a href="https://github.com/f4exb/sdrangel"><span style=" text-decoration: underline; color:#0000ff;">https://github.com/f4exb/sdrangel</span></a></p><p>Many thanks to the original developers:</p><p>The osmocom developer team - especially horizon, Hoernchen &amp; tnt.</p><p>Christian Daniel from maintech GmbH.</p><p>John Greb (hexameron) for the contributions in <a href="https://github.com/hexameron/rtl-sdrangelove"><span style=" text-decoration: underline; color:#0000ff;">RTL-SDRangelove</span></a></p><p>The following rules apply to the SDRangel main application and libsdrbase:<br/>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/"><span style=" text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a>.</p><p>For the license of installed plugins, look into the plugin list.</p></body></html> + <html><head/><body><p>Version 3.7.6 - Copyright (C) 2015-2017 Edouard Griffiths, F4EXB. </p><p>Code at <a href="https://github.com/f4exb/sdrangel"><span style=" text-decoration: underline; color:#0000ff;">https://github.com/f4exb/sdrangel</span></a></p><p>Many thanks to the original developers:</p><p>The osmocom developer team - especially horizon, Hoernchen &amp; tnt.</p><p>Christian Daniel from maintech GmbH.</p><p>John Greb (hexameron) for the contributions in <a href="https://github.com/hexameron/rtl-sdrangelove"><span style=" text-decoration: underline; color:#0000ff;">RTL-SDRangelove</span></a></p><p>The following rules apply to the SDRangel main application and libsdrbase:<br/>This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You should have received a copy of the GNU General Public License along with this program. If not, see <a href="http://www.gnu.org/licenses/"><span style=" text-decoration: underline; color:#0000ff;">http://www.gnu.org/licenses/</span></a>.</p><p>For the license of installed plugins, look into the plugin list.</p></body></html> true diff --git a/sdrbase/mainwindow.cpp b/sdrbase/mainwindow.cpp index 65a84a56e..6c5ecd10d 100644 --- a/sdrbase/mainwindow.cpp +++ b/sdrbase/mainwindow.cpp @@ -501,9 +501,9 @@ void MainWindow::createStatusBar() { QString qtVersionStr = QString("Qt %1 ").arg(QT_VERSION_STR); #if QT_VERSION >= 0x050400 - m_showSystemWidget = new QLabel("SDRangel v3.7.5 " + qtVersionStr + QSysInfo::prettyProductName(), this); + m_showSystemWidget = new QLabel("SDRangel v3.7.6 " + qtVersionStr + QSysInfo::prettyProductName(), this); #else - m_showSystemWidget = new QLabel("SDRangel v3.7.5 " + qtVersionStr, this); + m_showSystemWidget = new QLabel("SDRangel v3.7.6 " + qtVersionStr, this); #endif statusBar()->addPermanentWidget(m_showSystemWidget);