From 7359427156ced7f0a5808f993ddc13122066b86c Mon Sep 17 00:00:00 2001 From: f4exb Date: Mon, 11 Sep 2017 08:34:33 +0200 Subject: [PATCH] PlutoSDR input: Debian build --- CMakeLists.txt | 1 + libiio/CMakeLists.txt | 46 +++++++ libiio/include/iio-config.h | 60 ++++----- libiio/includemw/iio-config.h | 30 +++++ libiio/libiio.pro | 114 +++++++++--------- .../samplesource/plutosdrinput/CMakeLists.txt | 2 +- 6 files changed, 165 insertions(+), 88 deletions(-) create mode 100644 libiio/CMakeLists.txt create mode 100644 libiio/includemw/iio-config.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 6b7b7adea..e5675f6e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -589,6 +589,7 @@ if (BUILD_DEBIAN) add_subdirectory(libbladerf) add_subdirectory(libmirisdr) add_subdirectory(liblimesuite) + add_subdirectory(libiio) endif (BUILD_DEBIAN) add_subdirectory(httpserver) diff --git a/libiio/CMakeLists.txt b/libiio/CMakeLists.txt new file mode 100644 index 000000000..92a9c1f54 --- /dev/null +++ b/libiio/CMakeLists.txt @@ -0,0 +1,46 @@ +project(iio) + +find_package(LibUSB) + +set(iio_SOURCES + ${LIBIIOSRC}/backend.c + ${LIBIIOSRC}/buffer.c + ${LIBIIOSRC}/channel.c + ${LIBIIOSRC}/context.c + ${LIBIIOSRC}/device.c + ${LIBIIOSRC}/iiod-client.c + ${LIBIIOSRC}/lock.c + ${LIBIIOSRC}/scan.c + ${LIBIIOSRC}/usb.c + ${LIBIIOSRC}/utilities.c + ${LIBIIOSRC}/xml.c +) + +set(iio_HEADERS + ${LIBIIOSRC}/debug.h + ${LIBIIOSRC}/iio.h + ${LIBIIOSRC}/iiod-client.h + ${LIBIIOSRC}/iio-lock.h + ${LIBIIOSRC}/iio-private.h + include/iio-config.h +) + +include_directories( + . + ${CMAKE_CURRENT_BINARY_DIR} + ${LIBUSB_INCLUDE_DIR} + ${LIBIIOSRC} + ./include +) + +add_definitions(-DQT_SHARED) + +add_library(iio SHARED + ${libiio_SOURCES} +) + +target_link_libraries(iio + ${LIBUSB_LIBRARIES} +) + +install(TARGETS iio DESTINATION lib) diff --git a/libiio/include/iio-config.h b/libiio/include/iio-config.h index e179191cb..44a460444 100644 --- a/libiio/include/iio-config.h +++ b/libiio/include/iio-config.h @@ -1,30 +1,30 @@ -#ifndef IIO_CONFIG_H -#define IIO_CONFIG_H - -#define LIBIIO_VERSION_MAJOR 0 -#define LIBIIO_VERSION_MINOR 10 -#define LIBIIO_VERSION_GIT "3b288d4" - -#define LOG_LEVEL Info_L - -/* #undef WITH_LOCAL_BACKEND */ -#define WITH_XML_BACKEND -/* #undef WITH_NETWORK_BACKEND */ -#define WITH_USB_BACKEND -/* #undef WITH_SERIAL_BACKEND */ -/* #undef WITH_MATLAB_BINDINGS_API */ - -/* #undef WITH_NETWORK_GET_BUFFER */ -/* #undef WITH_NETWORK_EVENTFD */ -/* #undef WITH_IIOD_USBD */ -/* #undef WITH_LOCAL_CONFIG */ -#define HAS_PIPE2 -#define HAS_STRDUP -#define HAS_STRERROR_R -#define HAS_NEWLOCALE -/* #undef HAS_PTHREAD_SETNAME_NP */ -/* #undef HAVE_IPV6 */ -/* #undef HAVE_AVAHI */ -/* #undef NO_THREADS */ - -#endif /* IIO_CONFIG_H */ +#ifndef IIO_CONFIG_H +#define IIO_CONFIG_H + +#define LIBIIO_VERSION_MAJOR 0 +#define LIBIIO_VERSION_MINOR 10 +#define LIBIIO_VERSION_GIT "3b288d4" + +#define LOG_LEVEL Info_L + +#define WITH_LOCAL_BACKEND +#define WITH_XML_BACKEND +#define WITH_NETWORK_BACKEND +#define WITH_USB_BACKEND +/* #undef WITH_SERIAL_BACKEND */ +#define WITH_MATLAB_BINDINGS_API + +/* #undef WITH_NETWORK_GET_BUFFER */ +#define WITH_NETWORK_EVENTFD +#define WITH_IIOD_USBD +/* #undef WITH_LOCAL_CONFIG */ +#define HAS_PIPE2 +#define HAS_STRDUP +#define HAS_STRERROR_R +#define HAS_NEWLOCALE +#define HAS_PTHREAD_SETNAME_NP +#define HAVE_IPV6 +/* #undef HAVE_AVAHI */ +/* #undef NO_THREADS */ + +#endif /* IIO_CONFIG_H */ diff --git a/libiio/includemw/iio-config.h b/libiio/includemw/iio-config.h new file mode 100644 index 000000000..e179191cb --- /dev/null +++ b/libiio/includemw/iio-config.h @@ -0,0 +1,30 @@ +#ifndef IIO_CONFIG_H +#define IIO_CONFIG_H + +#define LIBIIO_VERSION_MAJOR 0 +#define LIBIIO_VERSION_MINOR 10 +#define LIBIIO_VERSION_GIT "3b288d4" + +#define LOG_LEVEL Info_L + +/* #undef WITH_LOCAL_BACKEND */ +#define WITH_XML_BACKEND +/* #undef WITH_NETWORK_BACKEND */ +#define WITH_USB_BACKEND +/* #undef WITH_SERIAL_BACKEND */ +/* #undef WITH_MATLAB_BINDINGS_API */ + +/* #undef WITH_NETWORK_GET_BUFFER */ +/* #undef WITH_NETWORK_EVENTFD */ +/* #undef WITH_IIOD_USBD */ +/* #undef WITH_LOCAL_CONFIG */ +#define HAS_PIPE2 +#define HAS_STRDUP +#define HAS_STRERROR_R +#define HAS_NEWLOCALE +/* #undef HAS_PTHREAD_SETNAME_NP */ +/* #undef HAVE_IPV6 */ +/* #undef HAVE_AVAHI */ +/* #undef NO_THREADS */ + +#endif /* IIO_CONFIG_H */ diff --git a/libiio/libiio.pro b/libiio/libiio.pro index e27408154..2d46bee09 100644 --- a/libiio/libiio.pro +++ b/libiio/libiio.pro @@ -1,57 +1,57 @@ -#-------------------------------------------------------- -# -# Pro file for Android and Windows builds with Qt Creator -# -#-------------------------------------------------------- - -QT += core - -TEMPLATE = lib -TARGET = libiio - -CONFIG(MINGW32):LIBIIOSRC = "D:\softs\libiio" -CONFIG(MINGW64):LIBIIOSRC = "D:\softs\libiio" - -INCLUDEPATH += $$PWD/include -INCLUDEPATH += $$LIBIIOSRC - -CONFIG(MINGW32):INCLUDEPATH += "D:\softs\libusb-1.0.20\include" -CONFIG(MINGW64):INCLUDEPATH += "D:\softs\libusb-1.0.20\include" - -# LibXml2 Windows distribution from: -# http://xmlsoft.org/sources/win32/ -# http://xmlsoft.org/sources/win32/64bit/ - -CONFIG(MINGW32):INCLUDEPATH += "D:\softs\libxml2-2.7.8.win32\include" -CONFIG(MINGW64):INCLUDEPATH += "D:\softs\libxml2-2.9.3-win32-x86_64\include\libxml2" - -SOURCES = $$LIBIIOSRC/backend.c\ - $$LIBIIOSRC/buffer.c\ - $$LIBIIOSRC/channel.c\ - $$LIBIIOSRC/context.c\ - $$LIBIIOSRC/device.c\ - $$LIBIIOSRC/iiod-client.c\ -# $$LIBIIOSRC/local.c\ - $$LIBIIOSRC/lock.c\ -# $$LIBIIOSRC/network.c\ - $$LIBIIOSRC/scan.c\ -# $$LIBIIOSRC/serial.c\ - $$LIBIIOSRC/usb.c\ - $$LIBIIOSRC/utilities.c\ - $$LIBIIOSRC/xml.c - -HEADERS = $$LIBIIOSRC/debug.h\ - $$LIBIIOSRC/iio.h\ - $$LIBIIOSRC/iiod-client.h\ - $$LIBIIOSRC/iio-lock.h\ - $$LIBIIOSRC/iio-private.h\ - $$PWD\include/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 - -CONFIG(MINGW32):LIBS += -LD:\softs\libxml2-2.7.8.win32\bin -llibxml2 -CONFIG(MINGW64):LIBS += -LD:\softs\libxml2-2.9.3-win32-x86_64\bin -llibxml2-2 - -CONFIG(ANDROID):CONFIG += mobility -CONFIG(ANDROID):MOBILITY = +#-------------------------------------------------------- +# +# Pro file for Android and Windows builds with Qt Creator +# +#-------------------------------------------------------- + +QT += core + +TEMPLATE = lib +TARGET = libiio + +CONFIG(MINGW32):LIBIIOSRC = "D:\softs\libiio" +CONFIG(MINGW64):LIBIIOSRC = "D:\softs\libiio" + +INCLUDEPATH += $$PWD/include +INCLUDEPATH += $$LIBIIOSRC + +CONFIG(MINGW32):INCLUDEPATH += "D:\softs\libusb-1.0.20\include" +CONFIG(MINGW64):INCLUDEPATH += "D:\softs\libusb-1.0.20\include" + +# LibXml2 Windows distribution from: +# http://xmlsoft.org/sources/win32/ +# http://xmlsoft.org/sources/win32/64bit/ + +CONFIG(MINGW32):INCLUDEPATH += "D:\softs\libxml2-2.7.8.win32\include" +CONFIG(MINGW64):INCLUDEPATH += "D:\softs\libxml2-2.9.3-win32-x86_64\include\libxml2" + +SOURCES = $$LIBIIOSRC/backend.c\ + $$LIBIIOSRC/buffer.c\ + $$LIBIIOSRC/channel.c\ + $$LIBIIOSRC/context.c\ + $$LIBIIOSRC/device.c\ + $$LIBIIOSRC/iiod-client.c\ +# $$LIBIIOSRC/local.c\ + $$LIBIIOSRC/lock.c\ +# $$LIBIIOSRC/network.c\ + $$LIBIIOSRC/scan.c\ +# $$LIBIIOSRC/serial.c\ + $$LIBIIOSRC/usb.c\ + $$LIBIIOSRC/utilities.c\ + $$LIBIIOSRC/xml.c + +HEADERS = $$LIBIIOSRC/debug.h\ + $$LIBIIOSRC/iio.h\ + $$LIBIIOSRC/iiod-client.h\ + $$LIBIIOSRC/iio-lock.h\ + $$LIBIIOSRC/iio-private.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 + +CONFIG(MINGW32):LIBS += -LD:\softs\libxml2-2.7.8.win32\bin -llibxml2 +CONFIG(MINGW64):LIBS += -LD:\softs\libxml2-2.9.3-win32-x86_64\bin -llibxml2-2 + +CONFIG(ANDROID):CONFIG += mobility +CONFIG(ANDROID):MOBILITY = diff --git a/plugins/samplesource/plutosdrinput/CMakeLists.txt b/plugins/samplesource/plutosdrinput/CMakeLists.txt index 2e1ffd391..21f3680fd 100644 --- a/plugins/samplesource/plutosdrinput/CMakeLists.txt +++ b/plugins/samplesource/plutosdrinput/CMakeLists.txt @@ -22,7 +22,7 @@ set(plutosdrinput_FORMS if (BUILD_DEBIAN) include_directories( - . + . ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}/devices ${LIBIIOSRC}