pkgsrc/ham/uhd/Makefile

66 lines
2.3 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.14 2015/12/13 11:54:06 mef Exp $
Update 3.8.5 to 3.9.0 --------------------- ## 003.009.000 * X300: Updated DAC ctrl, FPGA toolchain is now entirely Vivado, improved master clock controls, added ADC self-cal capability, prepared for revisions 7 and 8, fixed flow control issue which could cause device to hang when receiving too many overruns * B2XX: Auto clock rate setting, added PID/VID pairs to support all B2XX- and derivatives, added temperature sensor, improved DC offset and IQ imbalance correction, added AGC support, support for FPGPIO connector on Rev6+ boards, full clock range support, updated FX3 firmware (side-channel logging capabilities, updated tx voltage swing, better configurability), default tick rate now 16 MHz, added B200mini support * E3XX: Added temperature sensor, FPGA toolchain is now entirely Vivado, improved DC offset and IQ imbalance correction, added AGC support, improved FPGA capture interface robustness for RFIC, make frame sizes configurable, replaced GPS control code with gpsd interfacing capabilities * Octoclock: Fixed bootloader + ethernet capabilities * Compilers: Supported MSVC versions are now 2012, 2013, 2015 (dropped 2010 support), added MinGW capabilities * Documentation: Many minor fixes and updates, merged all the info from code.ettus.com * UHD: Added sid_t, CHDR-specific transports now get their own (un)packer codes, fixed a lot of compiler warnings, added filter API (currently available for AD9361 frontend), added soft-register API, replaced Cheetah with Mako, full Py3k compliance, updated images downloader tool (now is one tool for all devices), CMake minimum version is now 2.8, refactored general AD9361 peripheral management, refactored most core control management, added usb_error type (used by B2xx devices), better exception handling at runtime, added C wrapper API, new dependency: python-requests * C API: Added to UHD (wraps C++ calls in C) * multi_usrp: Added normalized gain setters/getters, IQ imbalance + DC offset correction API, filter API * Converters: Converter symbols now exported, better logging, removed ORC dependency, added u8 converters * Examples: Whitespace- and other cleanup, multi-channel fixes for some examples * Utils: Read more property tree types from the command line * Tools: kitchen sink updated, added mega_fft
2015-09-06 02:11:12 +02:00
DISTNAME= uhd-3.9.0
CATEGORIES= ham
2015-08-14 06:53:08 +02:00
MASTER_SITES= ${MASTER_SITE_GITHUB:=EttusResearch/}
# 3.9.1 -> 003_009_001
GITHUB_TAG= release_${PKGVERSION_NOREV:C/([0-9])\.([0-9])\.([0-9])/00\1_00\2_00\3/}
# 3.9.0 of previous commit was really 3.8.5, sorry, mef
PKGREVISION= 1
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://code.ettus.com/redmine/ettus/projects/uhd/wiki
COMMENT= USRP (Universal Software Radio Peripheral) Hardware Drivers
LICENSE= gnu-gpl-v2
BUILD_DEPENDS+= ${PYPKGPREFIX}-cheetah-[0-9]*:../../devel/py-cheetah
BUILD_DEPENDS+= ${PYPKGPREFIX}-docutils>=0.12:../../textproc/py-docutils
BUILD_DEPENDS+= ${PYPKGPREFIX}-mako-[0-9]*:../../devel/py-mako
2015-03-01 00:27:37 +01:00
CMAKE_ARGS+= -DRST2HTML_EXECUTABLE=${PREFIX}/bin/rst2html-${PYVERSSUFFIX}.py
(pkgsrc) - Drop two patches, seems included (upstream) - Update 3.7.2 to 3.8.5 Change Log for Releases ============================== ## 003.008.005 * E3xx: Added support for battery-based E3xx device (E312), get_freq() for network mode, fixed GPS time initialization bug * AD9361-based devices: Fixed frequency readback bug * B200: Fixed DCM issues, better loopback failure handling, fix erroneous warning for custom clock rates * X3x0: Better warnings for clock reate / ref freq * multi_usrp: Added define for GPIO capabilities (enables exposure in GNU Radio) * UHD: sc16->sc16 SSE converter * Manual: Multiple minor updates, FPGA manual improvements, * Build System: Fixed builds on some Windows platforms, removed stray prints ## 003.008.004 * B200: Fixed EEPROM writing bug, updated images for B200 Rev5/6 * E300: GPS antenna power defaults to staying on, GPS time used as default if available * UBX: PDF frequency fix on X300 * USRP2: Bugfix that allows latest UHD to work with USRP2 * Documentation: Many fixes for E300 section, added FPGA manual ## 003.008.003 * UBX: Fixed phase synchronization issues (Related changes: Change X300 daughterboard frequency, increase N210 FIFO depth) * Fixed many compiler warnings * B200: Fixed timing issues, fixed tick rate issue, stabilized operations at high clock rates * X300: Improved phase alignment across devices * CMake: Build fixes * E300: Flow control fix ## 003.008.002 * CMake: Introducing named versions for dev branches, enable static libs, * E300: Docs updates, compat number bump, VCTCXO updates, more status bits for ref locking, fixed serial number length fix, RSSI Sensor * B200: RSSI sensor * AD9361: Better handling of different interpolation rates in FIR, fix for gain value truncation, removed gain value offset * UBX: Added drivers * Manual/Docs: Numerous updates, minimum compiler versions now specified, * Converters: Multiple fixes for sc12 * Examples: Fixes to txrx_loopback_to_file * Path handling vastly improved, made more consistent * Minor UHD fixes ## 003.008.001 * B2x0: Fixed PLL settings, Fixed external ref selection, serialized streamer setup (thread-safety) * X3x0: Fixed flow control issue, improved DAC ctrl + init logic, Fixed I/Q alignment issue * Generation-3 devices: Fixed LED registers * UHD: Improved tuning logic for manual tunes * Tools: Multiple kitchen sink fixes, coloured output * Examples: Multiple bugfixes (multi-channel ops) * Docs/Manual: Multiple fixes, E310 panel images ## 003.008.000 * Added E310 support * B200/B210: Moved AD9361 controls from firmware to host * Added several tools: ZPU dissector, improved CHDR dissector, kitchen sink, B200/B210 USB debugging utility, latency measurement tool. * Reorganized firmware/ directory structure. Refactored some firmware. * Removed FPGA sources, is now in own repository (submoduled). * Cleaned up command line arguments for some tools * Added math namespace, plus a unified float comparison infrastructure * Fixed tuning-related bugs * Moved manual over to Doxygen, also several manual bug fixes and amendments * Added many missing virtual destructors (less build warnings) * Added support for NI-RIO 14.0 * X300 fixes: Not found over PCIe with no eth interfaces * CMake improvements: Now comes with own UHDConfig.cmake and example to build standalone UHD apps, build fixes on Apple, interoperability with GNU Radio * OctoClock fixes and improvements: Ethernet initialization, external ref detection, stability fixes, host driver (UHD can now talk to OctoClock) * Examples: Improved GPIO example, rx_samples_to_file * Bumped minimum Boost version to 1.46 ## 003.007.003 * Fixed examples * Removed compiler warnings * Fixed CBX LO settings (FRAC truncation) * Fixed build issues for out-of-tree tools for some distros * Fixed some logging strings (SBX, GPSDO) * Improved logging (speedups, removed unnecessary cycles) * Added output sync for DAC reference clocks on X300 * Multiple FPGA improvements, as well as upgrade of build env * Added support for B200 vs B210 discovery
2015-08-14 08:19:13 +02:00
CMAKE_ARGS+= -Wno-dev
2014-09-08 17:37:42 +02:00
USE_LANGUAGES= c c++
2014-09-08 12:02:02 +02:00
USE_TOOLS= cmake pkg-config
2014-09-08 17:37:42 +02:00
USE_CMAKE= yes
2015-08-14 06:53:08 +02:00
# extra pax_global_header exists, and to avoid that:
EXTRACT_USING= gtar
#EXTRACT_ELEMENTS= uhd-${GITHUB_TAG}
# Please note distribution has many stuff under uhd/, but build itself
# needs under host/ only. Those uhd/ stuff will be handled post-{patch,install}:
2015-08-14 06:53:08 +02:00
WRKSRC= ${WRKDIR}/uhd-${GITHUB_TAG}/host
# The files with their name uhd-xxxx, are moved down from uhd/xxxx for this process.
REPLACE_PYTHON= \
(pkgsrc) - Drop two patches, seems included (upstream) - Update 3.7.2 to 3.8.5 Change Log for Releases ============================== ## 003.008.005 * E3xx: Added support for battery-based E3xx device (E312), get_freq() for network mode, fixed GPS time initialization bug * AD9361-based devices: Fixed frequency readback bug * B200: Fixed DCM issues, better loopback failure handling, fix erroneous warning for custom clock rates * X3x0: Better warnings for clock reate / ref freq * multi_usrp: Added define for GPIO capabilities (enables exposure in GNU Radio) * UHD: sc16->sc16 SSE converter * Manual: Multiple minor updates, FPGA manual improvements, * Build System: Fixed builds on some Windows platforms, removed stray prints ## 003.008.004 * B200: Fixed EEPROM writing bug, updated images for B200 Rev5/6 * E300: GPS antenna power defaults to staying on, GPS time used as default if available * UBX: PDF frequency fix on X300 * USRP2: Bugfix that allows latest UHD to work with USRP2 * Documentation: Many fixes for E300 section, added FPGA manual ## 003.008.003 * UBX: Fixed phase synchronization issues (Related changes: Change X300 daughterboard frequency, increase N210 FIFO depth) * Fixed many compiler warnings * B200: Fixed timing issues, fixed tick rate issue, stabilized operations at high clock rates * X300: Improved phase alignment across devices * CMake: Build fixes * E300: Flow control fix ## 003.008.002 * CMake: Introducing named versions for dev branches, enable static libs, * E300: Docs updates, compat number bump, VCTCXO updates, more status bits for ref locking, fixed serial number length fix, RSSI Sensor * B200: RSSI sensor * AD9361: Better handling of different interpolation rates in FIR, fix for gain value truncation, removed gain value offset * UBX: Added drivers * Manual/Docs: Numerous updates, minimum compiler versions now specified, * Converters: Multiple fixes for sc12 * Examples: Fixes to txrx_loopback_to_file * Path handling vastly improved, made more consistent * Minor UHD fixes ## 003.008.001 * B2x0: Fixed PLL settings, Fixed external ref selection, serialized streamer setup (thread-safety) * X3x0: Fixed flow control issue, improved DAC ctrl + init logic, Fixed I/Q alignment issue * Generation-3 devices: Fixed LED registers * UHD: Improved tuning logic for manual tunes * Tools: Multiple kitchen sink fixes, coloured output * Examples: Multiple bugfixes (multi-channel ops) * Docs/Manual: Multiple fixes, E310 panel images ## 003.008.000 * Added E310 support * B200/B210: Moved AD9361 controls from firmware to host * Added several tools: ZPU dissector, improved CHDR dissector, kitchen sink, B200/B210 USB debugging utility, latency measurement tool. * Reorganized firmware/ directory structure. Refactored some firmware. * Removed FPGA sources, is now in own repository (submoduled). * Cleaned up command line arguments for some tools * Added math namespace, plus a unified float comparison infrastructure * Fixed tuning-related bugs * Moved manual over to Doxygen, also several manual bug fixes and amendments * Added many missing virtual destructors (less build warnings) * Added support for NI-RIO 14.0 * X300 fixes: Not found over PCIe with no eth interfaces * CMake improvements: Now comes with own UHDConfig.cmake and example to build standalone UHD apps, build fixes on Apple, interoperability with GNU Radio * OctoClock fixes and improvements: Ethernet initialization, external ref detection, stability fixes, host driver (UHD can now talk to OctoClock) * Examples: Improved GPIO example, rx_samples_to_file * Bumped minimum Boost version to 1.46 ## 003.007.003 * Fixed examples * Removed compiler warnings * Fixed CBX LO settings (FRAC truncation) * Fixed build issues for out-of-tree tools for some distros * Fixed some logging strings (SBX, GPSDO) * Improved logging (speedups, removed unnecessary cycles) * Added output sync for DAC reference clocks on X300 * Multiple FPGA improvements, as well as upgrade of build env * Added support for B200 vs B210 discovery
2015-08-14 08:19:13 +02:00
utils/latency/graph.py \
utils/latency/run_tests.py \
utils/uhd_images_downloader.py.in \
utils/usrp2_card_burner.py \
utils/usrp2_card_burner_gui.py \
utils/usrp_n2xx_net_burner.py \
utils/usrp_n2xx_net_burner_gui.py \
INSTALLATION_DIRS+= share/uhd
INSTALLATION_DIRS+= share/uhd/firmware
INSTALLATION_DIRS+= share/uhd/fpga
INSTALLATION_DIRS+= share/uhd/images
SUBST_CLASSES+= man
SUBST_MESSAGE.man= Convert share/man to man
SUBST_STAGE.man= pre-configure
SUBST_FILES.man= docs/CMakeLists.txt
SUBST_SED.man= -e '/UHD_INSTALL/s,$${PKG_MAN_DIR},${PREFIX}/${PKGMANDIR}/man1,'
# UHD_INSTALL(FILES ${gzfile} DESTINATION ${PKG_MAN_DIR} COMPONENT manpages)
# is it default ? and redundent ?
PLIST_SRC= ${PKGDIR}/PLIST
.include "options.mk"
.include "../../lang/python/application.mk"
.include "../../devel/boost-libs/buildlink3.mk"
.include "../../devel/libusb1/buildlink3.mk"
.include "../../devel/orc/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"