From 7fed299b97875085d3825a3b95ab76964a887d76 Mon Sep 17 00:00:00 2001 From: f4exb Date: Mon, 11 Sep 2017 19:34:59 +0200 Subject: [PATCH] PlutoSDR input: Windows build --- devices/devices.pro | 16 ++++++ libiio/libiio.pro | 6 ++- .../plutosdrinput/plutosdrinput.pro | 49 +++++++++++++++++++ sdrangel.windows.pro | 2 + windows64.install.bat | 2 + 5 files changed, 73 insertions(+), 2 deletions(-) create mode 100644 plugins/samplesource/plutosdrinput/plutosdrinput.pro diff --git a/devices/devices.pro b/devices/devices.pro index 84f745a0e..9a93e1bb9 100644 --- a/devices/devices.pro +++ b/devices/devices.pro @@ -23,6 +23,8 @@ CONFIG(MINGW32):LIBHACKRFSRC = "D:\softs\hackrf\host" CONFIG(MINGW64):LIBHACKRFSRC = "D:\softs\hackrf\host" CONFIG(MINGW32):LIBLIMESUITESRC = "D:\softs\LimeSuite" CONFIG(MINGW64):LIBLIMESUITESRC = "D:\softs\LimeSuite" +CONFIG(MINGW32):LIBIIOSRC = "D:\softs\libiio" +CONFIG(MINGW64):LIBIIOSRC = "D:\softs\libiio" INCLUDEPATH += $$PWD INCLUDEPATH += ../sdrbase @@ -40,6 +42,7 @@ INCLUDEPATH += $$LIBLIMESUITESRC/src/lms7002m_mcu INCLUDEPATH += $$LIBLIMESUITESRC/src/Si5351C INCLUDEPATH += $$LIBLIMESUITESRC/src/protocols INCLUDEPATH += $$LIBLIMESUITESRC/external/cpp-feather-ini-parser +INCLUDEPATH += $$LIBIIOSRC CONFIG(Release):build_subdir = release CONFIG(Debug):build_subdir = debug @@ -55,6 +58,12 @@ SOURCES += hackrf/devicehackrf.cpp\ SOURCES += limesdr/devicelimesdr.cpp\ limesdr/devicelimesdrparam.cpp\ limesdr/devicelimesdrshared.cpp + +SOURCES += plutosdr/deviceplutosdr.cpp\ + plutosdr/deviceplutosdrbox.cpp\ + plutosdr/deviceplutosdrparams.cpp\ + plutosdr/deviceplutosdrscan.cpp\ + plutosdr/deviceplutosdrshared.cpp !macx:HEADERS -= bladerf/devicebladerf.h\ bladerf/devicebladerfparam.h\ @@ -70,10 +79,17 @@ HEADERS += limesdr/devicelimesdr.h\ limesdr/devicelimesdrparam.h\ limesdr/devicelimesdrshared.h +HEADERS += plutosdr/deviceplutosdr.h\ + plutosdr/deviceplutosdrbox.h\ + plutosdr/deviceplutosdrparams.h\ + plutosdr/deviceplutosdrscan.h\ + plutosdr/deviceplutosdrshared.h + LIBS += -L../sdrbase/$${build_subdir} -lsdrbase LIBS += -L../libbladerf/$${build_subdir} -llibbladerf LIBS += -L../libhackrf/$${build_subdir} -llibhackrf LIBS += -L../liblimesuite/$${build_subdir} -lliblimesuite +LIBS += -L../libiio/$${build_subdir} -llibiio macx { LIBS -= -L../libbladerf/$${build_subdir} -llibbladerf diff --git a/libiio/libiio.pro b/libiio/libiio.pro index 2d46bee09..d02e40b64 100644 --- a/libiio/libiio.pro +++ b/libiio/libiio.pro @@ -12,7 +12,9 @@ TARGET = libiio CONFIG(MINGW32):LIBIIOSRC = "D:\softs\libiio" CONFIG(MINGW64):LIBIIOSRC = "D:\softs\libiio" -INCLUDEPATH += $$PWD/include +DEFINES += LIBIIO_EXPORTS=1 + +INCLUDEPATH += $$PWD/includemw INCLUDEPATH += $$LIBIIOSRC CONFIG(MINGW32):INCLUDEPATH += "D:\softs\libusb-1.0.20\include" @@ -45,7 +47,7 @@ HEADERS = $$LIBIIOSRC/debug.h\ $$LIBIIOSRC/iiod-client.h\ $$LIBIIOSRC/iio-lock.h\ $$LIBIIOSRC/iio-private.h\ - $$PWD\includemw/iio-config.h + $$PWD/includemw/iio-config.h CONFIG(MINGW32):LIBS += -LD:\softs\libusb-1.0.20\MinGW32\dll -llibusb-1.0 CONFIG(MINGW64):LIBS += -LD:\softs\libusb-1.0.20\MinGW64\dll -llibusb-1.0 diff --git a/plugins/samplesource/plutosdrinput/plutosdrinput.pro b/plugins/samplesource/plutosdrinput/plutosdrinput.pro new file mode 100644 index 000000000..1cb9ab673 --- /dev/null +++ b/plugins/samplesource/plutosdrinput/plutosdrinput.pro @@ -0,0 +1,49 @@ +#-------------------------------------------------------- +# +# Pro file for Android and Windows builds with Qt Creator +# +#-------------------------------------------------------- + +TEMPLATE = lib +CONFIG += plugin + +QT += core gui widgets multimedia opengl + +TARGET = inputplutosdr + +DEFINES += USE_SSE2=1 +QMAKE_CXXFLAGS += -msse2 +DEFINES += USE_SSE4_1=1 +QMAKE_CXXFLAGS += -msse4.1 + +CONFIG(MINGW32):LIBIIOSRC = "D:\softs\libiio" +CONFIG(MINGW64):LIBIIOSRC = "D:\softs\libiio" + +INCLUDEPATH += $$PWD +INCLUDEPATH += ../../../sdrbase +INCLUDEPATH += ../../../devices +INCLUDEPATH += ../../../libiio/includemw +INCLUDEPATH += $$LIBIIOSRC + +CONFIG(Release):build_subdir = release +CONFIG(Debug):build_subdir = debug + +SOURCES += plutosdrinputgui.cpp\ + plutosdrinput.cpp\ + plutosdrinputplugin.cpp\ + plutosdrinputsettings.cpp\ + plutosdrinputthread.cpp + +HEADERS += plutosdrinputgui.h\ + plutosdrinput.h\ + plutosdrinputplugin.h\ + plutosdrinputsettings.h\ + plutosdrinputthread.h + +FORMS += plutosdrinputgui.ui + +LIBS += -L../../../sdrbase/$${build_subdir} -lsdrbase +LIBS += -L../../../libiio/$${build_subdir} -llibiio +LIBS += -L../../../devices/$${build_subdir} -ldevices + +RESOURCES = ../../../sdrbase/resources/res.qrc diff --git a/sdrangel.windows.pro b/sdrangel.windows.pro index 499e74d95..0aa8f05e0 100644 --- a/sdrangel.windows.pro +++ b/sdrangel.windows.pro @@ -16,6 +16,7 @@ SUBDIRS += libairspy SUBDIRS += libbladerf SUBDIRS += libsqlite3 SUBDIRS += liblimesuite +SUBDIRS += libiio SUBDIRS += devices SUBDIRS += mbelib SUBDIRS += dsdcc @@ -28,6 +29,7 @@ SUBDIRS += plugins/samplesource/hackrfinput SUBDIRS += plugins/samplesource/airspy SUBDIRS += plugins/samplesource/bladerfinput SUBDIRS += plugins/samplesource/limesdrinput +SUBDIRS += plugins/samplesource/plutosdrinput SUBDIRS += plugins/samplesink/filesink SUBDIRS += plugins/samplesink/bladerfoutput SUBDIRS += plugins/samplesink/hackrfoutput diff --git a/windows64.install.bat b/windows64.install.bat index da6c29dc7..04cd6684e 100644 --- a/windows64.install.bat +++ b/windows64.install.bat @@ -28,6 +28,7 @@ copy libairspy\%1\libairspy.dll %2 copy libbladerf\%1\libbladerf.dll %2 copy libsqlite3\%1\libsqlite3.dll %2 copy liblimesuite\%1\liblimesuite.dll %2 +copy libiio\%1\libiio.dll %2 copy %libusbdir%\dll\libusb-1.0.dll %2 copy %opencvdir%\opencv_ffmpeg2413_64.dll %2 copy %opencvdir%\libopencv_imgproc2413.dll %2 @@ -63,6 +64,7 @@ copy plugins\samplesource\hackrfinput\%1\inputhackrf.dll %2\plugins\samplesource copy plugins\samplesource\airspy\%1\inputairspy.dll %2\plugins\samplesource copy plugins\samplesource\bladerfinput\%1\inputbladerf.dll %2\plugins\samplesource copy plugins\samplesource\limesdrinput\%1\inputlimesdr.dll %2\plugins\samplesource +copy plugins\samplesource\plutosdrinput\%1\inputplutosdr.dll %2\plugins\samplesource copy plugins\samplesink\filesink\%1\outputfilesink.dll %2\plugins\samplesink copy plugins\samplesink\bladerfoutput\%1\outputbladerf.dll %2\plugins\samplesink copy plugins\samplesink\hackrfoutput\%1\outputhackrf.dll %2\plugins\samplesink