diff --git a/CMakeLists.txt b/CMakeLists.txt index b33fc109e..1c257acb6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -464,6 +464,7 @@ if (BUILD_DEBIAN) add_subdirectory(libairspy) add_subdirectory(libhackrf) add_subdirectory(librtlsdr) + add_subdirectory(libbladerf) endif (BUILD_DEBIAN) add_subdirectory(plugins) diff --git a/debian/changelog b/debian/changelog index 2b0e31eab..cfbabef79 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +sdrangel (2.2.1-1) unstable; urgency=medium + + * Baseband Tx support (phase 2) + * Code optimizations + + -- Edouard Griffiths, F4EXB Wed, 02 Nov 2016 14:15:15 +0100 + sdrangel (2.2.0-1) unstable; urgency=medium * Initial release as a Debian package diff --git a/debian/rules b/debian/rules index 8df0f0285..0c3bb9a7f 100755 --- a/debian/rules +++ b/debian/rules @@ -21,4 +21,5 @@ # dh_make generated override targets # This is example for Cmake (See https://bugs.debian.org/641051 ) override_dh_auto_configure: - dh_auto_configure -- -DCMAKE_INSTALL_PREFIX=/opt/sdrangel -DBUILD_TYPE=DEBIAN -DLIBCM256CCSRC=/z1/development/cm256cc -DLIBDSDCCSRC=/z1/development/dsdcc -DLIBAIRSPYSRC=/z1/development/libairspy -DLIBHACKRFSRC=/z1/development/hackrf/host -DLIBRTLSDRSRC=/z1/development/librtlsdr.f4exb -DLIBMBELIBSRC=/z1/development/mbelib -DLIBSERIALDVSRC=/z1/development/serialDV + dh_auto_configure -- -DCMAKE_INSTALL_PREFIX=/opt/sdrangel -DBUILD_TYPE=DEBIAN -DLIBCM256CCSRC=/z1/development/cm256cc -DLIBDSDCCSRC=/z1/development/dsdcc -DLIBAIRSPYSRC=/z1/development/libairspy -DLIBHACKRFSRC=/z1/development/hackrf/host -DLIBRTLSDRSRC=/z1/development/librtlsdr.f4exb -DLIBMBELIBSRC=/z1/development/mbelib -DLIBSERIALDVSRC=/z1/development/serialDV -DLIBBLADERFSRC=/z1/softs/bladeRF -DLIBBLADERFCOMMONSRC=/z1/softs/bladeRF/host/common -DLIBBLADERFLIBSRC=/z1/softs/bladeRF/host/libraries/libbladeRF + diff --git a/libbladerf/CMakeLists.txt b/libbladerf/CMakeLists.txt new file mode 100644 index 000000000..75075a2a4 --- /dev/null +++ b/libbladerf/CMakeLists.txt @@ -0,0 +1,106 @@ +project(bladerf) + +find_package(LibUSB) + +add_definitions(-DBLADERF_OS_LINUX) + +set(bladerf_SOURCES + ${LIBBLADERFLIBSRC}/src/async.c + ${LIBBLADERFLIBSRC}/src/bladerf_priv.c + ${LIBBLADERFLIBSRC}/src/config.c + ${LIBBLADERFLIBSRC}/src/device_identifier.c + src/file_ops.c + ${LIBBLADERFLIBSRC}/src/flash_fields.c + ${LIBBLADERFLIBSRC}/src/fx3_fw.c + ${LIBBLADERFLIBSRC}/src/gain.c + ${LIBBLADERFLIBSRC}/src/init_fini.c + ${LIBBLADERFLIBSRC}/src/sync.c + ${LIBBLADERFLIBSRC}/src/smb_clock.c + ${LIBBLADERFLIBSRC}/src/tuning.c + ${LIBBLADERFLIBSRC}/src/xb.c + ${LIBBLADERFLIBSRC}/src/bladerf.c + ${LIBBLADERFLIBSRC}/src/capabilities.c + ${LIBBLADERFLIBSRC}/src/dc_cal_table.c + ${LIBBLADERFLIBSRC}/src/devinfo.c + ${LIBBLADERFLIBSRC}/src/flash.c + ${LIBBLADERFLIBSRC}/src/fpga.c + ${LIBBLADERFLIBSRC}/src/fx3_fw_log.c + ${LIBBLADERFLIBSRC}/src/image.c + ${LIBBLADERFLIBSRC}/src/si5338.c + ${LIBBLADERFLIBSRC}/src/sync_worker.c + ${LIBBLADERFLIBSRC}/src/trigger.c + ${LIBBLADERFLIBSRC}/src/version_compat.c + ${LIBBLADERFLIBSRC}/src/backend/backend.c + ${LIBBLADERFLIBSRC}/src/backend/dummy.c + ${LIBBLADERFLIBSRC}/src/backend/usb/libusb.c + ${LIBBLADERFLIBSRC}/src/backend/usb/usb.c + ${LIBBLADERFLIBSRC}/src/backend/usb/nios_access.c + ${LIBBLADERFLIBSRC}/src/backend/usb/nios_legacy_access.c + ${LIBBLADERFSRC}/fpga_common/src/band_select.c + ${LIBBLADERFSRC}/fpga_common/src/lms.c + ${LIBBLADERFCOMMONSRC}/src/conversions.c + ${LIBBLADERFCOMMONSRC}/src/devcfg.c + ${LIBBLADERFCOMMONSRC}/src/sha256.c +) + +set(bladerf_HEADERS + ${LIBBLADERFLIBSRC}/src/async.h + ${LIBBLADERFLIBSRC}/src/capabilities.h + ${LIBBLADERFLIBSRC}/src/dc_cal_table.h + ${LIBBLADERFLIBSRC}/src/devinfo.h + ${LIBBLADERFLIBSRC}/src/flash.h + ${LIBBLADERFLIBSRC}/src/fpga.h + ${LIBBLADERFLIBSRC}/src/fx3_fw_log.h + ${LIBBLADERFLIBSRC}/src/metadata.h + ${LIBBLADERFLIBSRC}/src/sync.h + ${LIBBLADERFLIBSRC}/src/smb_clock.h + ${LIBBLADERFLIBSRC}/src/tuning.h + ${LIBBLADERFLIBSRC}/src/xb.h + ${LIBBLADERFLIBSRC}/src/bladerf_priv.h + ${LIBBLADERFLIBSRC}/src/config.h + ${LIBBLADERFLIBSRC}/src/device_identifier.h + ${LIBBLADERFLIBSRC}/src/file_ops.h + ${LIBBLADERFLIBSRC}/src/flash_fields.h + ${LIBBLADERFLIBSRC}/src/fx3_fw.h + ${LIBBLADERFLIBSRC}/src/gain.h + ${LIBBLADERFLIBSRC}/src/si5338.h + ${LIBBLADERFLIBSRC}/src/sync_worker.h + ${LIBBLADERFLIBSRC}/src/trigger.h + ${LIBBLADERFLIBSRC}/src/version_compat.h + ${LIBBLADERFLIBSRC}/src/backend/backend.h + ${LIBBLADERFLIBSRC}/src/backend/dummy.h + ${LIBBLADERFLIBSRC}/src/backend/usb/usb.h + ${LIBBLADERFLIBSRC}/src/backend/usb/nios_access.h + ${LIBBLADERFLIBSRC}/src/backend/usb/nios_legacy_access.h + ${LIBBLADERFSRC}/fpga_common/include/band_select.h + ${LIBBLADERFSRC}/fpga_common/include/lms.h + ${LIBBLADERFCOMMONSRC}/include/sha256.h + include/host_config.h + include/backend/backend_config.h + include/version.h +) + +include_directories( + . + ${CMAKE_CURRENT_BINARY_DIR} + ${LIBUSB_INCLUDE_DIR} + ${LIBBLADERFLIBSRC}/include + ${LIBBLADERFLIBSRC}/src + ${LIBBLADERFSRC}/firmware_common + ${LIBBLADERFSRC}/fpga_common/include + ${LIBBLADERFCOMMONSRC}/include + ${LIBBLADERFCOMMONSRC}/include/windows + ./include +) + +add_definitions(-DQT_SHARED) + +add_library(bladerf SHARED + ${bladerf_SOURCES} +) + +target_link_libraries(bladerf + ${LIBUSB_LIBRARIES} +) + +install(TARGETS bladerf DESTINATION lib) diff --git a/libbladerf/include/host_config.h b/libbladerf/include/host_config.h index cde9cf819..d4284a83a 100644 --- a/libbladerf/include/host_config.h +++ b/libbladerf/include/host_config.h @@ -27,11 +27,11 @@ #ifndef HOST_CONFIG_H__ #define HOST_CONFIG_H__ -#define BLADERF_OS_LINUX 0 -#define BLADERF_OS_FREEBSD 0 -#define BLADERF_OS_OSX 0 -#define BLADERF_OS_WINDOWS 1 -#define BLADERF_BIG_ENDIAN 0 +//#define BLADERF_OS_LINUX 0 +//#define BLADERF_OS_FREEBSD 0 +//#define BLADERF_OS_OSX 0 +//#define BLADERF_OS_WINDOWS 1 +//#define BLADERF_BIG_ENDIAN 0 #if !(BLADERF_OS_LINUX || BLADERF_OS_OSX || BLADERF_OS_WINDOWS || BLADERF_OS_FREEBSD) # error "Build not configured for any supported operating systems" diff --git a/libbladerf/libbladerf.pro b/libbladerf/libbladerf.pro index d02420569..60a8b179c 100644 --- a/libbladerf/libbladerf.pro +++ b/libbladerf/libbladerf.pro @@ -9,6 +9,8 @@ QT += core TEMPLATE = lib TARGET = libbladerf +DEFINES += BLADERF_OS_WINDOWS=1 + CONFIG(MINGW32):LIBBLADERFSRC = "D:\softs\bladeRF" CONFIG(MINGW32):LIBBLADERFCOMMONSRC = "D:\softs\bladeRF\host\common" CONFIG(MINGW32):LIBBLADERFLIBSRC = "D:\softs\bladeRF\host\libraries\libbladeRF" diff --git a/plugins/samplesource/CMakeLists.txt b/plugins/samplesource/CMakeLists.txt index 22ac63092..e3bc889b1 100644 --- a/plugins/samplesource/CMakeLists.txt +++ b/plugins/samplesource/CMakeLists.txt @@ -57,6 +57,7 @@ if (BUILD_DEBIAN) add_subdirectory(airspy) add_subdirectory(hackrf) add_subdirectory(rtlsdr) + add_subdirectory(bladerf) endif (BUILD_DEBIAN) diff --git a/plugins/samplesource/bladerf/CMakeLists.txt b/plugins/samplesource/bladerf/CMakeLists.txt index 1f9791083..8e9cf2e6e 100644 --- a/plugins/samplesource/bladerf/CMakeLists.txt +++ b/plugins/samplesource/bladerf/CMakeLists.txt @@ -20,11 +20,20 @@ set(bladerf_FORMS bladerfgui.ui ) +if (BUILD_DEBIAN) +include_directories( + . + ${CMAKE_CURRENT_BINARY_DIR} + ${LIBBLADERFLIBSRC}/include + ${LIBBLADERFLIBSRC}/src +) +else (BUILD_DEBIAN) include_directories( . ${CMAKE_CURRENT_BINARY_DIR} ${LIBBLADERF_INCLUDE_DIR} ) +endif (BUILD_DEBIAN) #include(${QT_USE_FILE}) add_definitions(${QT_DEFINITIONS}) @@ -40,11 +49,19 @@ add_library(inputbladerf SHARED ${bladerf_FORMS_HEADERS} ) +if (BUILD_DEBIAN) +target_link_libraries(inputbladerf + ${QT_LIBRARIES} + bladerf + sdrbase +) +else (BUILD_DEBIAN) target_link_libraries(inputbladerf ${QT_LIBRARIES} ${LIBBLADERF_LIBRARIES} sdrbase ) +endif (BUILD_DEBIAN) qt5_use_modules(inputbladerf Core Widgets)