package/libusb: needs gcc >= 4.9
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Sun, 13 Dec 2020 15:56:36 +0000 (16:56 +0100)
committerYann E. MORIN <yann.morin.1998@free.fr>
Sun, 13 Dec 2020 21:01:59 +0000 (22:01 +0100)
libusb depends on gcc >= 4.9 because of _Thread_local since version
1.0.24 and
https://github.com/libusb/libusb/commit/9a1bc8cafb904c20a869c74ad6d657686a1c4bb1

Fixes:
 - http://autobuild.buildroot.org/results/7b7f4b31095f8a7eecb347b574391003a2def8bc

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
50 files changed:
package/acsccid/Config.in
package/apcupsd/Config.in
package/avrdude/Config.in
package/cc-tool/Config.in
package/ccid/Config.in
package/dfu-util/Config.in
package/dfu-util/Config.in.host
package/dump1090/Config.in
package/gr-osmosdr/Config.in
package/hackrf/Config.in
package/hidapi/Config.in
package/hplip/Config.in
package/imx-usb-loader/Config.in
package/imx-usb-loader/Config.in.host
package/kodi/Config.in
package/libftdi/Config.in
package/libftdi1/Config.in
package/libgphoto2/Config.in
package/libhid/Config.in
package/libiio/Config.in
package/libiqrf/Config.in
package/libnfc/Config.in
package/libphidget/Config.in
package/librtlsdr/Config.in
package/libusb/Config.in
package/mfgtools/Config.in.host
package/mxsldr/Config.in.host
package/omxplayer/Config.in
package/openfpgaloader/Config.in
package/openjdk/Config.in
package/openocd/Config.in
package/openocd/Config.in.host
package/pcsc-lite/Config.in
package/phidgetwebservice/Config.in
package/python-libusb1/Config.in
package/python-nfc/Config.in
package/python-pylibftdi/Config.in
package/python-pyusb/Config.in
package/qemu/Config.in.host
package/raspberrypi-usbboot/Config.in.host
package/sispmctl/Config.in
package/sunxi-tools/Config.in
package/sunxi-tools/Config.in.host
package/tegrarcm/Config.in.host
package/uhd/Config.in
package/uhubctl/Config.in
package/upower/Config.in
package/usb_modeswitch/Config.in
package/usb_modeswitch_data/Config.in
package/usbredir/Config.in

index 74dd6de295ad963e6e1649755a2092e738c895f0..a926be6e163e03aa2c9bcec1b102f3b5cc2e50ad 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_ACSCCID
        bool "acsccid"
        depends on BR2_TOOLCHAIN_HAS_THREADS # pcsc-lite, libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_USE_MMU # pcsc-lite
        depends on !BR2_STATIC_LIBS # pcsc-lite
        select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
@@ -14,7 +15,7 @@ config BR2_PACKAGE_ACSCCID
 
          http://acsccid.sourceforge.net/
 
-comment "acsccid needs a toolchain w/ threads, dynamic library"
+comment "acsccid needs a toolchain w/ threads, dynamic library, gcc >= 4.9"
        depends on BR2_USE_MMU
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
-               BR2_STATIC_LIBS
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 4bc523eed49753c42ecc1d1e3f7e24613b894cfc..f87f6a8b55864bf56baa9b21ae94cb13485cb595 100644 (file)
@@ -28,14 +28,16 @@ config BR2_PACKAGE_APCUPSD_MODBUS
 config BR2_PACKAGE_APCUPSD_MODBUS_USB
        bool "modbus usb"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        select BR2_PACKAGE_APCUPSD_MODBUS
        help
          Compile MODBUS/USB driver code
 
-comment "modbus usb support needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "modbus usb support needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 config BR2_PACKAGE_APCUPSD_NET
        bool "net"
index a5680b002826d3fd501f8b5bea06b33bc9328d3f..fba4253ad86d05a44e33ad1c0ad067672e18bbfd 100644 (file)
@@ -4,6 +4,7 @@ config BR2_PACKAGE_AVRDUDE
        depends on BR2_USE_WCHAR # elfutils
        depends on !BR2_STATIC_LIBS # elfutils
        depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_ELFUTILS
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
@@ -14,6 +15,7 @@ config BR2_PACKAGE_AVRDUDE
 
          https://github.com/kcuzner/avrdude
 
-comment "avrdude needs a uClibc or glibc toolchain w/ threads, wchar, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS \
+comment "avrdude needs a uClibc or glibc toolchain w/ threads, wchar, dynamic library, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR \
+               || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \
                || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
index 033128843da1a7230f527cfb35f7dbf6b9ccc4fd..2661592d7f4027b9d75d0016c7ba5e712d7116cd 100644 (file)
@@ -3,6 +3,7 @@ config BR2_PACKAGE_CC_TOOL
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_TOOLCHAIN_HAS_THREADS
        depends on BR2_USE_WCHAR # boost-filesystem
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_BOOST
        select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
@@ -16,5 +17,7 @@ config BR2_PACKAGE_CC_TOOL
 
          https://github.com/dashesy/cc-tool/
 
-comment "cc-tool needs a toolchain w/ C++, threads, wchar"
-       depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
+comment "cc-tool needs a toolchain w/ C++, threads, wchar, gcc >= 4.9 "
+       depends on !BR2_INSTALL_LIBSTDCPP || \
+               !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 599bcc042a1867390e3bef97e5a780f6e140847b..aae5a7181c1a36b426d7e2a93ecaf87e8ada95d9 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_CCID
        bool "ccid"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_USE_MMU # pcsc-lite
        depends on !BR2_STATIC_LIBS # pcsc-lite
        select BR2_PACKAGE_PCSC_LITE
@@ -10,6 +11,7 @@ config BR2_PACKAGE_CCID
 
          https://ccid.apdu.fr/
 
-comment "ccid needs a toolchain w/ threads, dynamic library"
+comment "ccid needs a toolchain w/ threads, dynamic library, gcc >= 4.9"
        depends on BR2_USE_MMU
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 201c8a7cfd1f818f0942ea5b79bf7b3cc711e4a0..71c1a1687c502ae5dc74abbffbecc98b1d12edbd 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_DFU_UTIL
        bool "dfu-util"
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Dfu-util is the host side implementation of the DFU 1.0
@@ -9,5 +10,6 @@ config BR2_PACKAGE_DFU_UTIL
 
          http://dfu-util.sourceforge.net/
 
-comment "dfu-util needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "dfu-util needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index ea47a36c7b16d294f50e7e4b7f25a2f344f83c03..1bf9275f97ce1f3a944ae67cbc0d7ac591705339 100644 (file)
@@ -1,8 +1,12 @@
 config BR2_PACKAGE_HOST_DFU_UTIL
        bool "host dfu-util"
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          Dfu-util is the host side implementation of the DFU 1.0
          specification of the USB forum. DFU is intended to download
          and upload firmware to devices connected over USB.
 
          http://dfu-util.sourceforge.net/
+
+comment "host dfu-util needs a toolchain w/ host gcc >= 4.9"
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index c796faef91f5416316ce00ca59cb82f7e90b30b4..8f17929235c954195a9c6c1c4edca5200acff634 100644 (file)
@@ -1,11 +1,13 @@
 config BR2_PACKAGE_DUMP1090
        bool "dump1090"
        depends on BR2_TOOLCHAIN_HAS_THREADS # librtlsdr
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # librtlsdr -> libusb
        select BR2_PACKAGE_LIBRTLSDR
        help
          Dump1090 is a simple Mode S decoder for RTLSDR devices
 
          https://github.com/MalcolmRobb/dump1090
 
-comment "dump1090 needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "dump1090 needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index a38082af9863830d3b576e7422f19532e16bfa8b..04fa10be803f27795926a198c2c3a8e862aaa205 100644 (file)
@@ -25,10 +25,14 @@ config BR2_PACKAGE_GR_OSMOSDR_IQFILE
 
 config BR2_PACKAGE_GR_OSMOSDR_RTLSDR
        bool "Osmocom RTLSDR support"
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # librtlsdr -> libusb
        select BR2_PACKAGE_LIBRTLSDR
        help
          Enable Osmocom RTLSDR support
 
+comment "Osmocom RTLSDR support needs a toolchain w/ gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 config BR2_PACKAGE_GR_OSMOSDR_RTLSDR_TCP
        bool "RTLSDR TCP Client support"
        help
index b86790f2b072753c561f7c0f0b9499d161ee5d48..05d01adc963468481908ff5f4a79065106bdbd03 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_HACKRF
        bool "hackrf"
        depends on !BR2_STATIC_LIBS
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_FFTW
        select BR2_PACKAGE_FFTW_SINGLE
        select BR2_PACKAGE_LIBUSB
@@ -10,5 +11,6 @@ config BR2_PACKAGE_HACKRF
 
          https://github.com/mossmann/hackrf/tree/master/host
 
-comment "hackrf needs a toolchain w/ threads, dynamic library"
-       depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
+comment "hackrf needs a toolchain w/ threads, dynamic library, gcc >= 4.9"
+       depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index d7d8cd53d7627aa7ffff2053089d25710e79ffa5..061c7883f7c4a91bd6ca522febe3a99f568fbc9e 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_HIDAPI
        bool "hidapi"
        depends on BR2_PACKAGE_HAS_UDEV
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBGUDEV
        select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
@@ -14,5 +15,7 @@ config BR2_PACKAGE_HIDAPI
 
          http://github.com/libusb/hidapi/
 
-comment "hidapi needs udev /dev management and a toolchain w/ NPTL threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_HAS_UDEV
+comment "hidapi needs udev /dev management and a toolchain w/ NPTL, threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
+               !BR2_PACKAGE_HAS_UDEV || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index f4e0fe7530c5acae6f3804c9a6543c16a981122d..bab29303e536b71c52db46e49c318fbb1585d4df 100644 (file)
@@ -3,6 +3,7 @@ config BR2_PACKAGE_HPLIP
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_PACKAGE_CUPS
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on !BR2_STATIC_LIBS # libdl
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_JPEG
@@ -17,7 +18,7 @@ config BR2_PACKAGE_HPLIP
 
          http://hplipopensource.com/
 
-comment "hplip needs a toolchain w/ C++, threads, dynamic library"
+comment "hplip needs a toolchain w/ C++, threads, dynamic library, gcc >= 4.9"
        depends on BR2_PACKAGE_CUPS
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
-               BR2_STATIC_LIBS
+               BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 1cc0dd8c25e79582528a790ab047be5049c7e732..9a152e0918ba40d01c6857fde22e43558275ff60 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_IMX_USB_LOADER
        bool "imx-usb-loader"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          This package contains tools to download and execute code
@@ -9,5 +10,6 @@ config BR2_PACKAGE_IMX_USB_LOADER
 
          https://github.com/boundarydevices/imx_usb_loader
 
-comment "imx-usb-loader needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "imx-usb-loader needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 04bd4cc018fb396affacf72206b26c8f530253a8..78c5edea3f54761217425691ff0a99ce97fe92d6 100644 (file)
@@ -1,9 +1,14 @@
 config BR2_PACKAGE_HOST_IMX_USB_LOADER
        bool "host imx-usb-loader"
        depends on BR2_arm || BR2_aarch64
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          This package contains tools to download and execute code
          on Freescale i.MX5x/6x/7x/8x and Vybrid SoCs through the
          Serial Download Protocol.
 
          https://github.com/boundarydevices/imx_usb_loader
+
+comment "host imx-usb-loader needs a toolchain w/ host gcc >= 4.9"
+       depends on BR2_arm || BR2_aarch64
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index 31ad8630d6d1043fb68be0dcbb2787bcd92604cb..8453ba0e076411ecd893e8474c50cd7d9aaef454 100644 (file)
@@ -258,11 +258,15 @@ config BR2_PACKAGE_KODI_LIBUSB
        # https://github.com/xbmc/xbmc/blob/Jarvis/configure.ac#L1554
        # "if libudev is available, we don't need libusb"
        depends on !BR2_PACKAGE_HAS_UDEV
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
          Enable libusb support.
 
+comment "usb support needs a toolchain w/ gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 config BR2_PACKAGE_KODI_LIBVA
        bool "va"
        depends on \
index 23dae1be1f8d134526a9c65e8f01f1ccf7b74176..fdeac28a645d814532ce790d67049f135288a0a2 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBFTDI
        bool "libftdi"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -23,5 +24,6 @@ comment "libftdi C++ bindings need a toolchain w/ wchar, C++"
 
 endif # BR2_PACKAGE_LIBFTDI
 
-comment "libftdi needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "libftdi needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index d47321345bb2352bd3bca2a1795ce1db1e26ffa2..2d3257356387947395eceb61c6317efe5473d74e 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBFTDI1
        bool "libftdi1"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Userspace access to FTDI USB interface chips (version 1.x)
@@ -33,5 +34,6 @@ config BR2_PACKAGE_LIBFTDI1_FDTI_EEPROM
 
 endif # BR2_PACKAGE_LIBFTDI1
 
-comment "libftdi1 needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "libftdi1 needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index fc60dd68a8323f558b9cb046b912fa2045a76475..184ca206f10625bdcdd8582bd5c6c1ac7b4cb1f2 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBGPHOTO2
        bool "libgphoto2"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBTOOL
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBXML2
@@ -10,5 +11,6 @@ config BR2_PACKAGE_LIBGPHOTO2
 
          http://gphoto.org/proj/libgphoto2/
 
-comment "libgphoto needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "libgphoto needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index ec66308061f96d8339ab93d921c8f01bca641fe6..abf338fdc7784add7989a9ccec078d380530044a 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBHID
        bool "libhid"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -8,5 +9,6 @@ config BR2_PACKAGE_LIBHID
 
          https://directory.fsf.org/wiki/Libhid
 
-comment "libhid needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "libhid needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index dcc7c79d1a34e35a86c2b5cede8abbffb90c8b07..0d89331c89f6dc75996690d54e657d75a01ae3f7 100644 (file)
@@ -33,13 +33,15 @@ config BR2_PACKAGE_LIBIIO_USB_BACKEND
        bool "USB backend"
        default y
        depends on BR2_TOOLCHAIN_HAS_THREADS # from libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBIIO_XML_BACKEND
        select BR2_PACKAGE_LIBUSB
        help
          Enable the USB backend of the library.
 
-comment "The USB backend needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "The USB backend needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 config BR2_PACKAGE_LIBIIO_SERIAL_BACKEND
        bool "Serial backend"
index 03555e063a857e8a7885c2572bd78faa4463f753..d86a7fd0ecb075b284d1c87bf8f4bb1910933740 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBIQRF
        bool "libiqrf"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          This library implement specific protocol
@@ -10,5 +11,6 @@ config BR2_PACKAGE_LIBIQRF
 
          https://github.com/nandra/libiqrf
 
-comment "libiqrf needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "libiqrf needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 14084dc889b673f610382753abda09610c3f25f9..073b8f37f56c96b5afae7a04d7703749f94e8846 100644 (file)
@@ -24,13 +24,15 @@ comment "acr122_pcsc driver needs a toolchain w/ threads, dynamic library"
 config BR2_PACKAGE_LIBNFC_ACR122_USB
        bool "acr122_usb driver"
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
          support for acr122_usb driver
 
-comment "acr122_usb driver needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "acr122_usb driver needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 config BR2_PACKAGE_LIBNFC_ACR122S
        bool "acr122s driver"
index 61e915481d0cce782fca779190c504fc3012256f..ab1e3e31b127948876f837ab90421c6a14e34968 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBPHIDGET
        bool "libphidget"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on !BR2_STATIC_LIBS
        select BR2_PACKAGE_LIBUSB
        help
@@ -23,6 +24,6 @@ config BR2_PACKAGE_LIBPHIDGET
 
          http://phidgets.com/
 
-comment "libphidget needs a toolchain w/ threads, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
-       depends on BR2_STATIC_LIBS
+comment "libphidget needs a toolchain w/ threads, dynamic library, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 238659a78246aa22e8a9743ced3f7643c7048177..2f22c5b1c701a2fb54802ea8adbe8ba1ef269bff 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBRTLSDR
        bool "librtlsdr"
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Library and command line programs for accessing
@@ -28,5 +29,6 @@ config BR2_PACKAGE_LIBRTLSDR_ZEROCOPY
 
 endif
 
-comment "librtlsdr needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "librtlsdr needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index d31a717fdfddeeac2d357f18c17f2ab500d36d66..5a04ac128b445cee165cda22956dd308cff26553 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LIBUSB
        bool "libusb"
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # _Thread_local
        help
          Userspace library for accessing USB devices
 
@@ -13,5 +14,6 @@ config BR2_PACKAGE_LIBUSB_EXAMPLES
 
 endif
 
-comment "libusb needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "libusb needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 6f2f3a32686da7153a043e77697021132204446f..2b506c8f67835d9a5f001d40c827753fc1c3e0b6 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_HOST_MFGTOOLS
        bool "host mfgtools"
        depends on BR2_arm
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          This package contains the Freescale manufacturing tool.
          It is designed to program firmware to i.MX boards during
@@ -8,3 +9,7 @@ config BR2_PACKAGE_HOST_MFGTOOLS
          Freescale UTP protocol.
 
          https://github.com/codeauroraforum/mfgtools
+
+comment "host mfgtools needs a toolchain w/ host gcc >= 4.9"
+       depends on BR2_arm
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index 0a02877c8b81c6f5e9f29724a925be520bb5893b..7c49f02012d2d86f12af8150a3997de5c09898e3 100644 (file)
@@ -1,9 +1,14 @@
 config BR2_PACKAGE_HOST_MXSLDR
        bool "host mxsldr"
        depends on BR2_arm || BR2_armeb
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          This package contains tools to download and execute code on
          Freescale i.MX23 and i.MX28 SoC's through the Serial
          Download Protocol.
 
          https://gitlab.denx.de/denx/mxsldr
+
+comment "host mxsldr needs a toolchain w/ host gcc >= 4.9"
+       depends on BR2_arm || BR2_armeb
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index 80e48d09c864199f277af16ca9dee46b37dab616..d2e4b5ace089248e799a231de2d6c7690f27057c 100644 (file)
@@ -5,6 +5,7 @@ config BR2_PACKAGE_OMXPLAYER
        depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS # ffmpeg
        depends on BR2_INSTALL_LIBSTDCPP # boost
        depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib, boost, libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_USE_WCHAR # boost
        depends on BR2_PACKAGE_RPI_USERLAND
        select BR2_PACKAGE_ALSA_LIB
@@ -25,10 +26,11 @@ config BR2_PACKAGE_OMXPLAYER
 
          https://github.com/popcornmix/omxplayer
 
-comment "omxplayer needs rpi-userland and a toolchain w/ C++, threads, wchar, dynamic library"
+comment "omxplayer needs rpi-userland and a toolchain w/ C++, threads, wchar, dynamic library, gcc >= 4.9"
        depends on BR2_arm
        depends on BR2_USE_MMU
        depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on !BR2_PACKAGE_RPI_USERLAND
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \
-               || !BR2_USE_WCHAR || BR2_STATIC_LIBS
+               || !BR2_USE_WCHAR || BR2_STATIC_LIBS \
+               || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 5bf496627b73794c076762ebf1813a83e5d35b30..f1b34ef5dda9a6842d859709c32992fbc975b87d 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_OPENFPGALOADER
        bool "openfpgaloader"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi1
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libftdi1 -> libusb
        depends on BR2_INSTALL_LIBSTDCPP
        select BR2_PACKAGE_LIBFTDI1
        help
@@ -8,5 +9,7 @@ config BR2_PACKAGE_OPENFPGALOADER
 
          https://github.com/trabucayre/openFPGALoader/
 
-comment "openfpgaloader needs a toolchain w/ threads, C++"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP
+comment "openfpgaloader needs a toolchain w/ threads, C++, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_INSTALL_LIBSTDCPP || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 3b35c725eeac892710e619f28ece78ac656f38d6..1b60d80dc20841c626320355795fcb0f58826d2d 100644 (file)
@@ -20,6 +20,7 @@ config BR2_PACKAGE_OPENJDK
        depends on !BR2_STATIC_LIBS # glibc
        depends on BR2_INSTALL_LIBSTDCPP # cups
        depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib, cups, libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_TOOLCHAIN_USES_GLIBC
        depends on BR2_USE_MMU # cups
        depends on BR2_PACKAGE_XORG7
@@ -151,12 +152,14 @@ comment "openjdk needs X.Org"
        depends on BR2_USE_MMU
        depends on !BR2_PACKAGE_XORG7
 
-comment "openjdk needs glibc, and a toolchain w/ wchar, dynamic library, threads, C++"
+comment "openjdk needs glibc, and a toolchain w/ wchar, dynamic library, threads, C++, gcc >= 4.9"
        depends on BR2_USE_MMU
        depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
        depends on BR2_PACKAGE_HOST_OPENJDK_BIN_ARCH_SUPPORTS
        depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP || \
-               !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_USES_GLIBC
+               !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_USES_GLIBC || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 comment "openjdk does not support soft float configurations"
        depends on BR2_PACKAGE_OPENJDK_ARCH_SUPPORTS
index 448872061b5b73b04f8fe423a94e0227711e5256..f2e79f29fe10698d7e09a03b592f64cc468406ec 100644 (file)
@@ -13,6 +13,7 @@ comment "Adapters"
 config BR2_PACKAGE_OPENOCD_CMSIS_DAP
        bool "CMSIS-DAP compliant debuggers"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_PACKAGE_HAS_UDEV # hidapi
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # hidapi
        select BR2_PACKAGE_LIBUSB
@@ -24,6 +25,7 @@ config BR2_PACKAGE_OPENOCD_CMSIS_DAP
 config BR2_PACKAGE_OPENOCD_FTDI
        bool "MPSSE mode of FTDI based devices"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the MPSSE mode of FTDI
@@ -32,6 +34,7 @@ config BR2_PACKAGE_OPENOCD_FTDI
 config BR2_PACKAGE_OPENOCD_STLINK
        bool "ST-Link JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the ST-Link JTAG
@@ -40,6 +43,7 @@ config BR2_PACKAGE_OPENOCD_STLINK
 config BR2_PACKAGE_OPENOCD_TI_ICDI
        bool "TI ICDI JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the TI ICDI JTAG
@@ -48,6 +52,7 @@ config BR2_PACKAGE_OPENOCD_TI_ICDI
 config BR2_PACKAGE_OPENOCD_ULINK
        bool "Keil ULINK JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the Keil ULINK JTAG
@@ -56,6 +61,7 @@ config BR2_PACKAGE_OPENOCD_ULINK
 config BR2_PACKAGE_OPENOCD_UBLASTER2
        bool "Altera USB-Blaster II Compatible"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the Altera USB-Blaster
@@ -64,6 +70,7 @@ config BR2_PACKAGE_OPENOCD_UBLASTER2
 config BR2_PACKAGE_OPENOCD_JLINK
        bool "Segger J-Link JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Segger J-Link JTAG Programmer and clone such as Atmel
@@ -72,6 +79,7 @@ config BR2_PACKAGE_OPENOCD_JLINK
 config BR2_PACKAGE_OPENOCD_OSDBM
        bool "OSDBM JTAG (only) Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the OSBDM (JTAG only)
@@ -80,6 +88,7 @@ config BR2_PACKAGE_OPENOCD_OSDBM
 config BR2_PACKAGE_OPENOCD_OPENDOUS
        bool "eStick/opendous JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the eStick/opendous JTAG
@@ -89,6 +98,7 @@ config BR2_PACKAGE_OPENOCD_AICE
        bool "Andes JTAG Programmer"
        depends on BR2_USE_MMU # use fork()
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Enable building support for the Andes JTAG
@@ -97,6 +107,7 @@ config BR2_PACKAGE_OPENOCD_AICE
 config BR2_PACKAGE_OPENOCD_VSLLINK
        bool "Versaloon-Link JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb-compat -> libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -106,6 +117,7 @@ config BR2_PACKAGE_OPENOCD_VSLLINK
 config BR2_PACKAGE_OPENOCD_USBPROG
        bool "USBProg JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb-compat -> libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -115,6 +127,7 @@ config BR2_PACKAGE_OPENOCD_USBPROG
 config BR2_PACKAGE_OPENOCD_RLINK
        bool "Raisonance RLink JTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb-compat -> libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -124,6 +137,7 @@ config BR2_PACKAGE_OPENOCD_RLINK
 config BR2_PACKAGE_OPENOCD_ARMEW
        bool "Olimex ARM-JTAG-EW Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb-compat -> libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -143,6 +157,7 @@ config BR2_PACKAGE_OPENOCD_VPI
 config BR2_PACKAGE_OPENOCD_UBLASTER
        bool "Altera USB-Blaster"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libftdi -> libusb
        select BR2_PACKAGE_LIBFTDI1
        help
          Enable building support for the Altera USB-Blaster
@@ -183,6 +198,7 @@ config BR2_PACKAGE_OPENOCD_GW16012
 config BR2_PACKAGE_OPENOCD_PRESTO
        bool "ASIX Presto Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libftdi -> libusb
        select BR2_PACKAGE_LIBFTDI1
        help
          Enable building support for ASIX Presto Programmer
@@ -191,6 +207,7 @@ config BR2_PACKAGE_OPENOCD_PRESTO
 config BR2_PACKAGE_OPENOCD_OPENJTAG
        bool "OpenJTAG Programmer"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libftdi -> libusb
        select BR2_PACKAGE_LIBFTDI1
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT # needs usb.h
@@ -209,10 +226,11 @@ config BR2_PACKAGE_OPENOCD_SYSFS
          Enable building support for programming driven via
          sysfs gpios.
 
-# Many adapters need libusb or libusb-compat, which require threads,
-# but we don't want to duplicate this comment for all adapters that
-# select libusb or libusb-compat.
-comment "many openocd adapters needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+# Many adapters need libusb or libusb-compat, which require threads and
+# gcc >= 4.9 but we don't want to duplicate this comment for all
+# adapters that select libusb or libusb-compat.
+comment "many openocd adapters needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 endif # BR2_PACKAGE_OPENOCD
index e1d0e633087dc95b985574d39e6b8d3a40e99d98..8ff37379a1046b00cbef0358044cf653dab4020b 100644 (file)
@@ -1,6 +1,10 @@
 config BR2_PACKAGE_HOST_OPENOCD
        bool "host openocd"
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          OpenOCD - Open On-Chip Debugger
 
          http://openocd.org/
+
+comment "host openocd needs a toolchain w/ host gcc >= 4.9"
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index 3250a463b42bab618dcb9dd64722f167183410a8..1b4d0f7d18e794b62b3c0ebcd48f22017ed1d236 100644 (file)
@@ -13,10 +13,14 @@ if BR2_PACKAGE_PCSC_LITE
 config BR2_PACKAGE_PCSC_LITE_FORCE_LIBUSB
        bool "use libusb"
        depends on !BR2_PACKAGE_HAS_UDEV
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Select Y if you want to support usb smart card readers.
 
+comment "libusb support needs a toolchain w/ gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 config BR2_PACKAGE_PCSC_LITE_DEBUGATR
        bool "enable ATR debug messages"
        help
index 50018e0af99943b1db6cba315163f6db68c1be6b..b052f180f02e172d8a647b36162a663aec5eb4d7 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_PHIDGETWEBSERVICE
        bool "phidgetwebservice"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb, libphidget
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libphidget -> libusb
        depends on !BR2_STATIC_LIBS # libphidget
        select BR2_PACKAGE_LIBPHIDGET
        help
@@ -17,6 +18,6 @@ config BR2_PACKAGE_PHIDGETWEBSERVICE
 
          http://phidgets.com/
 
-comment "phidgetwebservice needs a toolchain w/ threads, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
-       depends on BR2_STATIC_LIBS
+comment "phidgetwebservice needs a toolchain w/ threads, dynamic library, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 1c4a72edaea1aa70de85186715488df8d8a9622c..e464a0394db5d368da5efcc75618b160d2a180b2 100644 (file)
@@ -1,11 +1,13 @@
 config BR2_PACKAGE_PYTHON_LIBUSB1
        bool "python-libusb1"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Pure-python wrapper for libusb-1.0.
 
          http://github.com/vpelletier/python-libusb1
 
-comment "python-libusb1 needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "python-libusb1 needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 9a8102c23cf0b88e82c6a2cd2459f5067c15d013..7008723f607a65e28e8590b1f5587eabf8c06dfe 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_PYTHON_NFC
        bool "python-nfc"
        depends on BR2_PACKAGE_PYTHON
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        select BR2_PACKAGE_LIBUSB_COMPAT
        help
@@ -9,6 +10,7 @@ config BR2_PACKAGE_PYTHON_NFC
 
          https://launchpad.net/nfcpy
 
-comment "python-nfc needs a toolchain w/ threads"
+comment "python-nfc needs a toolchain w/ threads, gcc >= 4.9"
        depends on BR2_PACKAGE_PYTHON
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index d340974656360fa55ef344ef28e6394466a23cf0..ce815a55fd914e94003ea68e18e656f640a8fe3a 100644 (file)
@@ -1,11 +1,13 @@
 config BR2_PACKAGE_PYTHON_PYLIBFTDI
        bool "python-pylibftdi"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libftdi -> libusb
        select BR2_PACKAGE_LIBFTDI
        help
          This package contains the python language binding libftdi.
 
          https://pypi.python.org/pypi/pylibftdi
 
-comment "python-pylibftdi needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "python-pylibftdi needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 1f97979c713e6e61978d07ee2ee4f2a4b1df77b3..bba3480a1be5d827a57c33b64e6987e75d30fb24 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_PYTHON_PYUSB
        bool "python-pyusb"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          The PyUSB module provides easy access to the Universal
@@ -8,5 +9,6 @@ config BR2_PACKAGE_PYTHON_PYUSB
 
          http://sourceforge.net/apps/trac/pyusb/
 
-comment "python-pyusb needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "python-pyusb needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index a7c0f7bf59cb32cdcf3d015e47271eec4a9420f1..3163797067316a60b548105e191b85acd656639e 100644 (file)
@@ -88,7 +88,11 @@ config BR2_PACKAGE_HOST_QEMU_VIRTFS
 
 config BR2_PACKAGE_HOST_QEMU_USB
        bool "USB passthrough support"
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          Enables USB passthrough support from guest to host.
 
+comment "USB passthrough support needs a toolchain w/ host gcc >= 4.9"
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
+
 endif
index dce2fccd54f1f07a95d5f436f4111456c6016848..b1a434f36e280e68e37884dc1c34774bcdb0b305 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_HOST_RASPBERRYPI_USBBOOT
        bool "host raspberrypi-usbboot"
        depends on BR2_arm
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          This package builds and install the "rpiboot" tool for the
          host machine. This tool allows to boot the Broadcom BCM
@@ -10,3 +11,7 @@ config BR2_PACKAGE_HOST_RASPBERRYPI_USBBOOT
          built into the Compute module).
 
          https://github.com/raspberrypi/usbboot
+
+comment "host raspberrypi-usbboot needs a toolchain w/ host gcc >= 4.9"
+       depends on BR2_arm
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index 6066dc051ba80a623ed977977b8062250a073155..b08116e844c55a9cb3affef28d4aa90be022d1dc 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_SISPMCTL
        bool "sispmctl"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_USE_WCHAR
        depends on BR2_USE_MMU # fork()
        select BR2_PACKAGE_LIBUSB
@@ -13,6 +14,7 @@ config BR2_PACKAGE_SISPMCTL
 
          http://sispmctl.sourceforge.net/
 
-comment "sispmctl needs a toolchain w/ threads, wchar"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
+comment "sispmctl needs a toolchain w/ threads, wchar, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
        depends on BR2_USE_MMU
index 80a7130a92a1af345800797a04020725fa1fc402..5f72667284e074494b1fa103f515f64dea245332 100644 (file)
@@ -24,14 +24,16 @@ config BR2_PACKAGE_SUNXI_TOOLS_BOOTINFO
 config BR2_PACKAGE_SUNXI_TOOLS_FEL
        bool "sunxi-fel"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          The sunxi-fel command can interact with a sunxi device in
          fel mode. This allows do download code to memory and execute
          it.
 
-comment "sunxi-fel needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "sunxi-fel needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 config BR2_PACKAGE_SUNXI_TOOLS_NAND_PART
        bool "sunxi-nand-part"
index 5fab5e6ff5dc5699841d7cef7e75fb4d5e22d92d..51f13cf623d589023c0bea6d8f56c394cf49fd44 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_HOST_SUNXI_TOOLS
        bool "host sunxi-tools"
        depends on BR2_arm
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          Tools for Allwinner A10 (aka sun4i) and A13 (aka sun5i)
          based devices. This includes fex2bin which can be used to
@@ -10,3 +11,7 @@ config BR2_PACKAGE_HOST_SUNXI_TOOLS
          mainline Linux kernel version.
 
          http://linux-sunxi.org/Sunxi-tools
+
+comment "host sunxi-tools needs a toolchain w/ host gcc >= 4.9"
+       depends on BR2_arm
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index d8cbb947d6e088b691365c84d833bcb6fda72587..937d81bd562a579f3dd06d0ae97304b9d8f5712b 100644 (file)
@@ -1,8 +1,13 @@
 config BR2_PACKAGE_HOST_TEGRARCM
        bool "host tegrarcm"
        depends on BR2_arm || BR2_armeb
+       depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-libusb
        help
          This program is used to send code to a Tegra device in
          recovery mode.
 
          https://github.com/NVIDIA/tegrarcm
+
+comment "host tegrarcm needs a toolchain w/ host gcc >= 4.9"
+       depends on BR2_arm || BR2_armeb
+       depends on !BR2_HOST_GCC_AT_LEAST_4_9
index 32cb4cf89dcda5d75d78c0c8f519fc7afd2cd813..8b92a42f62828a71a84d61c88651d6d6238227cb 100644 (file)
@@ -33,16 +33,24 @@ if BR2_PACKAGE_UHD
 
 config BR2_PACKAGE_UHD_B100
        bool "b100 support"
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_UHD_USB
        help
          enable B100 support
 
+comment "B100 support needs a toolchain w/ gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 config BR2_PACKAGE_UHD_B200
        bool "b200 support"
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_UHD_USB
        help
          enable B200 support
 
+comment "B200 support needs a toolchain w/ gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 config BR2_PACKAGE_UHD_E300
        bool "E300 support"
        select BR2_PACKAGE_UHD_MPMD
@@ -72,8 +80,12 @@ config BR2_PACKAGE_UHD_RFNOC
 
 config BR2_PACKAGE_UHD_USB
        bool "USB support"
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          enable UHD USB support
 
+comment "USB support needs a toolchain w/ gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 endif
index c000b5ab4903fccd9f49b914af17f38b0a215dfc..52b0268a3881b1db21cc070abf38beea79e60d93 100644 (file)
@@ -1,11 +1,13 @@
 config BR2_PACKAGE_UHUBCTL
        bool "uhubctl"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          Control USB power per-port on smart USB hubs.
 
          https://github.com/mvp/uhubctl
 
-comment "uhubctl needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "uhubctl needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index e564384348f01d468cb617bedea0bc15615b095c..612a2b74b9c312f9e49e5fc5c11e918e16b11b2d 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_UPOWER
        bool "upower"
        depends on BR2_PACKAGE_HAS_UDEV
        depends on BR2_TOOLCHAIN_HAS_THREADS # libgudev, libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        depends on BR2_USE_MMU # libgudev
        depends on BR2_USE_WCHAR # libgudev
        select BR2_PACKAGE_LIBGUDEV
@@ -22,6 +23,7 @@ comment "upower needs udev /dev management"
        depends on BR2_USE_MMU
        depends on !BR2_PACKAGE_HAS_UDEV
 
-comment "upower needs a toolchain w/ threads, wchar"
+comment "upower needs a toolchain w/ threads, wchar, gcc >= 4.9"
        depends on BR2_USE_MMU
-       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 579761c040b015cc1916baf0cbcc8c71b02bc458..ecb043a1465882626e9f08510c10ee6aae5afa3a 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_USB_MODESWITCH
        bool "usb_modeswitch"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_JIMTCL if !BR2_PACKAGE_TCL || BR2_PACKAGE_TCL_SHLIB_ONLY
        select BR2_PACKAGE_LIBUSB
        help
@@ -20,5 +21,6 @@ config BR2_PACKAGE_USB_MODESWITCH
 
          http://www.draisberghof.de/usb_modeswitch/
 
-comment "usb_modeswitch needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "usb_modeswitch needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 95b2a073bd8824391c012d0b2b4ee1d7b1e48518..6da7d3bb0f4da0e9d52370147d594e3a2cd1d575 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_USB_MODESWITCH_DATA
        bool "usb_modeswitch_data"
        depends on BR2_TOOLCHAIN_HAS_THREADS # usb_modeswitch -> libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # usb_modeswitch -> libusb
        select BR2_PACKAGE_USB_MODESWITCH
        help
          USB mode switch data
@@ -9,5 +10,6 @@ config BR2_PACKAGE_USB_MODESWITCH_DATA
 
          http://www.draisberghof.de/usb_modeswitch/
 
-comment "usb_modeswitch_data needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "usb_modeswitch_data needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
index 78b0bff6e4b867396063589b1467a458c634f139..8ce180a88477d6596074750ccddc040db6f7d2d4 100644 (file)
@@ -1,9 +1,11 @@
-comment "usbredir needs a toolchain w/ threads"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "usbredir needs a toolchain w/ threads, gcc >= 4.9"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+               !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
 
 config BR2_PACKAGE_USBREDIR
        bool "usbredir"
        depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
        select BR2_PACKAGE_LIBUSB
        help
          usbredir is the name of a network protocol for sending usb