]> rtime.felk.cvut.cz Git - coffee/buildroot.git/commitdiff
Merge branch 'next'
authorPeter Korsgaard <peter@korsgaard.com>
Wed, 1 Jun 2016 15:55:16 +0000 (17:55 +0200)
committerPeter Korsgaard <peter@korsgaard.com>
Wed, 1 Jun 2016 15:55:16 +0000 (17:55 +0200)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
190 files changed:
CHANGES
Config.in
Config.in.legacy
Makefile
board/freescale/imx6ulevk/readme.txt
board/freescale/warpboard/README
board/qemu/m68k-mcf5208/linux-4.5.config
board/qemu/m68k-mcf5208/patches/linux/0001-fix-do_sigreturn.patch [new file with mode: 0644]
boot/uboot/uboot.mk
configs/qemu_m68k_mcf5208_defconfig
configs/zynq_microzed_defconfig
configs/zynq_zc706_defconfig
configs/zynq_zed_defconfig
docs/manual/makedev-syntax.txt
docs/website/download.html
docs/website/news.html
package/aircrack-ng/Config.in
package/android-tools/0005-fix-big-endian-build.patch [new file with mode: 0644]
package/android-tools/0005-fix-static-link-zlib.patch [new file with mode: 0644]
package/android-tools/Config.in
package/android-tools/Config.in.host
package/assimp/Config.in
package/bluez5_utils/0001-tools-bneptest.c-Remove-include-linux-if_bridge.h-to.patch [new file with mode: 0644]
package/bluez5_utils/bluez5_utils.mk
package/boost/0006-fenv.patch [new file with mode: 0644]
package/boost/0006-uclibc-fenv.patch [deleted file]
package/busybox/busybox-minimal.config
package/connman/0001-xtables.patch [deleted file]
package/cups/0004-remove-pie.patch [new file with mode: 0644]
package/erlang-p1-stringprep/0001-Stdint-is-required-on-windows.patch [new file with mode: 0644]
package/eudev/Config.in
package/expat/0001-fix-CVE-2016-0718.patch [new file with mode: 0644]
package/ffmpeg/Config.in
package/flann/Config.in
package/flann/flann.hash [new file with mode: 0644]
package/flann/flann.mk
package/flannel/Config.in
package/flannel/flannel.mk
package/gcc/6.1.0/840-microblaze-enable-dwarf-eh-support.patch [deleted file]
package/gcc/Config.in.host
package/glibc/Config.in
package/glmark2/Config.in
package/gmrender-resurrect/Config.in
package/go-bootstrap/go-bootstrap.mk
package/go/Config.in.host
package/go/go.mk
package/grantlee/Config.in
package/gstreamer/gst-ffmpeg/Config.in
package/gstreamer1/gst1-libav/Config.in
package/hidapi/0001-hidtest-dont-use-a-C-source-file-since-it-s-pure-C.patch
package/hplip/hplip.mk
package/ipsec-tools/Config.in
package/iptraf-ng/iptraf-ng.mk
package/iputils/iputils.hash
package/iputils/iputils.mk
package/jack2/0002-Make-backtrace-support-depends-on-execinfo.h-existen.patch [new file with mode: 0644]
package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch [new file with mode: 0644]
package/kodi-screensaver-asteroids/Config.in
package/kodi-screensaver-asterwave/Config.in
package/kodi-screensaver-asterwave/kodi-screensaver-asterwave.mk
package/kodi-screensaver-biogenesis/Config.in
package/kodi-screensaver-cpblobs/Config.in
package/kodi-screensaver-crystalmorph/Config.in
package/kodi-screensaver-greynetic/Config.in
package/kodi-screensaver-matrixtrails/Config.in
package/kodi-screensaver-matrixtrails/kodi-screensaver-matrixtrails.hash [new file with mode: 0644]
package/kodi-screensaver-pingpong/Config.in
package/kodi-screensaver-planestate/Config.in
package/kodi-screensaver-pyro/Config.in
package/kodi-screensaver-rsxs/Config.in
package/kodi-screensaver-rsxs/kodi-screensaver-rsxs.mk
package/kodi-screensaver-stars/Config.in
package/kodi-visualisation-fishbmc/Config.in
package/kodi-visualisation-fountain/Config.in
package/kodi-visualisation-goom/Config.in
package/kodi-visualisation-shadertoy/Config.in
package/kodi-visualisation-shadertoy/kodi-visualisation-shadertoy.mk
package/kodi/0007-exif-Fix-for-out-of-memory-errors-with-large-numbers.patch [new file with mode: 0644]
package/kodi/Config.in
package/libarchive/0001-fix-CVE-2016-1541.patch [new file with mode: 0644]
package/libcurl/libcurl.hash
package/libcurl/libcurl.mk
package/libdrm/0003-xf86atomic-require-CAS-support-in-libatomic_ops.patch [new file with mode: 0644]
package/libdrm/Config.in
package/libdrm/libdrm.mk
package/libepoxy/libepoxy.mk
package/libgpgme/libgpgme.mk
package/libinput/0002-Add-configure.ac-check-for-static_assert.patch [new file with mode: 0644]
package/libinput/libinput.mk
package/libpjsip/libpjsip.mk
package/libsemanage/Config.in
package/libsigsegv/Config.in
package/libxml2/libxml2.hash
package/libxml2/libxml2.mk
package/libxslt/0001-Make-maxvars-option-work.patch [deleted file]
package/libxslt/libxslt.hash
package/libxslt/libxslt.mk
package/linux-headers/Config.in.host
package/liquid-dsp/0002-math-poly-wrapping-isnan-in-T_ABS-to-help-compilatio.patch [new file with mode: 0644]
package/lirc-tools/0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch [new file with mode: 0644]
package/lirc-tools/lirc-tools.mk
package/ltris/ltris.mk
package/lttng-babeltrace/0002-configure-fix-uuid-support-detection-on-static-build.patch [new file with mode: 0644]
package/lttng-babeltrace/lttng-babeltrace.mk
package/lxc/0002-Fix-redefinition-of-struct-in6_addr.patch [new file with mode: 0644]
package/mali-t76x/mali-t76x.mk
package/mbedtls/mbedtls.mk
package/mesa3d/mesa3d.mk
package/midori/Config.in
package/minidlna/Config.in
package/moarvm/Config.in
package/mpd/Config.in
package/mpg123/0001-Makefile.am-don-t-override-LIBS.patch [new file with mode: 0644]
package/mpg123/mpg123.mk
package/mplayer/0003-configure-armv8.patch [new file with mode: 0644]
package/mplayer/mplayer.mk
package/mpv/Config.in
package/mtools/mtools.mk
package/mtr/Config.in
package/mtr/mtr.hash [new file with mode: 0644]
package/mtr/mtr.mk
package/musl/Config.in
package/net-tools/0001-Makefile-fix-static-linking-issue-with-lintl.patch [new file with mode: 0644]
package/net-tools/net-tools.mk
package/nginx/0001-auto-type-sizeof-rework-autotest-to-be-cross-compila.patch
package/nginx/0002-auto-feature-add-mechanism-allowing-to-force-feature.patch
package/nginx/0003-auto-set-ngx_feature_run_force_result-for-each-featu.patch
package/nginx/0004-auto-lib-libxslt-conf-allow-to-override-ngx_feature_.patch [deleted file]
package/nginx/0004-auto-lib-libxslt-conf-use-pkg-config.patch [new file with mode: 0644]
package/nginx/0005-auto-unix-make-sys_nerr-guessing-cross-friendly.patch
package/nginx/0006-auto-lib-openssl-conf-use-pkg-config.patch [new file with mode: 0644]
package/nginx/0007-auto-lib-libgd-conf-use-pkg-config.patch [new file with mode: 0644]
package/nginx/0008-src-os-unix-ngx_linux_config.h-only-include-dlfcn.h-.patch [new file with mode: 0644]
package/nginx/Config.in
package/nginx/nginx.mk
package/opencv/Config.in
package/opencv3/Config.in
package/openpgm/0003-Rework-headers-includes-to-fix-build-with-musl-libc.patch [new file with mode: 0644]
package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch
package/openpowerlink/0006-veth-avoid-kernel-header-issue-with-musl.patch [new file with mode: 0644]
package/openvpn/Config.in
package/openvpn/openvpn.hash
package/openvpn/openvpn.mk
package/oprofile/Config.in
package/pkg-kconfig.mk
package/postgresql/postgresql.mk
package/pulseview/0002-cmake-add-check-for-explicit-linking-against-libatom.patch [new file with mode: 0644]
package/putty/0001-uxcons-Fix-on-musl-libc.patch [new file with mode: 0644]
package/putty/0002-Fix-__uint128_t-compile-error-on-MinGW.patch [new file with mode: 0644]
package/python-coherence/0001-Fix-twisted-detection.patch [new file with mode: 0644]
package/python-service-identity/Config.in
package/python-treq/Config.in
package/qlibc/0004-md5-fix-musl-build-by-removing-usage-of-internal-gli.patch [new file with mode: 0644]
package/qt5/qt5multimedia/Config.in
package/qt5/qt5serialbus/Config.in
package/quagga/quagga.mk
package/quagga/quagga_tmpfiles.conf [new file with mode: 0644]
package/rpm/Config.in
package/ruby/0001-process.c-fix-rb_spawn_process-for-nommu.patch [new file with mode: 0644]
package/samba4/samba4.mk
package/sg3_utils/Config.in
package/skeleton/skeleton.mk
package/squeezelite/Config.in
package/stress-ng/Config.in
package/stress-ng/stress-ng.hash
package/stress-ng/stress-ng.mk
package/strongswan/Config.in
package/strongswan/strongswan.mk
package/time/Config.in
package/tinc/0001-musl.patch [new file with mode: 0644]
package/tinc/Config.in
package/tinyalsa/0002-asound.h-include-time.h-to-get-struct-timespec-proto.patch [new file with mode: 0644]
package/tovid/Config.in
package/turbolua/turbolua.mk
package/ustr/Config.in
package/valgrind/Config.in
package/webkitgtk/webkitgtk.hash
package/webkitgtk/webkitgtk.mk
package/x11r7/xdriver_xf86-video-fbturbo/Config.in
package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk
package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
package/xorriso/0001-fix-musl-build.patch [new file with mode: 0644]
support/misc/Vagrantfile
support/scripts/graph-build-time
system/Config.in
toolchain/Config.in
toolchain/helpers.mk
toolchain/toolchain-external/Config.in
toolchain/toolchain-external/toolchain-external.hash
toolchain/toolchain-external/toolchain-external.mk

diff --git a/CHANGES b/CHANGES
index 1731996bfa6d86462aec3ee0661a215983c16ec9..193b4dfd3f3602c22a790dfdc13a70367b0d73f4 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,58 @@
+2016.05, Released May 31st, 2016
+
+       Minor fixes.
+
+       External toolchain: Fix for symlink handling when copying
+       links to target.
+
+       Updated/fixed packages: gcc, grantlee, gst-ffmpeg,
+       ipsec-tools, iptraf-ng, libcurl, libdrm, libsigsegv, ltris,
+       lttng-babeltrace, mbedtls, mesa3d, moarvm, mplayer, mtools,
+       net-tools, openpowerlink, pulseview, rpm, tinyalsa,
+       xdriver_xf86-video-fbturbo, xserver_xorg-server
+
+2016.05-rc3, Released May 26th, 2016
+
+       Fixes all over the tree.
+
+       Tweaks for SSP handling for external toolchains.
+
+       Updated/fixed packages: aircrack-ng, bluez5_utils, connman,
+       cups, erlang-p1-stringprep, expat, ffmpeg, flann, flannel, go,
+       gst1-libav, hidapi, hplip, iptraf-ng, jamvm, kodi,
+       kodi-screensaver-matrixtrails, libcurl, libepoxy, libgpgme,
+       libsemanage, libxslt, liquid-dsp, ltris, lxc, mesa3d, midori,
+       mpg123, mtr, openpgm, openpowerlink, oprofile, php,
+       postgresql, putty, python-service-identity, python-treq,
+       qlibc, qt5serialbus, ruby, stress-ng, strongswan, time, tinc,
+       ustr, valgrind, webkitgtk, libxml2, xorriso,
+       xserver_xorg-server
+
+       Issues resolved (http://bugs.uclibc.org):
+
+       #8936: Aircrack-ng - Alot of missing dependencies
+
+2016.05-rc2, Released May 17th, 2016
+
+       Fixes all over the tree.
+
+       Rootfs overlay handling now refuses to overwrite
+       /{usr,bin,sbin,lib} symlinks from BR2_ROOTFS_MERGED_USR option
+       even if these directories are present in the overlay.
+
+       External toolchain: Unbreak user provided libraries deployment
+       (BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS) handling after refactoring.
+
+       QEMU coldfire: Fix for signal handling kernel issue, enable
+       networking support.
+
+       Updated/fixed packages: android-tools, assimp, boost, gcc,
+       glibc, glmark2, gmrender-resurrect, go, go-bootstrap, iputils,
+       jack2, kodi-screensaver-asterwave, kodi-screensaver-rsxs,
+       kodi-visualisation-shadertoy, libarchive, libinput, libpjsip,
+       mali-t76x, mtr, nginx, opencv, openvpn, python-coherence,
+       qt5multimeda, quagga, samba4, sg3-utils, stress-ng, turbolua
+
 2016.05-rc1, Released May 10th, 2016
 
        Fixes all over the tree and new features.
index 93c44e296af2a05f0733231e7870691a8274b43e..1dd2bb36b3bac31a05a9833a70e415ad32f6ba5d 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -714,8 +714,8 @@ config BR2_COMPILER_PARANOID_UNSAFE_PATH
          are encountered.
 
          Note that this mechanism is available for both the internal
-         toolchain (through gcc and binutils patches) and external
-         toolchain backends (through the external toolchain wrapper).
+         toolchain (through the toolchain wrapper and binutils patches)
+         and external toolchain backends (through the toolchain wrapper).
 
 endmenu
 
index a0a20599edc41fc3483c1f1881ff568cc0947821..9bb9b623c2edaba2ed52e75c9b73fe7b2876443f 100644 (file)
@@ -170,6 +170,17 @@ config BR2_GDB_VERSION_7_8
 ###############################################################################
 comment "Legacy options removed in 2016.05"
 
+config BR2_PACKAGE_OPENVPN_CRYPTO_POLARSSL
+       bool "openvpn polarssl crypto backend removed"
+       select BR2_LEGACY
+       help
+         The OpenVPN polarssl crypto backend option has been removed.
+         Version from 2.3.10 onwards need polarssl >= 1.3.8 but aren't
+         compatible with mbedtls (polarssl) series 2.x which is the
+         version provided in buildroot. And both can't coexist.
+         It now uses OpenSSL as the only option.
+
+
 config BR2_PACKAGE_NGINX_HTTP_SPDY_MODULE
        bool "nginx http spdy module removed"
        select BR2_LEGACY
index 32bbfc4a8d8827c03f85cde5158025e883d146e1..21d63f6ef741f7a072033d9fd4317037246c5f1e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -41,7 +41,7 @@ else # umask
 all:
 
 # Set and export the version string
-export BR2_VERSION := 2016.05-rc1
+export BR2_VERSION := 2016.08-git
 
 # Save running make version since it's clobbered by the make package
 RUNNING_MAKE_VERSION := $(MAKE_VERSION)
@@ -660,7 +660,7 @@ endif
 
        @$(foreach d, $(call qstrip,$(BR2_ROOTFS_OVERLAY)), \
                $(call MESSAGE,"Copying overlay $(d)"); \
-               rsync -a --ignore-times $(RSYNC_VCS_EXCLUSIONS) \
+               rsync -a --ignore-times --keep-dirlinks $(RSYNC_VCS_EXCLUSIONS) \
                        --chmod=u=rwX,go=rX --exclude .empty --exclude '*~' \
                        $(d)/ $(TARGET_DIR)$(sep))
 
index b8243dc497cd2c8f749fc7c69211a9d504943fca..462715c18d7e6b99f79511d81b76fd6cd40e2afc 100644 (file)
@@ -20,7 +20,7 @@ Build all components:
 
 You will find in ./output/images/ the following files:
   - imx6ul-14x14-evk.dtb
-  - rootfs.ext2
+  - rootfs.ext4
   - rootfs.tar
   - sdcard.img
   - u-boot.imx
index d826b2d50eeea0cce41a2f90191f146138d723b6..7e6bdc5663060fc8637eadc35ef88f9bafece65b 100644 (file)
@@ -29,7 +29,7 @@ Update uboot
  => env default -f -a
  => saveenv
 
-- Run the DFU toocommand in U-Boot:
+- Run the DFU command in U-Boot:
  => dfu 0 mmc 0
 
 - Transfer U-Boot into flash by running this command in host side:
@@ -42,7 +42,7 @@ Update uboot
 Update linux & rootfs
 =====================
 
-Run the 'ums' command from the u6Boot prompt to mount the eMMC as mass
+Run the 'ums' command from the U-Boot prompt to mount the eMMC as mass
 storage and update zImage, device tree (imx6sl-warp.dtb) and rootfs
 file (rootfs.tar) :
 
index bf30bf425c5a73b96623073df15202bc6c6802fe..09a89d7255e9e2763c5b9878d14ad8687ca6dc0e 100644 (file)
@@ -19,3 +19,10 @@ CONFIG_SERIAL_MCF_BAUDRATE=115200
 CONFIG_SERIAL_MCF_CONSOLE=y
 CONFIG_BOOTPARAM=y
 CONFIG_BOOTPARAM_STRING="console=ttyS0,115200"
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_INET=y
+CONFIG_NETDEVICES=y
+CONFIG_NET_VENDOR_FREESCALE=y
+CONFIG_FEC=y
diff --git a/board/qemu/m68k-mcf5208/patches/linux/0001-fix-do_sigreturn.patch b/board/qemu/m68k-mcf5208/patches/linux/0001-fix-do_sigreturn.patch
new file mode 100644 (file)
index 0000000..c52a4e2
--- /dev/null
@@ -0,0 +1,100 @@
+From a95517992a37488c0bc8b629c47c570e580e407d Mon Sep 17 00:00:00 2001
+From: Greg Ungerer <gerg@uclinux.org>
+Date: Mon, 15 Feb 2016 16:36:29 +1000
+Subject: m68k: Use conventional function parameters for do_sigreturn
+
+Create conventional stack parameters for the calls to do_sigreturn and
+do_rt_sigreturn. The current C code for do_sigreturn and do_rt_sigreturn
+dig into the stack to create local pointers to the saved switch stack
+and the pt_regs structs.
+
+The motivation for this change is a problem with non-MMU targets that
+have broken signal return paths on newer versions of gcc. It appears as
+though gcc has determined that the pointers into the saved stack structs,
+and the saved structs themselves, are function parameters and updates to
+them will be lost on function return, so they are optimized away. This
+results in large parts of restore_sigcontext() and mangle_kernel_stack()
+functions being removed. Of course this results in non-functional code
+causing kernel oops. This problem has been observed with gcc version
+5.2 and 5.3, and probably exists in earlier versions as well.
+
+Using conventional stack parameter pointers passed to these functions has
+the advantage of the code here not needing to know the exact details of
+how the underlying entry handler layed these structs out on the stack.
+So the rather ugly pointer setup casting and arg referencing can be
+removed.
+
+The resulting code after this change is a few bytes larger (due to the
+overhead of creating the stack args and their tear down). Not being hot
+paths I don't think this is too much of a problem here.
+
+An alternative solution is to put a barrier() in the do_sigreturn() code,
+but this doesn't feel quite as clean as this solution.
+
+This change has been compile tested on all defconfigs, and run tested on
+Atari (through aranym), ColdFire with MMU (M5407EVB) and ColdFire with
+no-MMU (QEMU and M5208EVB).
+
+Signed-off-by: Greg Ungerer <gerg@uclinux.org>
+Acked-by: Andreas Schwab <schwab@linux-m68k.org>
+Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
+---
+ arch/m68k/kernel/entry.S  | 6 ++++++
+ arch/m68k/kernel/signal.c | 8 ++------
+ 2 files changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/arch/m68k/kernel/entry.S b/arch/m68k/kernel/entry.S
+index b54ac7a..97cd3ea 100644
+--- a/arch/m68k/kernel/entry.S
++++ b/arch/m68k/kernel/entry.S
+@@ -71,13 +71,19 @@ ENTRY(__sys_vfork)
+ ENTRY(sys_sigreturn)
+       SAVE_SWITCH_STACK
++      movel   %sp,%sp@-                 | switch_stack pointer
++      pea     %sp@(SWITCH_STACK_SIZE+4) | pt_regs pointer
+       jbsr    do_sigreturn
++      addql   #8,%sp
+       RESTORE_SWITCH_STACK
+       rts
+ ENTRY(sys_rt_sigreturn)
+       SAVE_SWITCH_STACK
++      movel   %sp,%sp@-                 | switch_stack pointer
++      pea     %sp@(SWITCH_STACK_SIZE+4) | pt_regs pointer
+       jbsr    do_rt_sigreturn
++      addql   #8,%sp
+       RESTORE_SWITCH_STACK
+       rts
+diff --git a/arch/m68k/kernel/signal.c b/arch/m68k/kernel/signal.c
+index af1c4f3..2dcee3a 100644
+--- a/arch/m68k/kernel/signal.c
++++ b/arch/m68k/kernel/signal.c
+@@ -737,10 +737,8 @@ badframe:
+       return 1;
+ }
+-asmlinkage int do_sigreturn(unsigned long __unused)
++asmlinkage int do_sigreturn(struct pt_regs *regs, struct switch_stack *sw)
+ {
+-      struct switch_stack *sw = (struct switch_stack *) &__unused;
+-      struct pt_regs *regs = (struct pt_regs *) (sw + 1);
+       unsigned long usp = rdusp();
+       struct sigframe __user *frame = (struct sigframe __user *)(usp - 4);
+       sigset_t set;
+@@ -764,10 +762,8 @@ badframe:
+       return 0;
+ }
+-asmlinkage int do_rt_sigreturn(unsigned long __unused)
++asmlinkage int do_rt_sigreturn(struct pt_regs *regs, struct switch_stack *sw)
+ {
+-      struct switch_stack *sw = (struct switch_stack *) &__unused;
+-      struct pt_regs *regs = (struct pt_regs *) (sw + 1);
+       unsigned long usp = rdusp();
+       struct rt_sigframe __user *frame = (struct rt_sigframe __user *)(usp - 4);
+       sigset_t set;
+-- 
+cgit v0.12
+
index 3b2a23040797c8e59a0a615c461d69942a61aa25..bc5d952bbe9c5dd91d294b38cb5ca10aefbb24fa 100644 (file)
@@ -58,16 +58,17 @@ UBOOT_BIN = u-boot.imx
 else ifeq ($(BR2_TARGET_UBOOT_FORMAT_SB),y)
 UBOOT_BIN = u-boot.sb
 UBOOT_MAKE_TARGET = $(UBOOT_BIN)
-UBOOT_DEPENDENCIES += host-elftosb
+# mxsimage needs OpenSSL
+UBOOT_DEPENDENCIES += host-elftosb host-openssl
 else ifeq ($(BR2_TARGET_UBOOT_FORMAT_SD),y)
 # BootStream (.sb) is generated by U-Boot, we convert it to SD format
 UBOOT_BIN = u-boot.sd
 UBOOT_MAKE_TARGET = u-boot.sb
-UBOOT_DEPENDENCIES += host-elftosb
+UBOOT_DEPENDENCIES += host-elftosb host-openssl
 else ifeq ($(BR2_TARGET_UBOOT_FORMAT_NAND),y)
 UBOOT_BIN = u-boot.nand
 UBOOT_MAKE_TARGET = u-boot.sb
-UBOOT_DEPENDENCIES += host-elftosb
+UBOOT_DEPENDENCIES += host-elftosb host-openssl
 else ifeq ($(BR2_TARGET_UBOOT_FORMAT_CUSTOM),y)
 UBOOT_BIN = $(call qstrip,$(BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME))
 else
@@ -87,7 +88,9 @@ endif
 
 UBOOT_MAKE_OPTS += \
        CROSS_COMPILE="$(TARGET_CROSS)" \
-       ARCH=$(UBOOT_ARCH)
+       ARCH=$(UBOOT_ARCH) \
+       HOSTCFLAGS="$(HOST_CFLAGS)" \
+       HOSTLDFLAGS="$(HOST_LDFLAGS)"
 
 ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y)
 UBOOT_DEPENDENCIES += host-dtc
index 53ee1ffbfc9cacc67c4379dcf2a9c6789073ddd4..31db9128e4ac6b64017db8a3f017aab360b91cc7 100644 (file)
@@ -9,6 +9,8 @@ BR2_SYSTEM_DHCP="eth0"
 BR2_TARGET_ROOTFS_INITRAMFS=y
 # BR2_TARGET_ROOTFS_TAR is not set
 
+BR2_GLOBAL_PATCH_DIR="board/qemu/m68k-mcf5208/patches/"
+
 # Linux headers same as kernel, a 4.5 series
 BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5=y
 
@@ -24,7 +26,5 @@ BR2_LINUX_KERNEL_VMLINUX=y
 BR2_TARGET_GENERIC_GETTY=y
 BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
 
-# use minimal busybox with hush
+# use minimal busybox with hush and networking tools
 BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox-minimal.config"
-# mdev does not work correctly
-BR2_ROOTFS_DEVICE_CREATION_STATIC=y
index c73fae52ad2b13cff2e741e5c53a8cf72c35b5d2..3faa3b836ade502f3aa23a6b83c92c3505ed7e2d 100644 (file)
@@ -9,6 +9,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/Xilinx/linux-xlnx.git"
 BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="xilinx-v2015.1"
 BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq"
+BR2_LINUX_KERNEL_UIMAGE=y
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="zynq-zed"
index d1a46ca10618d3572d0d3bfbcd063a5165376cf0..fff49d392581e86fdbefcb3c14095d81edf883db 100644 (file)
@@ -10,6 +10,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/Xilinx/linux-xlnx.git"
 BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="xilinx-v2014.2.01"
 BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq"
+BR2_LINUX_KERNEL_UIMAGE=y
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="zynq-zc706"
index 1330be402a34f6243ff8f6bb2bef1ae62fda1705..0e2c8ff9d832131f0f99988d138852d0dd6af9b6 100644 (file)
@@ -9,6 +9,7 @@ BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/Xilinx/linux-xlnx.git"
 BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="xilinx-v2015.1"
 BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq"
+BR2_LINUX_KERNEL_UIMAGE=y
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="zynq-zed"
index 0bbc16ec29ec6e02d1fd7bf5b32da549406cee51..e4dffc95aaad5f275f0d32475e331b6b36e5efac 100644 (file)
@@ -44,7 +44,7 @@ this syntax, you will need to write:
 ----
 /usr/bin/foo f 755 0 0 - - - - -
 /usr/bin/bar f 755 root root - - - - -
-/data/buz f buz-user buz-group - - - - -
+/data/buz f 644 buz-user buz-group - - - - -
 ----
 
 Alternatively, if you want to change owner/permission of a directory
index 401efcf88a5d1de41695680e250a7881b654ad48..5900da0bde2beb4de38eab13d827c77f6fe34f0f 100644 (file)
@@ -8,74 +8,74 @@
     <div class="panel-heading">Download</div>
     <div class="panel-body">
 
-      <h3 style="text-align: center;">Latest stable release: <b>2016.02</b></h3>
+      <h3 style="text-align: center;">Latest stable release: <b>2016.05</b></h3>
 
       <div class="row mt centered">
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.02.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.02.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
-         <h3><a href="/downloads/buildroot-2016.02.tar.gz">buildroot-2016.02.tar.gz</a></h3>
-         <p><a href="/downloads/buildroot-2016.02.tar.gz.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.05.tar.gz">buildroot-2016.05.tar.gz</a></h3>
+         <p><a href="/downloads/buildroot-2016.05.tar.gz.sign">PGP signature</a></p>
        </div>
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.02.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.02.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
 
-         <h3><a href="/downloads/buildroot-2016.02.tar.bz2">buildroot-2016.02.tar.bz2</a></h3>
-         <p><a href="/downloads/buildroot-2016.02.tar.bz2.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.05.tar.bz2">buildroot-2016.05.tar.bz2</a></h3>
+         <p><a href="/downloads/buildroot-2016.05.tar.bz2.sign">PGP signature</a></p>
        </div>
       </div>
-
-      <h3 style="text-align: center;">Latest release candidate: <b>2016.05-rc1</b></h3>
+<!--
+      <h3 style="text-align: center;">Latest release candidate: <b>2016.05-rc3</b></h3>
       <div class="row mt centered">
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.05-rc1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.05-rc1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
 
-         <h3><a href="/downloads/buildroot-2016.05-rc1.tar.gz">buildroot-2016.05-rc1.tar.gz</a></h3>
-         <p><a href="/downloads/buildroot-2016.05-rc1.tar.gz.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.05-rc3.tar.gz">buildroot-2016.05-rc3.tar.gz</a></h3>
+         <p><a href="/downloads/buildroot-2016.05-rc3.tar.gz.sign">PGP signature</a></p>
        </div>
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.05-rc1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.05-rc1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.05-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
 
-         <h3><a href="/downloads/buildroot-2016.05-rc1.tar.bz2">buildroot-2016.05-rc1.tar.bz2</a></h3>
-         <p><a href="/downloads/buildroot-2016.05-rc1.tar.bz2.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.05-rc3.tar.bz2">buildroot-2016.05-rc3.tar.bz2</a></h3>
+         <p><a href="/downloads/buildroot-2016.05-rc3.tar.bz2.sign">PGP signature</a></p>
        </div>
       </div>
-
+-->
       This and earlier releases (and their PGP signatures) can always be downloaded from
       <a href="/downloads/">http://buildroot.net/downloads/</a>.
     </div>
index 0b97d7470b1b83be0da09e63bace927379f9cbb9..bfc1a3996952593de73de0c4a8792501440326fd 100644 (file)
@@ -9,6 +9,69 @@
 <h2>News</h2>
 <ul class="timeline">
 
+  <li class="timeline-inverted">
+    <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+    <div class="timeline-panel">
+      <div class="timeline-heading">
+       <h4 class="timeline-title">2016.05 released</h4>
+       <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>1 March 2016</small></p>
+      </div>
+      <div class="timeline-body">
+       <p>The stable 2016.05 release is out - Thanks to everyone
+         contributing and testing the release candidates. See the
+         <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.05">CHANGES</a>
+         file for more details, read the
+         <a href="http://lists.busybox.net/pipermail/buildroot/2016-May/162428.html">announcement<a>
+         and go to the <a href="/downloads/">downloads page</a> to pick up the
+         <a href="/downloads/buildroot-2016.05.tar.bz2">2016.05 release</a>.</p>
+      </div>
+    </div>
+  </li>
+
+  <li>
+    <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+    <div class="timeline-panel">
+      <div class="timeline-heading">
+       <h4 class="timeline-title">2016.05-rc3 released</h4>
+       <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>26 May 2016</small></p>
+      </div>
+      <div class="timeline-body">
+       <p>Release candidate 3 is out with more cleanups and security
+         / build fixes. See
+         the <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.05-rc3">CHANGES</a>
+         file for details.</p>
+       <p>Head to the <a href="/downloads/">downloads page</a> to
+         pick up
+         the <a href="/downloads/buildroot-2016.05-rc3.tar.bz2">2016.05-rc3
+           release candidate</a>, and report any problems found to
+         the <a href="support.html">mailing list</a>
+         or <a href="https://bugs.uclibc.org">bug tracker</a>.</p>
+      </div>
+    </div>
+  </li>
+
+  <li class="timeline-inverted">
+    <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+    <div class="timeline-panel">
+      <div class="timeline-heading">
+       <h4 class="timeline-title">2016.05-rc2 released</h4>
+       <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>17 May 2016</small></p>
+      </div>
+      <div class="timeline-body">
+       <p>Another week, another release candidate with more cleanups
+         and build fixes. See
+         the <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.05-rc2">CHANGES</a>
+         file for details.</p>
+
+       <p>Head to the <a href="/downloads/">downloads page</a> to pick up the
+         <a href="/downloads/buildroot-2016.05-rc2.tar.bz2">2016.05-rc2
+           release candidate</a>, and report any problems found to
+         the <a href="support.html">mailing list</a>
+         or <a href="https://bugs.uclibc.org">bug tracker</a>.</p>
+      </div>
+    </div>
+  </li>
+
   <li>
     <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
     <div class="timeline-panel">
@@ -20,7 +83,8 @@
        <p>We have a new release candidate! Lots of
          changes all over the tree, see
          the <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.05-rc1">CHANGES</a>
-         file for details.
+         file for details and read the
+         <a href="http://lists.busybox.net/pipermail/buildroot/2016-May/160897.html">announcement</a>.
        </p>
 
        <p>Head to the <a href="/downloads/">downloads page</a> to pick up the
index bb100b885113b041b3d8c9d185fa1674fa7f9620..00ce4e48b7b6c207a01c96f7b80ee49b6663a027 100644 (file)
@@ -10,6 +10,9 @@ config BR2_PACKAGE_AIRCRACK_NG
        help
          A set of tools for auditing wireless networks
 
+         For complete functionality, also select ethtool, iw, rfkill,
+         util-linux utilities, and wireless_tools.
+
          http://www.aircrack-ng.org/
 
 comment "aircrack-ng needs a toolchain w/ threads"
diff --git a/package/android-tools/0005-fix-big-endian-build.patch b/package/android-tools/0005-fix-big-endian-build.patch
new file mode 100644 (file)
index 0000000..c35fdcb
--- /dev/null
@@ -0,0 +1,61 @@
+Fix build on big endian systems
+
+The usb_linux_client.c file defines cpu_to_le16/32 by using the C
+library htole16/32 function calls. However, cpu_to_le16/32 are used
+when initializing structures, i.e in a context where a function call
+is not allowed.
+
+It works fine on little endian systems because htole16/32 are defined
+by the C library as no-ops. But on big-endian systems, they are
+actually doing something, which might involve calling a function,
+causing build failures.
+
+To solve this, we simply open-code cpu_to_le16/32 in a way that allows
+them to be used when initializing structures.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/core/adb/usb_linux_client.c
+===================================================================
+--- a/core/adb/usb_linux_client.c
++++ b/core/adb/usb_linux_client.c
+@@ -34,8 +34,15 @@
+ #define MAX_PACKET_SIZE_FS    64
+ #define MAX_PACKET_SIZE_HS    512
+-#define cpu_to_le16(x)  htole16(x)
+-#define cpu_to_le32(x)  htole32(x)
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++# define cpu_to_le16(x) (x)
++# define cpu_to_le32(x) (x)
++#else
++# define cpu_to_le16(x) ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8))
++# define cpu_to_le32(x) \
++      ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >>  8) | \
++       (((x) & 0x0000ff00u) <<  8) | (((x) & 0x000000ffu) << 24))
++#endif
+ struct usb_handle
+ {
+Index: b/core/adbd/usb_linux_client.c
+===================================================================
+--- a/core/adbd/usb_linux_client.c
++++ b/core/adbd/usb_linux_client.c
+@@ -34,8 +34,15 @@
+ #define MAX_PACKET_SIZE_FS    64
+ #define MAX_PACKET_SIZE_HS    512
+-#define cpu_to_le16(x)  htole16(x)
+-#define cpu_to_le32(x)  htole32(x)
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++# define cpu_to_le16(x) (x)
++# define cpu_to_le32(x) (x)
++#else
++# define cpu_to_le16(x) ((((x) >> 8) & 0xffu) | (((x) & 0xffu) << 8))
++# define cpu_to_le32(x) \
++      ((((x) & 0xff000000u) >> 24) | (((x) & 0x00ff0000u) >>  8) | \
++       (((x) & 0x0000ff00u) <<  8) | (((x) & 0x000000ffu) << 24))
++#endif
+ struct usb_handle
+ {
diff --git a/package/android-tools/0005-fix-static-link-zlib.patch b/package/android-tools/0005-fix-static-link-zlib.patch
new file mode 100644 (file)
index 0000000..dff4df6
--- /dev/null
@@ -0,0 +1,36 @@
+Fix static linking of adb/adbd
+
+Both adb and adbd use OpenSSL, which indirectly uses zlib. Since
+adb/adbd also use zlib directly -lz is included in the linker flags,
+but not at the right position to ensure that static linking works: to
+make it possible for OpenSSL symbols to see zlib symbols, -lz must
+appear after -lcrypto.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/debian/makefiles/adb.mk
+===================================================================
+--- a/debian/makefiles/adb.mk
++++ b/debian/makefiles/adb.mk
+@@ -41,7 +41,7 @@
+ CPPFLAGS+= -I$(SRCDIR)/core/adb
+ CPPFLAGS+= -I$(SRCDIR)/core/include
+-LIBS+= -lc -lpthread -lz -lcrypto
++LIBS+= -lc -lpthread -lcrypto -lz
+ OBJS= $(SRCS:.c=.o)
+Index: b/debian/makefiles/adbd.mk
+===================================================================
+--- a/debian/makefiles/adbd.mk
++++ b/debian/makefiles/adbd.mk
+@@ -44,7 +44,7 @@
+ CPPFLAGS+= -I$(SRCDIR)/core/adbd
+ CPPFLAGS+= -I$(SRCDIR)/core/include
+-LIBS+= -lc -lpthread -lz -lcrypto -lcrypt
++LIBS+= -lc -lpthread -lcrypto -lz -lcrypt
+ OBJS= $(patsubst %, %.o, $(basename $(SRCS)))
index f84f6980c70cb12814dce930b70c6df0724c3a9d..35bb8af6efeb803721c3813e3b4fc296bfd146bf 100644 (file)
@@ -1,40 +1,60 @@
 config BR2_PACKAGE_ANDROID_TOOLS
-       bool "android-tools"
-       select BR2_PACKAGE_ANDROID_TOOLS_ADBD if \
-              !BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT && \
-              !BR2_PACKAGE_ANDROID_TOOLS_ADB
-       help
-         This package contains the fastboot and adb utilities, that
-         can be used to interact with target devices using of these
-         protocols.
+       bool "android-tools"
+       # Technically, fastboot could build on noMMU systems. But
+       # since we need at least one of the three sub-options enabled,
+       # and adb/adbd can't be built on noMMU systems, and fastboot
+       # has some complicated dependencies, we simply make the whole
+       # package not available on noMMU platforms.
+       depends on BR2_USE_MMU
+       depends on BR2_TOOLCHAIN_HAS_THREADS
+       select BR2_PACKAGE_ANDROID_TOOLS_ADBD if \
+             !BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT && \
+             !BR2_PACKAGE_ANDROID_TOOLS_ADB
+       help
+         This package contains the fastboot and adb utilities, that
+         can be used to interact with target devices using of these
+         protocols.
 
 if BR2_PACKAGE_ANDROID_TOOLS
 
 config BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT
-       bool "fastboot"
-       select BR2_PACKAGE_LIBSELINUX
-       select BR2_PACKAGE_ZLIB
-       help
-         This option will build and install the fastboot utility for
-         the target, which can be used to reflash other target devices
-         implementing the fastboot protocol.
+       bool "fastboot"
+       select BR2_PACKAGE_LIBSELINUX
+       select BR2_PACKAGE_ZLIB
+       depends on BR2_TOOLCHAIN_HAS_THREADS # libselinux
+       depends on !BR2_STATIC_LIBS # libselinux
+       depends on !BR2_arc # libselinux
+       help
+         This option will build and install the fastboot utility for
+         the target, which can be used to reflash other target devices
+         implementing the fastboot protocol.
+
+comment "fastboot needs a toolchain w/ threads, dynamic library"
+       depends on !BR2_arc
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
 
 config BR2_PACKAGE_ANDROID_TOOLS_ADB
-       bool "adb"
-       select BR2_PACKAGE_OPENSSL
-       select BR2_PACKAGE_ZLIB
-       help
-         This option will build and install the adb utility for the
-         target, which can be used to interact with other target
-         devices implementing the ADB protocol.
+       bool "adb"
+       depends on BR2_USE_MMU # uses fork()
+       select BR2_PACKAGE_OPENSSL
+       select BR2_PACKAGE_ZLIB
+       help
+         This option will build and install the adb utility for the
+         target, which can be used to interact with other target
+         devices implementing the ADB protocol.
 
 config BR2_PACKAGE_ANDROID_TOOLS_ADBD
-       bool "adbd"
-       select BR2_PACKAGE_OPENSSL
-       select BR2_PACKAGE_ZLIB
-       help
-         This option will build and install the adbd utility for the
-         target, which can be used to interact with a host machine
-         implementing the ADB protocol.
+       bool "adbd"
+       depends on BR2_USE_MMU # uses fork()
+       select BR2_PACKAGE_OPENSSL
+       select BR2_PACKAGE_ZLIB
+       help
+         This option will build and install the adbd utility for the
+         target, which can be used to interact with a host machine
+         implementing the ADB protocol.
 
 endif
+
+comment "android-tools needs a toolchain w/ threads"
+       depends on BR2_USE_MMU
+       depends on !BR2_TOOLCHAIN_HAS_THREADS
index 1c3a5199a8c94102dff82b809c4bb6dd7746767a..993c4c9fdc0614840f594bc88cccdb49e153fcf3 100644 (file)
@@ -1,26 +1,26 @@
 config BR2_PACKAGE_HOST_ANDROID_TOOLS
-       bool "host android-tools"
-       select BR2_PACKAGE_ANDROID_TOOLS_ADB if \
-              !BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT
-       help
-         This package contains the fastboot and adb utilities, that
-         can be used to interact with target devices using of these
-         protocols.
+       bool "host android-tools"
+       select BR2_PACKAGE_HOST_ANDROID_TOOLS_ADB if \
+               !BR2_PACKAGE_HOST_ANDROID_TOOLS_FASTBOOT
+       help
+         This package contains the fastboot and adb utilities, that
+         can be used to interact with target devices using of these
+         protocols.
 
 if BR2_PACKAGE_HOST_ANDROID_TOOLS
 
 config BR2_PACKAGE_HOST_ANDROID_TOOLS_FASTBOOT
-       bool "fastboot"
-       help
-         This option will build and install the fastboot utility for
-         the host, which can be used to reflash target devices
-         implementing the fastboot protocol.
+       bool "fastboot"
+       help
+         This option will build and install the fastboot utility for
+         the host, which can be used to reflash target devices
+         implementing the fastboot protocol.
 
 config BR2_PACKAGE_HOST_ANDROID_TOOLS_ADB
-       bool "adb"
-       help
-         This option will build and install the adb utility for the
-         host, which can be used to interact with target devices
-         implementing the ADB protocol.
+       bool "adb"
+       help
+         This option will build and install the adb utility for the
+         host, which can be used to interact with target devices
+         implementing the ADB protocol.
 
 endif
index 35e2f239acf3bc9d35f53bc076f3aa0238b61f86..93020f72382a49bf0b9073df2636ad37c7636b86 100644 (file)
@@ -1,5 +1,9 @@
 config BR2_PACKAGE_ASSIMP
        bool "assimp"
+       # All gcc versions affected by
+       # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124, that
+       # cause an infinite loop in gcc when building this package.
+       depends on !BR2_microblaze
        depends on BR2_INSTALL_LIBSTDCPP
        select BR2_PACKAGE_ZLIB
        help
@@ -11,4 +15,5 @@ config BR2_PACKAGE_ASSIMP
          http://www.assimp.org
 
 comment "assimp needs a toolchain w/ C++"
+       depends on !BR2_microblaze
        depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/bluez5_utils/0001-tools-bneptest.c-Remove-include-linux-if_bridge.h-to.patch b/package/bluez5_utils/0001-tools-bneptest.c-Remove-include-linux-if_bridge.h-to.patch
new file mode 100644 (file)
index 0000000..e8a3ff4
--- /dev/null
@@ -0,0 +1,45 @@
+From 7c136b4f1941e5bb2a6c8d93985c5734c6aefb29 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@writeme.com>
+Date: Sun, 22 May 2016 09:48:57 +0200
+Subject: [PATCH 1/1] tools/bneptest.c: Remove include linux/if_bridge.h to fix
+ musl build
+
+Inspired by busybox commit:
+https://git.busybox.net/busybox/commit/networking/brctl.c?id=5fa6d1a632505789409a2ba6cf8e112529f9db18
+
+The build error was found by the autobuilders of the buildroot project:
+http://autobuild.buildroot.net/results/eba/ebaa0bcb9c325aa6ed0bbd6c7ec75d44befa7645/build-end.log
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@writeme.com>
+(Patch sent upstream:
+ http://article.gmane.org/gmane.linux.bluez.kernel/67621)
+---
+ tools/bneptest.c | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/tools/bneptest.c b/tools/bneptest.c
+index 1404252..b832d72 100644
+--- a/tools/bneptest.c
++++ b/tools/bneptest.c
+@@ -36,7 +36,17 @@
+ #include <net/if.h>
+ #include <linux/sockios.h>
+ #include <netinet/in.h>
+-#include <linux/if_bridge.h>
++/* #include <linux/if_bridge.h>
++ * breaks on musl: we already included netinet/in.h,
++ * if we also include <linux/if_bridge.h> here, we get this:
++ * In file included from /usr/include/linux/if_bridge.h:18,
++ *                  from networking/brctl.c:67:
++ * /usr/include/linux/in6.h:32: error: redefinition of 'struct in6_addr'
++ * /usr/include/linux/in6.h:49: error: redefinition of 'struct sockaddr_in6'
++ * /usr/include/linux/in6.h:59: error: redefinition of 'struct ipv6_mreq'
++ */
++/* From <linux/if_bridge.h> */
++#define BRCTL_SET_BRIDGE_FORWARD_DELAY 8
+ #include <glib.h>
+-- 
+2.8.1
+
index 659f05d58c022d53cd1961f53aceddf09cb9411b..ddc8c452eea60d2bee0c8450b7b8bed80470581d 100644 (file)
@@ -12,9 +12,6 @@ BLUEZ5_UTILS_DEPENDENCIES = dbus libglib2
 BLUEZ5_UTILS_LICENSE = GPLv2+, LGPLv2.1+
 BLUEZ5_UTILS_LICENSE_FILES = COPYING COPYING.LIB
 
-# 0001-Link-mcaptest-with-lrt.patch
-BLUEZ5_UTILS_AUTORECONF = YES
-
 BLUEZ5_UTILS_CONF_OPTS =       \
        --enable-tools          \
        --enable-library        \
diff --git a/package/boost/0006-fenv.patch b/package/boost/0006-fenv.patch
new file mode 100644 (file)
index 0000000..95c769a
--- /dev/null
@@ -0,0 +1,37 @@
+Disable fenv.h in certain configurations
+
+The boost build system does not properly test whether fenv.h is
+available, and if it is, if it supports all the features used by
+Boost. This causes build failures with uClibc (reported upstream at
+https://svn.boost.org/trac/boost/ticket/11756) but also with glibc on
+specific architectures that don't have a full fenv implementation,
+such as NIOSII or Microblaze.
+
+To address this, we forcefully disable the use of fenv support in the
+affected configurations.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+[Thomas: add Microblaze/NIOSII exclusions.]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/boost/config/platform/linux.hpp
+===================================================================
+--- a/boost/config/platform/linux.hpp
++++ b/boost/config/platform/linux.hpp
+@@ -47,6 +47,16 @@
+ #endif
+ //
++// uClibc has no support for fenv.h, and also a few architectures
++// don't have fenv.h support at all (or incomplete support) even with
++// glibc.
++
++//
++#if defined(__UCLIBC__) || defined(__nios2__) || defined(__microblaze__)
++#  define BOOST_NO_FENV_H
++#endif
++
++//
+ // If glibc is past version 2 then we definitely have
+ // gettimeofday, earlier versions may or may not have it:
+ //
diff --git a/package/boost/0006-uclibc-fenv.patch b/package/boost/0006-uclibc-fenv.patch
deleted file mode 100644 (file)
index ea10f8c..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Disable fenv.h support for uClibc-based toolchains.
-
-The boost build system does not recognize the fact that fenv.h is an
-optional module in uClibc and tries to use it even if UCLIBC_HAS_FENV
-is disabled. This patch disables fenv support completely when compiling
-with a uClibc-based toolchain. Bug was reported upstream:
-https://svn.boost.org/trac/boost/ticket/11756
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- boost_1_60_0.org/boost/config/platform/linux.hpp   2015-12-08 19:55:19.000000000 +0100
-+++ boost_1_60_0/boost/config/platform/linux.hpp       2016-02-06 12:35:25.692754553 +0100
-@@ -47,6 +47,13 @@
- #endif
- //
-+// uClibc has no support for fenv.h
-+//
-+#if defined(__UCLIBC__)
-+#  define BOOST_NO_FENV_H
-+#endif
-+
-+//
- // If glibc is past version 2 then we definitely have
- // gettimeofday, earlier versions may or may not have it:
- //
index 3261e5a1a1fa137bcaa7493934967126b49fe06f..368ce8ed69eff2b85e31e46a563cde06b581efe3 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Busybox version: 1.24.1
-# Sat Mar 12 15:36:27 2016
+# Busybox version: 1.24.2
+# Mon May  9 18:42:38 2016
 #
 CONFIG_HAVE_DOT_CONFIG=y
 
@@ -364,9 +364,9 @@ CONFIG_DEFAULT_SETFONT_DIR=""
 #
 # CONFIG_MKTEMP is not set
 # CONFIG_PIPE_PROGRESS is not set
-# CONFIG_RUN_PARTS is not set
-# CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS is not set
-# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
+CONFIG_RUN_PARTS=y
+CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
+CONFIG_FEATURE_RUN_PARTS_FANCY=y
 CONFIG_START_STOP_DAEMON=y
 CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
 CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
@@ -384,7 +384,7 @@ CONFIG_WHICH=y
 # CONFIG_FEATURE_DIFF_DIR is not set
 # CONFIG_ED is not set
 # CONFIG_PATCH is not set
-# CONFIG_SED is not set
+CONFIG_SED=y
 # CONFIG_VI is not set
 CONFIG_FEATURE_VI_MAX_LEN=0
 # CONFIG_FEATURE_VI_8BIT is not set
@@ -759,14 +759,14 @@ CONFIG_FEATURE_BEEP_LENGTH_MS=0
 # CONFIG_NAMEIF is not set
 # CONFIG_FEATURE_NAMEIF_EXTENDED is not set
 # CONFIG_NBDCLIENT is not set
-# CONFIG_NC is not set
-# CONFIG_NC_SERVER is not set
+CONFIG_NC=y
+CONFIG_NC_SERVER=y
 # CONFIG_NC_EXTRA is not set
 # CONFIG_NC_110_COMPAT is not set
-# CONFIG_PING is not set
+CONFIG_PING=y
 # CONFIG_PING6 is not set
 # CONFIG_FEATURE_FANCY_PING is not set
-# CONFIG_WGET is not set
+CONFIG_WGET=y
 # CONFIG_FEATURE_WGET_STATUSBAR is not set
 # CONFIG_FEATURE_WGET_AUTHENTICATION is not set
 # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
@@ -806,23 +806,23 @@ CONFIG_HOSTNAME=y
 # CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set
 # CONFIG_FEATURE_HTTPD_PROXY is not set
 # CONFIG_FEATURE_HTTPD_GZIP is not set
-# CONFIG_IFCONFIG is not set
-# CONFIG_FEATURE_IFCONFIG_STATUS is not set
+CONFIG_IFCONFIG=y
+CONFIG_FEATURE_IFCONFIG_STATUS=y
 # CONFIG_FEATURE_IFCONFIG_SLIP is not set
 # CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
-# CONFIG_FEATURE_IFCONFIG_HW is not set
-# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
+CONFIG_FEATURE_IFCONFIG_HW=y
+CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS=y
 # CONFIG_IFENSLAVE is not set
 # CONFIG_IFPLUGD is not set
-# CONFIG_IFUPDOWN is not set
-CONFIG_IFUPDOWN_IFSTATE_PATH=""
-# CONFIG_FEATURE_IFUPDOWN_IP is not set
-# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set
+CONFIG_IFUPDOWN=y
+CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
+CONFIG_FEATURE_IFUPDOWN_IP=y
+CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN=y
 # CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN is not set
-# CONFIG_FEATURE_IFUPDOWN_IPV4 is not set
+CONFIG_FEATURE_IFUPDOWN_IPV4=y
 # CONFIG_FEATURE_IFUPDOWN_IPV6 is not set
 # CONFIG_FEATURE_IFUPDOWN_MAPPING is not set
-# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
+CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP=y
 # CONFIG_INETD is not set
 # CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set
 # CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set
@@ -830,37 +830,37 @@ CONFIG_IFUPDOWN_IFSTATE_PATH=""
 # CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set
 # CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set
 # CONFIG_FEATURE_INETD_RPC is not set
-# CONFIG_IP is not set
-# CONFIG_FEATURE_IP_ADDRESS is not set
-# CONFIG_FEATURE_IP_LINK is not set
-# CONFIG_FEATURE_IP_ROUTE is not set
-CONFIG_FEATURE_IP_ROUTE_DIR=""
+CONFIG_IP=y
+CONFIG_FEATURE_IP_ADDRESS=y
+CONFIG_FEATURE_IP_LINK=y
+CONFIG_FEATURE_IP_ROUTE=y
+CONFIG_FEATURE_IP_ROUTE_DIR="/etc/iproute2"
 # CONFIG_FEATURE_IP_TUNNEL is not set
 # CONFIG_FEATURE_IP_RULE is not set
-# CONFIG_FEATURE_IP_SHORT_FORMS is not set
+CONFIG_FEATURE_IP_SHORT_FORMS=y
 # CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
-# CONFIG_IPADDR is not set
-# CONFIG_IPLINK is not set
-# CONFIG_IPROUTE is not set
+CONFIG_IPADDR=y
+CONFIG_IPLINK=y
+CONFIG_IPROUTE=y
 # CONFIG_IPTUNNEL is not set
 # CONFIG_IPRULE is not set
 # CONFIG_IPCALC is not set
 # CONFIG_FEATURE_IPCALC_FANCY is not set
 # CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
-# CONFIG_NETSTAT is not set
+CONFIG_NETSTAT=y
 # CONFIG_FEATURE_NETSTAT_WIDE is not set
-# CONFIG_FEATURE_NETSTAT_PRG is not set
+CONFIG_FEATURE_NETSTAT_PRG=y
 # CONFIG_NSLOOKUP is not set
 # CONFIG_NTPD is not set
 # CONFIG_FEATURE_NTPD_SERVER is not set
 # CONFIG_FEATURE_NTPD_CONF is not set
 # CONFIG_PSCAN is not set
-# CONFIG_ROUTE is not set
+CONFIG_ROUTE=y
 # CONFIG_SLATTACH is not set
 # CONFIG_TCPSVD is not set
-# CONFIG_TELNET is not set
-# CONFIG_FEATURE_TELNET_TTYPE is not set
-# CONFIG_FEATURE_TELNET_AUTOLOGIN is not set
+CONFIG_TELNET=y
+CONFIG_FEATURE_TELNET_TTYPE=y
+CONFIG_FEATURE_TELNET_AUTOLOGIN=y
 # CONFIG_TELNETD is not set
 # CONFIG_FEATURE_TELNETD_STANDALONE is not set
 # CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
@@ -885,16 +885,16 @@ CONFIG_FEATURE_IP_ROUTE_DIR=""
 # CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
 # CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
 CONFIG_DHCPD_LEASES_FILE=""
-# CONFIG_UDHCPC is not set
+CONFIG_UDHCPC=y
 # CONFIG_FEATURE_UDHCPC_ARPING is not set
-# CONFIG_FEATURE_UDHCPC_SANITIZEOPT is not set
+CONFIG_FEATURE_UDHCPC_SANITIZEOPT=y
 # CONFIG_FEATURE_UDHCP_PORT is not set
-CONFIG_UDHCP_DEBUG=0
+CONFIG_UDHCP_DEBUG=9
 # CONFIG_FEATURE_UDHCP_RFC3397 is not set
 # CONFIG_FEATURE_UDHCP_8021Q is not set
-CONFIG_UDHCPC_DEFAULT_SCRIPT=""
-CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=0
-CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
+CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script"
+CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
+CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n"
 # CONFIG_UDPSVD is not set
 # CONFIG_VCONFIG is not set
 # CONFIG_ZCIP is not set
diff --git a/package/connman/0001-xtables.patch b/package/connman/0001-xtables.patch
deleted file mode 100644 (file)
index 277fce6..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-Use some preprocessor tricks to route around incompatibilies seen
-between newer Linux kernels and glibc when both net/if.h and linux/if.h
-are included in the same source.
-
-Patch from gentoo, see https://bugs.gentoo.org/show_bug.cgi?id=577584
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- connman-1.31/src/iptables.c.old    2016-03-22 20:12:47.829460752 -0700
-+++ connman-1.31/src/iptables.c        2016-03-22 21:33:36.835384724 -0700
-@@ -28,11 +28,11 @@
- #include <stdio.h>
- #include <string.h>
- #include <unistd.h>
- #include <sys/errno.h>
- #include <sys/socket.h>
--#include <xtables.h>
-+#include "connman_xtables.h"
- #include <inttypes.h>
- #include <linux/netfilter_ipv4/ip_tables.h>
- #include "connman.h"
---- connman-1.31/src/firewall.c.old    2016-03-22 21:29:01.959472262 -0700
-+++ connman-1.31/src/firewall.c        2016-03-22 21:33:53.048144181 -0700
-@@ -23,11 +23,11 @@
- #include <config.h>
- #endif
- #include <errno.h>
--#include <xtables.h>
-+#include "connman_xtables.h"
- #include <linux/netfilter_ipv4/ip_tables.h>
- #include "connman.h"
- #define CHAIN_PREFIX "connman-"
---- /dev/null  2016-03-18 06:21:16.372989086 -0700
-+++ connman-1.31/include/connman_xtables.h     2016-03-22 21:32:21.349504786 -0700
-@@ -0,0 +1,20 @@
-+#ifndef CONNMAN_XTABLES_H
-+#define CONNMAN_XTABLES_H
-+
-+#include <linux/version.h>
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 5, 0)
-+#include <xtables.h>
-+#else
-+#ifdef __USE_MISC
-+#define GENTOO_USE_MISC __USE_MISC
-+#undef __USE_MISC
-+#endif
-+
-+#include <xtables.h>
-+
-+#ifdef GENTOO_USE_MISC
-+#define __USE_MISC GENTOO_USE_MISC
-+#undef GENTOO_USE_MISC
-+#endif
-+#endif
-+#endif
diff --git a/package/cups/0004-remove-pie.patch b/package/cups/0004-remove-pie.patch
new file mode 100644 (file)
index 0000000..3d81941
--- /dev/null
@@ -0,0 +1,21 @@
+Remove PIE flags from the build
+
+Generating a statically linked binary built with PIE requires the
+Scrt1.o file, which isn't part of Buildroot uClibc toolchains. To
+solve this, we simply disable the PIE flags.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makedefs.in
+===================================================================
+--- a/Makedefs.in
++++ b/Makedefs.in
+@@ -142,7 +142,7 @@
+ IPPFIND_MAN   =       @IPPFIND_MAN@
+ LDFLAGS               =       -L../cgi-bin -L../cups -L../filter -L../ppdc \
+                       -L../scheduler @LDARCHFLAGS@ \
+-                      @LDFLAGS@ @RELROFLAGS@ @PIEFLAGS@ $(OPTIM)
++                      @LDFLAGS@ @RELROFLAGS@ $(OPTIM)
+ LINKCUPS      =       @LINKCUPS@ $(LIBGSSAPI) $(DNSSDLIBS) $(LIBZ)
+ LINKCUPSIMAGE =       @LINKCUPSIMAGE@
+ LIBS          =       $(LINKCUPS) $(COMMONLIBS)
diff --git a/package/erlang-p1-stringprep/0001-Stdint-is-required-on-windows.patch b/package/erlang-p1-stringprep/0001-Stdint-is-required-on-windows.patch
new file mode 100644 (file)
index 0000000..7385503
--- /dev/null
@@ -0,0 +1,28 @@
+From f5a2b8b78afb253630ee8833f16f131b3b52701e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Pawe=C5=82=20Chmielowski?= <pchmielowski@process-one.net>
+Date: Mon, 29 Feb 2016 10:56:32 +0100
+Subject: [PATCH] Stdint is required on windows
+
+[Backport from upstream commit
+4fc5cae81122540fff983e40dda1fa905c329fd0, which happens to not only
+fix the build on Windows, but also with the musl C library.]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ c_src/stringprep.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/c_src/stringprep.cpp b/c_src/stringprep.cpp
+index 461cf09..26215cf 100644
+--- a/c_src/stringprep.cpp
++++ b/c_src/stringprep.cpp
+@@ -19,6 +19,7 @@
+  */
+ #include <string.h>
++#include <stdint.h>
+ #include <erl_nif.h>
+ #include "uni_data.c"
+-- 
+2.7.4
+
index 76df409b6ce88be76fd291b45ac554182517893b..cda06e7678d44edb6cf60b0f5dabbae63f057407 100644 (file)
@@ -15,7 +15,7 @@ config BR2_PACKAGE_EUDEV
          eudev requires a Linux kernel >= 2.6.34: it relies on devtmpfs
          and inotify.
 
-         http://dev.gentoo.org/~blueness/eudev
+         https://wiki.gentoo.org/wiki/Project:Eudev
 
 if BR2_PACKAGE_EUDEV
 
diff --git a/package/expat/0001-fix-CVE-2016-0718.patch b/package/expat/0001-fix-CVE-2016-0718.patch
new file mode 100644 (file)
index 0000000..8530a0e
--- /dev/null
@@ -0,0 +1,757 @@
+From cdfcb1b5c95e93b00ae9e9d25708b4a3bee72c15 Mon Sep 17 00:00:00 2001
+From: Sebastian Pipping <sebastian@pipping.org>
+Date: Mon, 2 May 2016 00:02:44 +0200
+Subject: [PATCH] Address CVE-2016-0718 (/patch/ version 2.2.1)
+
+* Out of bounds memory access when doing text conversion on malformed input
+* Integer overflow related to memory allocation
+
+Reported by Gustavo Grieco
+
+Patch credits go to
+* Christian Heimes
+* Karl Waclawek
+* Gustavo Grieco
+* Sebastian Pipping
+* Pascal Cuoq
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ lib/xmlparse.c    |  34 +++++++++-----
+ lib/xmltok.c      | 115 +++++++++++++++++++++++++++++++++++-------------
+ lib/xmltok.h      |  10 ++++-
+ lib/xmltok_impl.c |  62 +++++++++++++-------------
+ 4 files changed, 146 insertions(+), 75 deletions(-)
+
+diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c
+index e308c79..13e080d 100644
+--- a/lib/xmlparse.c
++++ b/lib/xmlparse.c
+@@ -2426,11 +2426,11 @@ doContent(XML_Parser parser,
+           for (;;) {
+             int bufSize;
+             int convLen;
+-            XmlConvert(enc,
++            const enum XML_Convert_Result convert_res = XmlConvert(enc,
+                        &fromPtr, rawNameEnd,
+                        (ICHAR **)&toPtr, (ICHAR *)tag->bufEnd - 1);
+             convLen = (int)(toPtr - (XML_Char *)tag->buf);
+-            if (fromPtr == rawNameEnd) {
++            if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) {
+               tag->name.strLen = convLen;
+               break;
+             }
+@@ -2651,11 +2651,11 @@ doContent(XML_Parser parser,
+           if (MUST_CONVERT(enc, s)) {
+             for (;;) {
+               ICHAR *dataPtr = (ICHAR *)dataBuf;
+-              XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd);
++              const enum XML_Convert_Result convert_res = XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd);
+               *eventEndPP = s;
+               charDataHandler(handlerArg, dataBuf,
+                               (int)(dataPtr - (ICHAR *)dataBuf));
+-              if (s == next)
++              if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE))
+                 break;
+               *eventPP = s;
+             }
+@@ -3261,11 +3261,11 @@ doCdataSection(XML_Parser parser,
+           if (MUST_CONVERT(enc, s)) {
+             for (;;) {
+               ICHAR *dataPtr = (ICHAR *)dataBuf;
+-              XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd);
++              const enum XML_Convert_Result convert_res = XmlConvert(enc, &s, next, &dataPtr, (ICHAR *)dataBufEnd);
+               *eventEndPP = next;
+               charDataHandler(handlerArg, dataBuf,
+                               (int)(dataPtr - (ICHAR *)dataBuf));
+-              if (s == next)
++              if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE))
+                 break;
+               *eventPP = s;
+             }
+@@ -5342,6 +5342,7 @@ reportDefault(XML_Parser parser, const ENCODING *enc,
+               const char *s, const char *end)
+ {
+   if (MUST_CONVERT(enc, s)) {
++    enum XML_Convert_Result convert_res;
+     const char **eventPP;
+     const char **eventEndPP;
+     if (enc == encoding) {
+@@ -5354,11 +5355,11 @@ reportDefault(XML_Parser parser, const ENCODING *enc,
+     }
+     do {
+       ICHAR *dataPtr = (ICHAR *)dataBuf;
+-      XmlConvert(enc, &s, end, &dataPtr, (ICHAR *)dataBufEnd);
++      convert_res = XmlConvert(enc, &s, end, &dataPtr, (ICHAR *)dataBufEnd);
+       *eventEndPP = s;
+       defaultHandler(handlerArg, dataBuf, (int)(dataPtr - (ICHAR *)dataBuf));
+       *eventPP = s;
+-    } while (s != end);
++    } while ((convert_res != XML_CONVERT_COMPLETED) && (convert_res != XML_CONVERT_INPUT_INCOMPLETE));
+   }
+   else
+     defaultHandler(handlerArg, (XML_Char *)s, (int)((XML_Char *)end - (XML_Char *)s));
+@@ -6163,8 +6164,8 @@ poolAppend(STRING_POOL *pool, const ENCODING *enc,
+   if (!pool->ptr && !poolGrow(pool))
+     return NULL;
+   for (;;) {
+-    XmlConvert(enc, &ptr, end, (ICHAR **)&(pool->ptr), (ICHAR *)pool->end);
+-    if (ptr == end)
++    const enum XML_Convert_Result convert_res = XmlConvert(enc, &ptr, end, (ICHAR **)&(pool->ptr), (ICHAR *)pool->end);
++    if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE))
+       break;
+     if (!poolGrow(pool))
+       return NULL;
+@@ -6248,8 +6249,13 @@ poolGrow(STRING_POOL *pool)
+     }
+   }
+   if (pool->blocks && pool->start == pool->blocks->s) {
+-    int blockSize = (int)(pool->end - pool->start)*2;
+-    BLOCK *temp = (BLOCK *)
++    BLOCK *temp;
++    int blockSize = (int)((unsigned)(pool->end - pool->start)*2U);
++
++    if (blockSize < 0)
++      return XML_FALSE;
++
++    temp = (BLOCK *)
+       pool->mem->realloc_fcn(pool->blocks,
+                              (offsetof(BLOCK, s)
+                               + blockSize * sizeof(XML_Char)));
+@@ -6264,6 +6270,10 @@ poolGrow(STRING_POOL *pool)
+   else {
+     BLOCK *tem;
+     int blockSize = (int)(pool->end - pool->start);
++
++    if (blockSize < 0)
++      return XML_FALSE;
++
+     if (blockSize < INIT_BLOCK_SIZE)
+       blockSize = INIT_BLOCK_SIZE;
+     else
+diff --git a/expat/lib/xmltok.c b/expat/lib/xmltok.c
+index bf09dfc..cb98ce1 100644
+--- a/lib/xmltok.c
++++ b/lib/xmltok.c
+@@ -318,39 +318,55 @@ enum {  /* UTF8_cvalN is value of masked first byte of N byte sequence */
+   UTF8_cval4 = 0xf0
+ };
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ utf8_toUtf8(const ENCODING *enc,
+             const char **fromP, const char *fromLim,
+             char **toP, const char *toLim)
+ {
++  enum XML_Convert_Result res = XML_CONVERT_COMPLETED;
+   char *to;
+   const char *from;
+   if (fromLim - *fromP > toLim - *toP) {
+     /* Avoid copying partial characters. */
++    res = XML_CONVERT_OUTPUT_EXHAUSTED;
+     for (fromLim = *fromP + (toLim - *toP); fromLim > *fromP; fromLim--)
+       if (((unsigned char)fromLim[-1] & 0xc0) != 0x80)
+         break;
+   }
+-  for (to = *toP, from = *fromP; from != fromLim; from++, to++)
++  for (to = *toP, from = *fromP; (from < fromLim) && (to < toLim); from++, to++)
+     *to = *from;
+   *fromP = from;
+   *toP = to;
++
++  if ((to == toLim) && (from < fromLim))
++    return XML_CONVERT_OUTPUT_EXHAUSTED;
++  else
++    return res;
+ }
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ utf8_toUtf16(const ENCODING *enc,
+              const char **fromP, const char *fromLim,
+              unsigned short **toP, const unsigned short *toLim)
+ {
++  enum XML_Convert_Result res = XML_CONVERT_COMPLETED;
+   unsigned short *to = *toP;
+   const char *from = *fromP;
+-  while (from != fromLim && to != toLim) {
++  while (from < fromLim && to < toLim) {
+     switch (((struct normal_encoding *)enc)->type[(unsigned char)*from]) {
+     case BT_LEAD2:
++      if (fromLim - from < 2) {
++        res = XML_CONVERT_INPUT_INCOMPLETE;
++        break;
++      }
+       *to++ = (unsigned short)(((from[0] & 0x1f) << 6) | (from[1] & 0x3f));
+       from += 2;
+       break;
+     case BT_LEAD3:
++      if (fromLim - from < 3) {
++        res = XML_CONVERT_INPUT_INCOMPLETE;
++        break;
++      }
+       *to++ = (unsigned short)(((from[0] & 0xf) << 12)
+                                | ((from[1] & 0x3f) << 6) | (from[2] & 0x3f));
+       from += 3;
+@@ -358,8 +374,14 @@ utf8_toUtf16(const ENCODING *enc,
+     case BT_LEAD4:
+       {
+         unsigned long n;
+-        if (to + 1 == toLim)
++        if (toLim - to < 2) {
++          res = XML_CONVERT_OUTPUT_EXHAUSTED;
+           goto after;
++        }
++        if (fromLim - from < 4) {
++          res = XML_CONVERT_INPUT_INCOMPLETE;
++          goto after;
++        }
+         n = ((from[0] & 0x7) << 18) | ((from[1] & 0x3f) << 12)
+             | ((from[2] & 0x3f) << 6) | (from[3] & 0x3f);
+         n -= 0x10000;
+@@ -377,6 +399,7 @@ utf8_toUtf16(const ENCODING *enc,
+ after:
+   *fromP = from;
+   *toP = to;
++  return res;
+ }
+ #ifdef XML_NS
+@@ -425,7 +448,7 @@ static const struct normal_encoding internal_utf8_encoding = {
+   STANDARD_VTABLE(sb_) NORMAL_VTABLE(utf8_)
+ };
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ latin1_toUtf8(const ENCODING *enc,
+               const char **fromP, const char *fromLim,
+               char **toP, const char *toLim)
+@@ -433,30 +456,35 @@ latin1_toUtf8(const ENCODING *enc,
+   for (;;) {
+     unsigned char c;
+     if (*fromP == fromLim)
+-      break;
++      return XML_CONVERT_COMPLETED;
+     c = (unsigned char)**fromP;
+     if (c & 0x80) {
+       if (toLim - *toP < 2)
+-        break;
++        return XML_CONVERT_OUTPUT_EXHAUSTED;
+       *(*toP)++ = (char)((c >> 6) | UTF8_cval2);
+       *(*toP)++ = (char)((c & 0x3f) | 0x80);
+       (*fromP)++;
+     }
+     else {
+       if (*toP == toLim)
+-        break;
++        return XML_CONVERT_OUTPUT_EXHAUSTED;
+       *(*toP)++ = *(*fromP)++;
+     }
+   }
+ }
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ latin1_toUtf16(const ENCODING *enc,
+                const char **fromP, const char *fromLim,
+                unsigned short **toP, const unsigned short *toLim)
+ {
+-  while (*fromP != fromLim && *toP != toLim)
++  while (*fromP < fromLim && *toP < toLim)
+     *(*toP)++ = (unsigned char)*(*fromP)++;
++
++  if ((*toP == toLim) && (*fromP < fromLim))
++    return XML_CONVERT_OUTPUT_EXHAUSTED;
++  else
++    return XML_CONVERT_COMPLETED;
+ }
+ #ifdef XML_NS
+@@ -483,13 +511,18 @@ static const struct normal_encoding latin1_encoding = {
+   STANDARD_VTABLE(sb_)
+ };
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ ascii_toUtf8(const ENCODING *enc,
+              const char **fromP, const char *fromLim,
+              char **toP, const char *toLim)
+ {
+-  while (*fromP != fromLim && *toP != toLim)
++  while (*fromP < fromLim && *toP < toLim)
+     *(*toP)++ = *(*fromP)++;
++
++  if ((*toP == toLim) && (*fromP < fromLim))
++    return XML_CONVERT_OUTPUT_EXHAUSTED;
++  else
++    return XML_CONVERT_COMPLETED;
+ }
+ #ifdef XML_NS
+@@ -536,13 +569,14 @@ unicode_byte_type(char hi, char lo)
+ }
+ #define DEFINE_UTF16_TO_UTF8(E) \
+-static void  PTRCALL \
++static enum XML_Convert_Result  PTRCALL \
+ E ## toUtf8(const ENCODING *enc, \
+             const char **fromP, const char *fromLim, \
+             char **toP, const char *toLim) \
+ { \
+-  const char *from; \
+-  for (from = *fromP; from != fromLim; from += 2) { \
++  const char *from = *fromP; \
++  fromLim = from + (((fromLim - from) >> 1) << 1);  /* shrink to even */ \
++  for (; from < fromLim; from += 2) { \
+     int plane; \
+     unsigned char lo2; \
+     unsigned char lo = GET_LO(from); \
+@@ -552,7 +586,7 @@ E ## toUtf8(const ENCODING *enc, \
+       if (lo < 0x80) { \
+         if (*toP == toLim) { \
+           *fromP = from; \
+-          return; \
++          return XML_CONVERT_OUTPUT_EXHAUSTED; \
+         } \
+         *(*toP)++ = lo; \
+         break; \
+@@ -562,7 +596,7 @@ E ## toUtf8(const ENCODING *enc, \
+     case 0x4: case 0x5: case 0x6: case 0x7: \
+       if (toLim -  *toP < 2) { \
+         *fromP = from; \
+-        return; \
++        return XML_CONVERT_OUTPUT_EXHAUSTED; \
+       } \
+       *(*toP)++ = ((lo >> 6) | (hi << 2) |  UTF8_cval2); \
+       *(*toP)++ = ((lo & 0x3f) | 0x80); \
+@@ -570,7 +604,7 @@ E ## toUtf8(const ENCODING *enc, \
+     default: \
+       if (toLim -  *toP < 3)  { \
+         *fromP = from; \
+-        return; \
++        return XML_CONVERT_OUTPUT_EXHAUSTED; \
+       } \
+       /* 16 bits divided 4, 6, 6 amongst 3 bytes */ \
+       *(*toP)++ = ((hi >> 4) | UTF8_cval3); \
+@@ -580,7 +614,11 @@ E ## toUtf8(const ENCODING *enc, \
+     case 0xD8: case 0xD9: case 0xDA: case 0xDB: \
+       if (toLim -  *toP < 4) { \
+         *fromP = from; \
+-        return; \
++        return XML_CONVERT_OUTPUT_EXHAUSTED; \
++      } \
++      if (fromLim - from < 4) { \
++        *fromP = from; \
++        return XML_CONVERT_INPUT_INCOMPLETE; \
+       } \
+       plane = (((hi & 0x3) << 2) | ((lo >> 6) & 0x3)) + 1; \
+       *(*toP)++ = ((plane >> 2) | UTF8_cval4); \
+@@ -596,20 +634,32 @@ E ## toUtf8(const ENCODING *enc, \
+     } \
+   } \
+   *fromP = from; \
++  if (from < fromLim) \
++    return XML_CONVERT_INPUT_INCOMPLETE; \
++  else \
++    return XML_CONVERT_COMPLETED; \
+ }
+ #define DEFINE_UTF16_TO_UTF16(E) \
+-static void  PTRCALL \
++static enum XML_Convert_Result  PTRCALL \
+ E ## toUtf16(const ENCODING *enc, \
+              const char **fromP, const char *fromLim, \
+              unsigned short **toP, const unsigned short *toLim) \
+ { \
++  enum XML_Convert_Result res = XML_CONVERT_COMPLETED; \
++  fromLim = *fromP + (((fromLim - *fromP) >> 1) << 1);  /* shrink to even */ \
+   /* Avoid copying first half only of surrogate */ \
+   if (fromLim - *fromP > ((toLim - *toP) << 1) \
+-      && (GET_HI(fromLim - 2) & 0xF8) == 0xD8) \
++      && (GET_HI(fromLim - 2) & 0xF8) == 0xD8) { \
+     fromLim -= 2; \
+-  for (; *fromP != fromLim && *toP != toLim; *fromP += 2) \
++    res = XML_CONVERT_INPUT_INCOMPLETE; \
++  } \
++  for (; *fromP < fromLim && *toP < toLim; *fromP += 2) \
+     *(*toP)++ = (GET_HI(*fromP) << 8) | GET_LO(*fromP); \
++  if ((*toP == toLim) && (*fromP < fromLim)) \
++    return XML_CONVERT_OUTPUT_EXHAUSTED; \
++  else \
++    return res; \
+ }
+ #define SET2(ptr, ch) \
+@@ -1288,7 +1338,7 @@ unknown_isInvalid(const ENCODING *enc, const char *p)
+   return (c & ~0xFFFF) || checkCharRefNumber(c) < 0;
+ }
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ unknown_toUtf8(const ENCODING *enc,
+                const char **fromP, const char *fromLim,
+                char **toP, const char *toLim)
+@@ -1299,21 +1349,21 @@ unknown_toUtf8(const ENCODING *enc,
+     const char *utf8;
+     int n;
+     if (*fromP == fromLim)
+-      break;
++      return XML_CONVERT_COMPLETED;
+     utf8 = uenc->utf8[(unsigned char)**fromP];
+     n = *utf8++;
+     if (n == 0) {
+       int c = uenc->convert(uenc->userData, *fromP);
+       n = XmlUtf8Encode(c, buf);
+       if (n > toLim - *toP)
+-        break;
++        return XML_CONVERT_OUTPUT_EXHAUSTED;
+       utf8 = buf;
+       *fromP += (AS_NORMAL_ENCODING(enc)->type[(unsigned char)**fromP]
+                  - (BT_LEAD2 - 2));
+     }
+     else {
+       if (n > toLim - *toP)
+-        break;
++        return XML_CONVERT_OUTPUT_EXHAUSTED;
+       (*fromP)++;
+     }
+     do {
+@@ -1322,13 +1372,13 @@ unknown_toUtf8(const ENCODING *enc,
+   }
+ }
+-static void PTRCALL
++static enum XML_Convert_Result PTRCALL
+ unknown_toUtf16(const ENCODING *enc,
+                 const char **fromP, const char *fromLim,
+                 unsigned short **toP, const unsigned short *toLim)
+ {
+   const struct unknown_encoding *uenc = AS_UNKNOWN_ENCODING(enc);
+-  while (*fromP != fromLim && *toP != toLim) {
++  while (*fromP < fromLim && *toP < toLim) {
+     unsigned short c = uenc->utf16[(unsigned char)**fromP];
+     if (c == 0) {
+       c = (unsigned short)
+@@ -1340,6 +1390,11 @@ unknown_toUtf16(const ENCODING *enc,
+       (*fromP)++;
+     *(*toP)++ = c;
+   }
++
++  if ((*toP == toLim) && (*fromP < fromLim))
++    return XML_CONVERT_OUTPUT_EXHAUSTED;
++  else
++    return XML_CONVERT_COMPLETED;
+ }
+ ENCODING *
+@@ -1503,7 +1558,7 @@ initScan(const ENCODING * const *encodingTable,
+ {
+   const ENCODING **encPtr;
+-  if (ptr == end)
++  if (ptr >= end)
+     return XML_TOK_NONE;
+   encPtr = enc->encPtr;
+   if (ptr + 1 == end) {
+diff --git a/expat/lib/xmltok.h b/expat/lib/xmltok.h
+index ca867aa..752007e 100644
+--- a/lib/xmltok.h
++++ b/lib/xmltok.h
+@@ -130,6 +130,12 @@ typedef int (PTRCALL *SCANNER)(const ENCODING *,
+                                const char *,
+                                const char **);
++enum XML_Convert_Result {
++  XML_CONVERT_COMPLETED = 0,
++  XML_CONVERT_INPUT_INCOMPLETE = 1,
++  XML_CONVERT_OUTPUT_EXHAUSTED = 2  /* and therefore potentially input remaining as well */
++};
++
+ struct encoding {
+   SCANNER scanners[XML_N_STATES];
+   SCANNER literalScanners[XML_N_LITERAL_TYPES];
+@@ -158,12 +164,12 @@ struct encoding {
+                             const char *ptr,
+                             const char *end,
+                             const char **badPtr);
+-  void (PTRCALL *utf8Convert)(const ENCODING *enc,
++  enum XML_Convert_Result (PTRCALL *utf8Convert)(const ENCODING *enc,
+                               const char **fromP,
+                               const char *fromLim,
+                               char **toP,
+                               const char *toLim);
+-  void (PTRCALL *utf16Convert)(const ENCODING *enc,
++  enum XML_Convert_Result (PTRCALL *utf16Convert)(const ENCODING *enc,
+                                const char **fromP,
+                                const char *fromLim,
+                                unsigned short **toP,
+diff --git a/expat/lib/xmltok_impl.c b/expat/lib/xmltok_impl.c
+index 9c2895b..6c5a3ba 100644
+--- a/lib/xmltok_impl.c
++++ b/lib/xmltok_impl.c
+@@ -93,13 +93,13 @@ static int PTRCALL
+ PREFIX(scanComment)(const ENCODING *enc, const char *ptr,
+                     const char *end, const char **nextTokPtr)
+ {
+-  if (ptr != end) {
++  if (ptr < end) {
+     if (!CHAR_MATCHES(enc, ptr, ASCII_MINUS)) {
+       *nextTokPtr = ptr;
+       return XML_TOK_INVALID;
+     }
+     ptr += MINBPC(enc);
+-    while (ptr != end) {
++    while (ptr < end) {
+       switch (BYTE_TYPE(enc, ptr)) {
+       INVALID_CASES(ptr, nextTokPtr)
+       case BT_MINUS:
+@@ -147,7 +147,7 @@ PREFIX(scanDecl)(const ENCODING *enc, const char *ptr,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     case BT_PERCNT:
+       if (ptr + MINBPC(enc) == end)
+@@ -233,7 +233,7 @@ PREFIX(scanPi)(const ENCODING *enc, const char *ptr,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+     case BT_S: case BT_CR: case BT_LF:
+@@ -242,7 +242,7 @@ PREFIX(scanPi)(const ENCODING *enc, const char *ptr,
+         return XML_TOK_INVALID;
+       }
+       ptr += MINBPC(enc);
+-      while (ptr != end) {
++      while (ptr < end) {
+         switch (BYTE_TYPE(enc, ptr)) {
+         INVALID_CASES(ptr, nextTokPtr)
+         case BT_QUEST:
+@@ -305,7 +305,7 @@ static int PTRCALL
+ PREFIX(cdataSectionTok)(const ENCODING *enc, const char *ptr,
+                         const char *end, const char **nextTokPtr)
+ {
+-  if (ptr == end)
++  if (ptr >= end)
+     return XML_TOK_NONE;
+   if (MINBPC(enc) > 1) {
+     size_t n = end - ptr;
+@@ -348,7 +348,7 @@ PREFIX(cdataSectionTok)(const ENCODING *enc, const char *ptr,
+     ptr += MINBPC(enc);
+     break;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+ #define LEAD_CASE(n) \
+     case BT_LEAD ## n: \
+@@ -391,11 +391,11 @@ PREFIX(scanEndTag)(const ENCODING *enc, const char *ptr,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+     case BT_S: case BT_CR: case BT_LF:
+-      for (ptr += MINBPC(enc); ptr != end; ptr += MINBPC(enc)) {
++      for (ptr += MINBPC(enc); ptr < end; ptr += MINBPC(enc)) {
+         switch (BYTE_TYPE(enc, ptr)) {
+         case BT_S: case BT_CR: case BT_LF:
+           break;
+@@ -432,7 +432,7 @@ static int PTRCALL
+ PREFIX(scanHexCharRef)(const ENCODING *enc, const char *ptr,
+                        const char *end, const char **nextTokPtr)
+ {
+-  if (ptr != end) {
++  if (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     case BT_DIGIT:
+     case BT_HEX:
+@@ -441,7 +441,7 @@ PREFIX(scanHexCharRef)(const ENCODING *enc, const char *ptr,
+       *nextTokPtr = ptr;
+       return XML_TOK_INVALID;
+     }
+-    for (ptr += MINBPC(enc); ptr != end; ptr += MINBPC(enc)) {
++    for (ptr += MINBPC(enc); ptr < end; ptr += MINBPC(enc)) {
+       switch (BYTE_TYPE(enc, ptr)) {
+       case BT_DIGIT:
+       case BT_HEX:
+@@ -464,7 +464,7 @@ static int PTRCALL
+ PREFIX(scanCharRef)(const ENCODING *enc, const char *ptr,
+                     const char *end, const char **nextTokPtr)
+ {
+-  if (ptr != end) {
++  if (ptr < end) {
+     if (CHAR_MATCHES(enc, ptr, ASCII_x))
+       return PREFIX(scanHexCharRef)(enc, ptr + MINBPC(enc), end, nextTokPtr);
+     switch (BYTE_TYPE(enc, ptr)) {
+@@ -474,7 +474,7 @@ PREFIX(scanCharRef)(const ENCODING *enc, const char *ptr,
+       *nextTokPtr = ptr;
+       return XML_TOK_INVALID;
+     }
+-    for (ptr += MINBPC(enc); ptr != end; ptr += MINBPC(enc)) {
++    for (ptr += MINBPC(enc); ptr < end; ptr += MINBPC(enc)) {
+       switch (BYTE_TYPE(enc, ptr)) {
+       case BT_DIGIT:
+         break;
+@@ -506,7 +506,7 @@ PREFIX(scanRef)(const ENCODING *enc, const char *ptr, const char *end,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+     case BT_SEMI:
+@@ -529,7 +529,7 @@ PREFIX(scanAtts)(const ENCODING *enc, const char *ptr, const char *end,
+ #ifdef XML_NS
+   int hadColon = 0;
+ #endif
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+ #ifdef XML_NS
+@@ -716,7 +716,7 @@ PREFIX(scanLt)(const ENCODING *enc, const char *ptr, const char *end,
+   hadColon = 0;
+ #endif
+   /* we have a start-tag */
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+ #ifdef XML_NS
+@@ -740,7 +740,7 @@ PREFIX(scanLt)(const ENCODING *enc, const char *ptr, const char *end,
+     case BT_S: case BT_CR: case BT_LF:
+       {
+         ptr += MINBPC(enc);
+-        while (ptr != end) {
++        while (ptr < end) {
+           switch (BYTE_TYPE(enc, ptr)) {
+           CHECK_NMSTRT_CASES(enc, ptr, end, nextTokPtr)
+           case BT_GT:
+@@ -785,7 +785,7 @@ static int PTRCALL
+ PREFIX(contentTok)(const ENCODING *enc, const char *ptr, const char *end,
+                    const char **nextTokPtr)
+ {
+-  if (ptr == end)
++  if (ptr >= end)
+     return XML_TOK_NONE;
+   if (MINBPC(enc) > 1) {
+     size_t n = end - ptr;
+@@ -832,7 +832,7 @@ PREFIX(contentTok)(const ENCODING *enc, const char *ptr, const char *end,
+     ptr += MINBPC(enc);
+     break;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+ #define LEAD_CASE(n) \
+     case BT_LEAD ## n: \
+@@ -895,7 +895,7 @@ PREFIX(scanPercent)(const ENCODING *enc, const char *ptr, const char *end,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+     case BT_SEMI:
+@@ -921,7 +921,7 @@ PREFIX(scanPoundName)(const ENCODING *enc, const char *ptr, const char *end,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+     case BT_CR: case BT_LF: case BT_S:
+@@ -941,7 +941,7 @@ PREFIX(scanLit)(int open, const ENCODING *enc,
+                 const char *ptr, const char *end,
+                 const char **nextTokPtr)
+ {
+-  while (ptr != end) {
++  while (ptr < end) {
+     int t = BYTE_TYPE(enc, ptr);
+     switch (t) {
+     INVALID_CASES(ptr, nextTokPtr)
+@@ -973,7 +973,7 @@ PREFIX(prologTok)(const ENCODING *enc, const char *ptr, const char *end,
+                   const char **nextTokPtr)
+ {
+   int tok;
+-  if (ptr == end)
++  if (ptr >= end)
+     return XML_TOK_NONE;
+   if (MINBPC(enc) > 1) {
+     size_t n = end - ptr;
+@@ -1141,7 +1141,7 @@ PREFIX(prologTok)(const ENCODING *enc, const char *ptr, const char *end,
+     *nextTokPtr = ptr;
+     return XML_TOK_INVALID;
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     CHECK_NAME_CASES(enc, ptr, end, nextTokPtr)
+     case BT_GT: case BT_RPAR: case BT_COMMA:
+@@ -1204,10 +1204,10 @@ PREFIX(attributeValueTok)(const ENCODING *enc, const char *ptr,
+                           const char *end, const char **nextTokPtr)
+ {
+   const char *start;
+-  if (ptr == end)
++  if (ptr >= end)
+     return XML_TOK_NONE;
+   start = ptr;
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+ #define LEAD_CASE(n) \
+     case BT_LEAD ## n: ptr += n; break;
+@@ -1262,10 +1262,10 @@ PREFIX(entityValueTok)(const ENCODING *enc, const char *ptr,
+                        const char *end, const char **nextTokPtr)
+ {
+   const char *start;
+-  if (ptr == end)
++  if (ptr >= end)
+     return XML_TOK_NONE;
+   start = ptr;
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+ #define LEAD_CASE(n) \
+     case BT_LEAD ## n: ptr += n; break;
+@@ -1326,7 +1326,7 @@ PREFIX(ignoreSectionTok)(const ENCODING *enc, const char *ptr,
+       end = ptr + n;
+     }
+   }
+-  while (ptr != end) {
++  while (ptr < end) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     INVALID_CASES(ptr, nextTokPtr)
+     case BT_LT:
+@@ -1373,7 +1373,7 @@ PREFIX(isPublicId)(const ENCODING *enc, const char *ptr, const char *end,
+ {
+   ptr += MINBPC(enc);
+   end -= MINBPC(enc);
+-  for (; ptr != end; ptr += MINBPC(enc)) {
++  for (; ptr < end; ptr += MINBPC(enc)) {
+     switch (BYTE_TYPE(enc, ptr)) {
+     case BT_DIGIT:
+     case BT_HEX:
+@@ -1760,7 +1760,7 @@ PREFIX(updatePosition)(const ENCODING *enc,
+     case BT_CR:
+       pos->lineNumber++;
+       ptr += MINBPC(enc);
+-      if (ptr != end && BYTE_TYPE(enc, ptr) == BT_LF)
++      if (ptr < end && BYTE_TYPE(enc, ptr) == BT_LF)
+         ptr += MINBPC(enc);
+       pos->columnNumber = (XML_Size)-1;
+       break;
+-- 
+2.8.2
+
index a273aead2c5fefcd18b427baaf286c9c8508cef1..096ff95c2955cce9890d81225f80bb9f72492cb1 100644 (file)
@@ -1,7 +1,12 @@
+config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
+       bool
+       # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
+       # ffmpeg's configure script only supports mips64 (r1) variant
+       default y if !BR2_nios2 && !BR2_mips_64r2 && !BR2_mips_64r6
+
 menuconfig BR2_PACKAGE_FFMPEG
        bool "ffmpeg"
-       # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
-       depends on !BR2_nios2
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        help
          FFmpeg is a complete, cross-platform solution to record, convert
          and stream audio and video.
index 3725fc784ff46a3ef84cecc9e00c7e0d5c4bf504..a2cd50c86734e151d144ae3521f5a8aa7ef17341 100644 (file)
@@ -2,6 +2,9 @@ config BR2_PACKAGE_FLANN
        bool "flann"
        depends on BR2_INSTALL_LIBSTDCPP
        depends on !BR2_STATIC_LIBS
+       # all gcc versions fail to build flann on Microblaze due to
+       # gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69401
+       depends on !BR2_microblaze
        help
          FLANN is a library for performing fast approximate nearest
          neighbor searches in high dimensional spaces. It contains a
@@ -22,4 +25,5 @@ config BR2_PACKAGE_FLANN_EXAMPLES
 endif
 
 comment "flann needs a toolchain w/ C++, dynamic library"
+       depends on !BR2_microblaze
        depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS
diff --git a/package/flann/flann.hash b/package/flann/flann.hash
new file mode 100644 (file)
index 0000000..08242eb
--- /dev/null
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 3fec86866987c792c3fce7ecc8ba9d09a003f5d2d1a1ad94864550aad73a5c0b  flann-3645f0c30a47267e56e5acdecfc7bac2b76bc3d5.tar.gz
index 8af58e3465126588292764baa1ca0441bbc91a9b..af86a02f044ad6e1811069f696859334b1dc7afd 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-FLANN_VERSION = 04b4a56533faf8c8228d011d05ba376038364b49
+FLANN_VERSION = 3645f0c30a47267e56e5acdecfc7bac2b76bc3d5
 FLANN_SITE = $(call github,mariusmuja,flann,$(FLANN_VERSION))
 FLANN_INSTALL_STAGING = YES
 FLANN_LICENSE = BSD-3c
index c6a84ef148c902ce1399c9db8e2efc26cae74269..cfdb9095fb50a6a9e5997e925a2dc902d22b6031 100644 (file)
@@ -1,6 +1,11 @@
+comment "flannel needs a toolchain w/ threads"
+       depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS
+       depends on !BR2_TOOLCHAIN_HAS_THREADS
+
 config BR2_PACKAGE_FLANNEL
        bool "flannel"
        depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS
+       depends on BR2_TOOLCHAIN_HAS_THREADS
        help
          Flannel is a virtual network that gives a subnet to each
          host for use with container runtimes.
index 876efe69a7972e546e06fd84c455cab0efeb9d47..b5f61a01b946259abe1a73bb1e9c7944aad20ab3 100644 (file)
@@ -14,9 +14,9 @@ FLANNEL_LICENSE_FILES = LICENSE
 FLANNEL_DEPENDENCIES = host-go
 
 FLANNEL_MAKE_ENV = \
+       $(HOST_GO_TARGET_ENV) \
        GOBIN="$(@D)/bin" \
        GOPATH="$(@D)/gopath" \
-       GOARCH=$(GO_GOARCH) \
        CGO_ENABLED=1
 
 FLANNEL_GLDFLAGS = \
diff --git a/package/gcc/6.1.0/840-microblaze-enable-dwarf-eh-support.patch b/package/gcc/6.1.0/840-microblaze-enable-dwarf-eh-support.patch
deleted file mode 100644 (file)
index 81bf60a..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-Fetched from Xilinx gcc git at https://github.com/Xilinx/gcc
-
-From 23c35173490ac2d6348a668dfc9c1a6eb62171f2 Mon Sep 17 00:00:00 2001
-From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
-Date: Mon, 18 Jun 2012 20:18:13 +0200
-Subject: [PATCH] [Patch, microblaze]: Enable DWARF exception handling support.
-
-Changelog
-
-2013-03-18  Edgar E. Iglesias <edgar.iglesias@xilinx.com>
-            David Holsgrove <david.holsgrove@xilinx.com>
-
- * common/config/microblaze/microblaze-common.c: Remove
-   TARGET_EXCEPT_UNWIND_INFO definition.
- * config/microblaze/microblaze-protos.h: Add
-   microblaze_eh_return prototype.
- * gcc/config/microblaze/microblaze.c: (microblaze_must_save_register,
-   microblaze_expand_epilogue, microblaze_return_addr): Handle
-   calls_eh_return
-   (microblaze_eh_return): New function.
- * gcc/config/microblaze/microblaze.h: Define RETURN_ADDR_OFFSET,
-   EH_RETURN_DATA_REGNO, MB_EH_STACKADJ_REGNUM, EH_RETURN_STACKADJ_RTX,
-   ASM_PREFERRED_EH_DATA_FORMAT
- * gcc/config/microblaze/microblaze.md: Define eh_return pattern.
-
-Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
-Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
----
- gcc/common/config/microblaze/microblaze-common.c |  3 ---
- gcc/config/microblaze/microblaze-protos.h        |  1 +
- gcc/config/microblaze/microblaze.c               | 29 ++++++++++++++++++++----
- gcc/config/microblaze/microblaze.h               | 15 ++++++++++++
- gcc/config/microblaze/microblaze.md              | 11 +++++++++
- 5 files changed, 52 insertions(+), 7 deletions(-)
-
-Index: b/gcc/common/config/microblaze/microblaze-common.c
-===================================================================
---- a/gcc/common/config/microblaze/microblaze-common.c
-+++ b/gcc/common/config/microblaze/microblaze-common.c
-@@ -37,7 +37,4 @@
- #undef  TARGET_OPTION_OPTIMIZATION_TABLE
- #define TARGET_OPTION_OPTIMIZATION_TABLE microblaze_option_optimization_table
--#undef TARGET_EXCEPT_UNWIND_INFO
--#define TARGET_EXCEPT_UNWIND_INFO  sjlj_except_unwind_info
--
- struct gcc_targetm_common targetm_common = TARGETM_COMMON_INITIALIZER;
-Index: b/gcc/config/microblaze/microblaze-protos.h
-===================================================================
---- a/gcc/config/microblaze/microblaze-protos.h
-+++ b/gcc/config/microblaze/microblaze-protos.h
-@@ -57,6 +57,7 @@
- extern int symbol_mentioned_p (rtx);
- extern int label_mentioned_p (rtx);
- extern bool microblaze_cannot_force_const_mem (machine_mode, rtx);
-+extern void microblaze_eh_return (rtx op0);
- #endif  /* RTX_CODE */
- /* Declare functions in microblaze-c.c.  */
-Index: b/gcc/config/microblaze/microblaze.c
-===================================================================
---- a/gcc/config/microblaze/microblaze.c
-+++ b/gcc/config/microblaze/microblaze.c
-@@ -1924,6 +1924,11 @@
-   if (frame_pointer_needed && (regno == HARD_FRAME_POINTER_REGNUM))
-     return 1;
-+  if (crtl->calls_eh_return
-+      && regno == MB_ABI_SUB_RETURN_ADDR_REGNUM) {
-+    return 1;
-+  }
-+
-   if (!crtl->is_leaf)
-     {
-       if (regno == MB_ABI_SUB_RETURN_ADDR_REGNUM)
-@@ -1951,6 +1956,13 @@
-       return 1;
-     }
-+  if (crtl->calls_eh_return
-+      && (regno == EH_RETURN_DATA_REGNO (0)
-+          || regno == EH_RETURN_DATA_REGNO (1)))
-+    {
-+      return 1;
-+    }
-+
-   return 0;
- }
-@@ -3027,6 +3039,12 @@
-       emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx, fsiz_rtx));
-     }
-+  if (crtl->calls_eh_return)
-+    emit_insn (gen_addsi3 (stack_pointer_rtx,
-+                           stack_pointer_rtx,
-+                           gen_rtx_raw_REG (SImode,
-+                                            MB_EH_STACKADJ_REGNUM)));
-+
-   emit_jump_insn (gen_return_internal (gen_rtx_REG (Pmode, GP_REG_FIRST +
-                                                   MB_ABI_SUB_RETURN_ADDR_REGNUM)));
- }
-@@ -3324,10 +3342,13 @@
-   if (count != 0)
-     return NULL_RTX;
--  return gen_rtx_PLUS (Pmode,
--                     get_hard_reg_initial_val (Pmode,
--                                               MB_ABI_SUB_RETURN_ADDR_REGNUM),
--                     GEN_INT (8));
-+  return get_hard_reg_initial_val (Pmode,
-+                                   MB_ABI_SUB_RETURN_ADDR_REGNUM);
-+}
-+
-+void microblaze_eh_return (rtx op0)
-+{
-+  emit_insn (gen_movsi(gen_rtx_MEM(Pmode, stack_pointer_rtx), op0));
- }
- /* Queue an .ident string in the queue of top-level asm statements.
-Index: b/gcc/config/microblaze/microblaze.h
-===================================================================
---- a/gcc/config/microblaze/microblaze.h
-+++ b/gcc/config/microblaze/microblaze.h
-@@ -184,6 +184,21 @@
- #define INCOMING_RETURN_ADDR_RTX                      \
-   gen_rtx_REG (VOIDmode, GP_REG_FIRST + MB_ABI_SUB_RETURN_ADDR_REGNUM)
-+/* Specifies the offset from INCOMING_RETURN_ADDR_RTX and the actual return PC.  */
-+#define RETURN_ADDR_OFFSET (8)
-+
-+/* Describe how we implement __builtin_eh_return.  */
-+#define EH_RETURN_DATA_REGNO(N) (((N) < 2) ? MB_ABI_FIRST_ARG_REGNUM + (N) : INVALID_REGNUM)
-+
-+#define MB_EH_STACKADJ_REGNUM  MB_ABI_INT_RETURN_VAL2_REGNUM
-+#define EH_RETURN_STACKADJ_RTX  gen_rtx_REG (Pmode, MB_EH_STACKADJ_REGNUM)
-+
-+/* Select a format to encode pointers in exception handling data.  CODE
-+   is 0 for data, 1 for code labels, 2 for function pointers.  GLOBAL is
-+   true if the symbol may be affected by dynamic relocations.  */
-+#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL) \
-+  ((flag_pic || GLOBAL) ? DW_EH_PE_aligned : DW_EH_PE_absptr)
-+
- /* Use DWARF 2 debugging information by default.  */
- #define DWARF2_DEBUGGING_INFO
- #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
-Index: b/gcc/config/microblaze/microblaze.md
-===================================================================
---- a/gcc/config/microblaze/microblaze.md
-+++ b/gcc/config/microblaze/microblaze.md
-@@ -2324,4 +2324,15 @@
-   (set_attr "mode"      "SI")
-   (set_attr "length"    "4")])
-+; This is used in compiling the unwind routines.
-+(define_expand "eh_return"
-+  [(use (match_operand 0 "general_operand" ""))]
-+  ""
-+  "
-+{
-+  microblaze_eh_return(operands[0]);
-+  DONE;
-+}")
-+
- (include "sync.md")
-+
index 61d3dbea322efb5274ff95f3f405491c16a4f2ac..cfb0958ff04452a14c8ca9cfbf895b4a61eb4f8d 100644 (file)
@@ -153,6 +153,7 @@ config BR2_GCC_ENABLE_LIBMUDFLAP
        depends on !BR2_ARM_INSTRUCTIONS_THUMB && !BR2_powerpc_SPE
        depends on !BR2_GCC_VERSION_4_9_X
        depends on !BR2_GCC_VERSION_5_X
+       depends on !BR2_GCC_VERSION_6_X
        help
          libmudflap is a gcc library used for the mudflap pointer
          debugging functionality. It is only needed if you intend to
index 4578ca8cc517f192518ca0d04af3632f4c73bf0d..02cae3523c5ab4cdc2023abf2073f75cbd9fed4e 100644 (file)
@@ -4,6 +4,7 @@ config BR2_PACKAGE_GLIBC
        bool
        default y
        select BR2_PACKAGE_LINUX_HEADERS
+       select BR2_TOOLCHAIN_HAS_SSP
 
 choice
        prompt "glibc version"
@@ -13,6 +14,8 @@ config BR2_GLIBC_VERSION_2_22
        bool "2.22"
        # No support for pthread barriers on < v9 ISA
        depends on !BR2_sparc
+       # Too old to build with gcc >= 6.x
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_6
 
 config BR2_GLIBC_VERSION_2_23
        bool "2.23"
index 9167fc54e6892a98873a0fa08b4787dec1134b3c..c8380b1d349cfd9960a917b7d7d63980805c4b66 100644 (file)
@@ -7,6 +7,7 @@ config BR2_PACKAGE_GLMARK2_EGL_GLES
 config BR2_PACKAGE_GLMARK2_GL
        bool
        default y
+       depends on BR2_PACKAGE_HAS_LIBGL
        depends on BR2_PACKAGE_MESA3D_DRI_DRIVER
 
 comment "glmark2 needs an OpenGL or an openGL ES and EGL backend provided by mesa3d"
index db655ad7f4311cc4fcc0a5d4fa7c413b200f8c3a..1a46225a37ff5f6683072553ff4fb3cd507008af 100644 (file)
@@ -3,6 +3,8 @@ config BR2_PACKAGE_GMRENDER_RESURRECT
        depends on BR2_USE_WCHAR # gstreamer1 -> libglib2
        depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2, libupnp
        depends on BR2_USE_MMU # gstreamer1
+       # uses <error.h>
+       depends on !BR2_TOOLCHAIN_USES_MUSL
        select BR2_PACKAGE_GSTREAMER1
        select BR2_PACKAGE_GST1_PLUGINS_BASE # run-time only
        select BR2_PACKAGE_LIBUPNP
@@ -11,6 +13,7 @@ config BR2_PACKAGE_GMRENDER_RESURRECT
 
          https://github.com/hzeller/gmrender-resurrect
 
-comment "gmrender-resurrect needs a toolchain w/ wchar, threads"
+comment "gmrender-resurrect needs an (e)glibc or uClibc toolchain w/ wchar, threads"
        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_USES_MUSL
index e404cb6966a7aacc13fbf93bc3eceea147c761da..47f5013232f38186dd3635f08bf1dddde077cbf4 100644 (file)
@@ -11,13 +11,20 @@ GO_BOOTSTRAP_SOURCE = go$(GO_BOOTSTRAP_VERSION).src.tar.gz
 GO_BOOTSTRAP_LICENSE = BSD-3c
 GO_BOOTSTRAP_LICENSE_FILES = LICENSE
 
+# To build programs that need cgo support the toolchain needs to be
+# available, so the toolchain is not needed to build host-go-bootstrap
+# itself, but needed by other packages that depend on
+# host-go-bootstrap.
+HOST_GO_BOOTSTRAP_DEPENDENCIES = toolchain
+
 HOST_GO_BOOTSTRAP_ROOT = $(HOST_DIR)/usr/lib/go-$(GO_BOOTSTRAP_VERSION)
 
 HOST_GO_BOOTSTRAP_MAKE_ENV = \
        GOOS=linux \
        GOROOT_FINAL="$(HOST_GO_BOOTSTRAP_ROOT)" \
        GOROOT="$(@D)" \
-       GOBIN="$(@D)/bin"
+       GOBIN="$(@D)/bin" \
+       CGO_ENABLED=0
 
 define HOST_GO_BOOTSTRAP_BUILD_CMDS
        cd $(@D)/src && $(HOST_GO_BOOTSTRAP_MAKE_ENV) ./make.bash
index 094e402949acf352d3752020644de679135beda8..b57080399ad3b6c88508373011f7de5cef31aacc 100644 (file)
@@ -1,5 +1,5 @@
 config BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS
        bool
        default y
-       depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_powerpc
+       depends on BR2_arm || BR2_aarch64 || BR2_i386 || BR2_x86_64 || BR2_powerpc64 || BR2_powerpc64le
        depends on !BR2_ARM_CPU_ARMV4
index 720c75a56e55c4c346afde09561a7509f3e1dc89..a1d6cf9df2081d0e8119cb3349e53b719aa1d05a 100644 (file)
@@ -26,13 +26,42 @@ else ifeq ($(BR2_i386),y)
 GO_GOARCH = 386
 else ifeq ($(BR2_x86_64),y)
 GO_GOARCH = amd64
-else ifeq ($(BR2_powerpc),y)
+else ifeq ($(BR2_powerpc64),y)
 GO_GOARCH = ppc64
+else ifeq ($(BR2_powerpc64le),y)
+GO_GOARCH = ppc64le
 endif
 
 HOST_GO_DEPENDENCIES = host-go-bootstrap
 HOST_GO_ROOT = $(HOST_DIR)/usr/lib/go
 
+# For the convienience of target packages.
+HOST_GO_TOOLDIR = $(HOST_GO_ROOT)/pkg/tool/linux_$(GO_GOARCH)
+HOST_GO_TARGET_ENV = \
+       GOARCH=$(GO_GOARCH) \
+       GOROOT="$(HOST_GO_ROOT)" \
+       CC="$(TARGET_CC)" \
+       CXX="$(TARGET_CXX)" \
+       GOTOOLDIR="$(HOST_GO_TOOLDIR)"
+
+# The go compiler's cgo support uses threads.  If BR2_TOOLCHAIN_HAS_THREADS is
+# set, build in cgo support for any go programs that may need it.  Note that
+# any target package needing cgo support must include
+# 'depends on BR2_TOOLCHAIN_HAS_THREADS' in its config file.
+ifeq (BR2_TOOLCHAIN_HAS_THREADS,y)
+HOST_GO_CGO_ENABLED = 1
+else
+HOST_GO_CGO_ENABLED = 0
+endif
+
+# The go build system doesn't have the notion of cross compiling, but just the
+# notion of architecture.  When the host and target architectures are different
+# it expects to be given a target cross compiler in CC_FOR_TARGET.  When the
+# architectures are the same it will use CC_FOR_TARGET for both host and target
+# compilation.  To work around this limitation build and install a set of
+# compiler and tool binaries built with CC_FOR_TARGET set to the host compiler.
+# Also, the go build system is not compatible with ccache, so use
+# HOSTCC_NOCCACHE.  See https://github.com/golang/go/issues/11685.
 HOST_GO_MAKE_ENV = \
        GOROOT_BOOTSTRAP=$(HOST_GO_BOOTSTRAP_ROOT) \
        GOROOT_FINAL=$(HOST_GO_ROOT) \
@@ -41,17 +70,30 @@ HOST_GO_MAKE_ENV = \
        GOARCH=$(GO_GOARCH) \
        $(if $(GO_GOARM),GOARM=$(GO_GOARM)) \
        GOOS=linux \
-       CGO_ENABLED=1 \
-       CC_FOR_TARGET=$(TARGET_CC) \
-       CXX_FOR_TARGET=$(TARGET_CXX)
+       CGO_ENABLED=$(HOST_GO_CGO_ENABLED) \
+       CC=$(HOSTCC_NOCCACHE)
+
+HOST_GO_TARGET_CC = \
+       CC_FOR_TARGET="$(TARGET_CC)" \
+       CXX_FOR_TARGET="$(TARGET_CXX)"
+
+HOST_GO_HOST_CC = \
+       CC_FOR_TARGET=$(HOSTCC_NOCCACHE) \
+       CXX_FOR_TARGET=$(HOSTCC_NOCCACHE)
+
+HOST_GO_TMP = $(@D)/host-go-tmp
 
 define HOST_GO_BUILD_CMDS
-       cd $(@D)/src && $(HOST_GO_MAKE_ENV) ./make.bash
+       cd $(@D)/src && $(HOST_GO_MAKE_ENV) $(HOST_GO_HOST_CC) ./make.bash
+       mkdir -p $(HOST_GO_TMP)
+       mv $(@D)/pkg/tool $(HOST_GO_TMP)/
+       mv $(@D)/bin/ $(HOST_GO_TMP)/
+       cd $(@D)/src && $(HOST_GO_MAKE_ENV) $(HOST_GO_TARGET_CC) ./make.bash
 endef
 
 define HOST_GO_INSTALL_CMDS
-       $(INSTALL) -D -m 0755 $(@D)/bin/go $(HOST_GO_ROOT)/bin/go
-       $(INSTALL) -D -m 0755 $(@D)/bin/gofmt $(HOST_GO_ROOT)/bin/gofmt
+       $(INSTALL) -D -m 0755 $(HOST_GO_TMP)/bin/go $(HOST_GO_ROOT)/bin/go
+       $(INSTALL) -D -m 0755 $(HOST_GO_TMP)/bin/gofmt $(HOST_GO_ROOT)/bin/gofmt
 
        ln -sf ../lib/go/bin/go $(HOST_DIR)/usr/bin/
        ln -sf ../lib/go/bin/gofmt $(HOST_DIR)/usr/bin/
@@ -60,11 +102,15 @@ define HOST_GO_INSTALL_CMDS
 
        mkdir -p $(HOST_GO_ROOT)/pkg
        cp -a $(@D)/pkg/include $(@D)/pkg/linux_* $(HOST_GO_ROOT)/pkg/
-       cp -a $(@D)/pkg/tool $(HOST_GO_ROOT)/pkg/
+       cp -a $(HOST_GO_TMP)/tool $(HOST_GO_ROOT)/pkg/
 
        # There is a known issue which requires the go sources to be installed
        # https://golang.org/issue/2775
        cp -a $(@D)/src $(HOST_GO_ROOT)/
+
+       # Set all file timestamps to prevent the go compiler from rebuilding any
+       # built in packages when programs are built.
+       find $(HOST_GO_ROOT) -type f -exec touch -r $(HOST_GO_TMP)/bin/go {} \;
 endef
 
 $(eval $(host-generic-package))
index 97be7210f4e1dec4566e4aba627708e5d16a43c3..7895c7ed801a2ff35c4b7b476806a59385177932 100644 (file)
@@ -4,6 +4,8 @@ config BR2_PACKAGE_GRANTLEE
        depends on (BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT && BR2_PACKAGE_QT) || \
                (BR2_PACKAGE_QT5_JSCORE_AVAILABLE && BR2_PACKAGE_QT5)
        depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Qt GUI module
+       # https://sourceware.org/bugzilla/show_bug.cgi?id=20173
+       depends on !BR2_microblaze && !BR2_nios2
        select BR2_PACKAGE_QT_STL if BR2_PACKAGE_QT
        select BR2_PACKAGE_QT_SCRIPT if BR2_PACKAGE_QT
        select BR2_PACKAGE_QT_GUI_MODULE if BR2_PACKAGE_QT
@@ -16,6 +18,7 @@ config BR2_PACKAGE_GRANTLEE
 
 comment "grantlee needs a toolchain with NPTL not affected by Binutils bug 19405"
        depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL
+       depends on !BR2_microblaze && !BR2_nios2
        depends on (BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT && BR2_PACKAGE_QT) || \
                (BR2_PACKAGE_QT5_JSCORE_AVAILABLE && BR2_PACKAGE_QT5) || \
                BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405
index 004ec1cb3d57bb748339556b99df61033d26921e..f3d4b3e568d1c0b7bde8294ee9fa7f31062bc5df 100644 (file)
@@ -3,6 +3,8 @@ config BR2_PACKAGE_GST_FFMPEG
        # Unsupported for MIPS R6. It bundles a version of libav which
        # doesn't have support for MIPS R6.
        depends on !BR2_mips_32r6 && !BR2_mips_64r6
+       # triggers https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65151 on sh
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 || !BR2_sh
        select BR2_PACKAGE_GST_PLUGINS_BASE
        help
          GStreamer plugin containing one plugin with a set of elements using
@@ -23,3 +25,6 @@ config BR2_PACKAGE_GST_FFMPEG_GPL
          be under GPL.
 
 endif
+
+comment "gst-ffmpeg needs a toolchain w/ gcc >= 5"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5 && BR2_sh
index b4b7aa7361d55ec456e90e41b5835686c89d6c42..23d78b6ad19d241ab6f3c54bfe8f4927a6ec2417 100644 (file)
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_GST1_LIBAV
        bool "gst1-libav"
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_FFMPEG
        select BR2_PACKAGE_FFMPEG_SWSCALE
        select BR2_PACKAGE_GST1_PLUGINS_BASE
index 3ea4fdb54b1d83e9e572ef77dc96787d3a911f60..4740cb7b8827f4c6e7457dcce1b9fa67b77ff541 100644 (file)
@@ -8,10 +8,12 @@ C++ support.
 
 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 ---
- hidtest/Makefile.am                | 6 +++---
- hidtest/{hidtest.cpp => hidtest.c} | 0
- 2 files changed, 3 insertions(+), 3 deletions(-)
- rename hidtest/{hidtest.cpp => hidtest.c} (100%)
+ hidtest/Makefile.am |   6 +-
+ hidtest/hidtest.c   | 194 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ hidtest/hidtest.cpp | 194 ----------------------------------------------------
+ 3 files changed, 197 insertions(+), 197 deletions(-)
+ create mode 100644 hidtest/hidtest.c
+ delete mode 100644 hidtest/hidtest.cpp
 
 diff --git a/hidtest/Makefile.am b/hidtest/Makefile.am
 index d278644..5f52c3f 100644
@@ -38,10 +40,406 @@ index d278644..5f52c3f 100644
  hidtest_LDADD = $(top_builddir)/$(backend)/libhidapi.la
  
  endif
-diff --git a/hidtest/hidtest.cpp b/hidtest/hidtest.c
-similarity index 100%
-rename from hidtest/hidtest.cpp
-rename to hidtest/hidtest.c
+diff --git a/hidtest/hidtest.c b/hidtest/hidtest.c
+new file mode 100644
+index 0000000..94f0a5c
+--- /dev/null
++++ b/hidtest/hidtest.c
+@@ -0,0 +1,194 @@
++/*******************************************************
++ Windows HID simplification
++
++ Alan Ott
++ Signal 11 Software
++
++ 8/22/2009
++
++ Copyright 2009
++ 
++ This contents of this file may be used by anyone
++ for any reason without any conditions and may be
++ used as a starting point for your own applications
++ which use HIDAPI.
++********************************************************/
++
++#include <stdio.h>
++#include <wchar.h>
++#include <string.h>
++#include <stdlib.h>
++#include "hidapi.h"
++
++// Headers needed for sleeping.
++#ifdef _WIN32
++      #include <windows.h>
++#else
++      #include <unistd.h>
++#endif
++
++int main(int argc, char* argv[])
++{
++      int res;
++      unsigned char buf[256];
++      #define MAX_STR 255
++      wchar_t wstr[MAX_STR];
++      hid_device *handle;
++      int i;
++
++#ifdef WIN32
++      UNREFERENCED_PARAMETER(argc);
++      UNREFERENCED_PARAMETER(argv);
++#endif
++
++      struct hid_device_info *devs, *cur_dev;
++      
++      if (hid_init())
++              return -1;
++
++      devs = hid_enumerate(0x0, 0x0);
++      cur_dev = devs; 
++      while (cur_dev) {
++              printf("Device Found\n  type: %04hx %04hx\n  path: %s\n  serial_number: %ls", cur_dev->vendor_id, cur_dev->product_id, cur_dev->path, cur_dev->serial_number);
++              printf("\n");
++              printf("  Manufacturer: %ls\n", cur_dev->manufacturer_string);
++              printf("  Product:      %ls\n", cur_dev->product_string);
++              printf("  Release:      %hx\n", cur_dev->release_number);
++              printf("  Interface:    %d\n",  cur_dev->interface_number);
++              printf("\n");
++              cur_dev = cur_dev->next;
++      }
++      hid_free_enumeration(devs);
++
++      // Set up the command buffer.
++      memset(buf,0x00,sizeof(buf));
++      buf[0] = 0x01;
++      buf[1] = 0x81;
++      
++
++      // Open the device using the VID, PID,
++      // and optionally the Serial number.
++      ////handle = hid_open(0x4d8, 0x3f, L"12345");
++      handle = hid_open(0x4d8, 0x3f, NULL);
++      if (!handle) {
++              printf("unable to open device\n");
++              return 1;
++      }
++
++      // Read the Manufacturer String
++      wstr[0] = 0x0000;
++      res = hid_get_manufacturer_string(handle, wstr, MAX_STR);
++      if (res < 0)
++              printf("Unable to read manufacturer string\n");
++      printf("Manufacturer String: %ls\n", wstr);
++
++      // Read the Product String
++      wstr[0] = 0x0000;
++      res = hid_get_product_string(handle, wstr, MAX_STR);
++      if (res < 0)
++              printf("Unable to read product string\n");
++      printf("Product String: %ls\n", wstr);
++
++      // Read the Serial Number String
++      wstr[0] = 0x0000;
++      res = hid_get_serial_number_string(handle, wstr, MAX_STR);
++      if (res < 0)
++              printf("Unable to read serial number string\n");
++      printf("Serial Number String: (%d) %ls", wstr[0], wstr);
++      printf("\n");
++
++      // Read Indexed String 1
++      wstr[0] = 0x0000;
++      res = hid_get_indexed_string(handle, 1, wstr, MAX_STR);
++      if (res < 0)
++              printf("Unable to read indexed string 1\n");
++      printf("Indexed String 1: %ls\n", wstr);
++
++      // Set the hid_read() function to be non-blocking.
++      hid_set_nonblocking(handle, 1);
++      
++      // Try to read from the device. There shoud be no
++      // data here, but execution should not block.
++      res = hid_read(handle, buf, 17);
++
++      // Send a Feature Report to the device
++      buf[0] = 0x2;
++      buf[1] = 0xa0;
++      buf[2] = 0x0a;
++      buf[3] = 0x00;
++      buf[4] = 0x00;
++      res = hid_send_feature_report(handle, buf, 17);
++      if (res < 0) {
++              printf("Unable to send a feature report.\n");
++      }
++
++      memset(buf,0,sizeof(buf));
++
++      // Read a Feature Report from the device
++      buf[0] = 0x2;
++      res = hid_get_feature_report(handle, buf, sizeof(buf));
++      if (res < 0) {
++              printf("Unable to get a feature report.\n");
++              printf("%ls", hid_error(handle));
++      }
++      else {
++              // Print out the returned buffer.
++              printf("Feature Report\n   ");
++              for (i = 0; i < res; i++)
++                      printf("%02hhx ", buf[i]);
++              printf("\n");
++      }
++
++      memset(buf,0,sizeof(buf));
++
++      // Toggle LED (cmd 0x80). The first byte is the report number (0x1).
++      buf[0] = 0x1;
++      buf[1] = 0x80;
++      res = hid_write(handle, buf, 17);
++      if (res < 0) {
++              printf("Unable to write()\n");
++              printf("Error: %ls\n", hid_error(handle));
++      }
++      
++
++      // Request state (cmd 0x81). The first byte is the report number (0x1).
++      buf[0] = 0x1;
++      buf[1] = 0x81;
++      hid_write(handle, buf, 17);
++      if (res < 0)
++              printf("Unable to write() (2)\n");
++
++      // Read requested state. hid_read() has been set to be
++      // non-blocking by the call to hid_set_nonblocking() above.
++      // This loop demonstrates the non-blocking nature of hid_read().
++      res = 0;
++      while (res == 0) {
++              res = hid_read(handle, buf, sizeof(buf));
++              if (res == 0)
++                      printf("waiting...\n");
++              if (res < 0)
++                      printf("Unable to read()\n");
++              #ifdef WIN32
++              Sleep(500);
++              #else
++              usleep(500*1000);
++              #endif
++      }
++
++      printf("Data read:\n   ");
++      // Print out the returned buffer.
++      for (i = 0; i < res; i++)
++              printf("%02hhx ", buf[i]);
++      printf("\n");
++
++      hid_close(handle);
++
++      /* Free static HIDAPI objects. */
++      hid_exit();
++
++#ifdef WIN32
++      system("pause");
++#endif
++
++      return 0;
++}
+diff --git a/hidtest/hidtest.cpp b/hidtest/hidtest.cpp
+deleted file mode 100644
+index 94f0a5c..0000000
+--- a/hidtest/hidtest.cpp
++++ /dev/null
+@@ -1,194 +0,0 @@
+-/*******************************************************
+- Windows HID simplification
+-
+- Alan Ott
+- Signal 11 Software
+-
+- 8/22/2009
+-
+- Copyright 2009
+- 
+- This contents of this file may be used by anyone
+- for any reason without any conditions and may be
+- used as a starting point for your own applications
+- which use HIDAPI.
+-********************************************************/
+-
+-#include <stdio.h>
+-#include <wchar.h>
+-#include <string.h>
+-#include <stdlib.h>
+-#include "hidapi.h"
+-
+-// Headers needed for sleeping.
+-#ifdef _WIN32
+-      #include <windows.h>
+-#else
+-      #include <unistd.h>
+-#endif
+-
+-int main(int argc, char* argv[])
+-{
+-      int res;
+-      unsigned char buf[256];
+-      #define MAX_STR 255
+-      wchar_t wstr[MAX_STR];
+-      hid_device *handle;
+-      int i;
+-
+-#ifdef WIN32
+-      UNREFERENCED_PARAMETER(argc);
+-      UNREFERENCED_PARAMETER(argv);
+-#endif
+-
+-      struct hid_device_info *devs, *cur_dev;
+-      
+-      if (hid_init())
+-              return -1;
+-
+-      devs = hid_enumerate(0x0, 0x0);
+-      cur_dev = devs; 
+-      while (cur_dev) {
+-              printf("Device Found\n  type: %04hx %04hx\n  path: %s\n  serial_number: %ls", cur_dev->vendor_id, cur_dev->product_id, cur_dev->path, cur_dev->serial_number);
+-              printf("\n");
+-              printf("  Manufacturer: %ls\n", cur_dev->manufacturer_string);
+-              printf("  Product:      %ls\n", cur_dev->product_string);
+-              printf("  Release:      %hx\n", cur_dev->release_number);
+-              printf("  Interface:    %d\n",  cur_dev->interface_number);
+-              printf("\n");
+-              cur_dev = cur_dev->next;
+-      }
+-      hid_free_enumeration(devs);
+-
+-      // Set up the command buffer.
+-      memset(buf,0x00,sizeof(buf));
+-      buf[0] = 0x01;
+-      buf[1] = 0x81;
+-      
+-
+-      // Open the device using the VID, PID,
+-      // and optionally the Serial number.
+-      ////handle = hid_open(0x4d8, 0x3f, L"12345");
+-      handle = hid_open(0x4d8, 0x3f, NULL);
+-      if (!handle) {
+-              printf("unable to open device\n");
+-              return 1;
+-      }
+-
+-      // Read the Manufacturer String
+-      wstr[0] = 0x0000;
+-      res = hid_get_manufacturer_string(handle, wstr, MAX_STR);
+-      if (res < 0)
+-              printf("Unable to read manufacturer string\n");
+-      printf("Manufacturer String: %ls\n", wstr);
+-
+-      // Read the Product String
+-      wstr[0] = 0x0000;
+-      res = hid_get_product_string(handle, wstr, MAX_STR);
+-      if (res < 0)
+-              printf("Unable to read product string\n");
+-      printf("Product String: %ls\n", wstr);
+-
+-      // Read the Serial Number String
+-      wstr[0] = 0x0000;
+-      res = hid_get_serial_number_string(handle, wstr, MAX_STR);
+-      if (res < 0)
+-              printf("Unable to read serial number string\n");
+-      printf("Serial Number String: (%d) %ls", wstr[0], wstr);
+-      printf("\n");
+-
+-      // Read Indexed String 1
+-      wstr[0] = 0x0000;
+-      res = hid_get_indexed_string(handle, 1, wstr, MAX_STR);
+-      if (res < 0)
+-              printf("Unable to read indexed string 1\n");
+-      printf("Indexed String 1: %ls\n", wstr);
+-
+-      // Set the hid_read() function to be non-blocking.
+-      hid_set_nonblocking(handle, 1);
+-      
+-      // Try to read from the device. There shoud be no
+-      // data here, but execution should not block.
+-      res = hid_read(handle, buf, 17);
+-
+-      // Send a Feature Report to the device
+-      buf[0] = 0x2;
+-      buf[1] = 0xa0;
+-      buf[2] = 0x0a;
+-      buf[3] = 0x00;
+-      buf[4] = 0x00;
+-      res = hid_send_feature_report(handle, buf, 17);
+-      if (res < 0) {
+-              printf("Unable to send a feature report.\n");
+-      }
+-
+-      memset(buf,0,sizeof(buf));
+-
+-      // Read a Feature Report from the device
+-      buf[0] = 0x2;
+-      res = hid_get_feature_report(handle, buf, sizeof(buf));
+-      if (res < 0) {
+-              printf("Unable to get a feature report.\n");
+-              printf("%ls", hid_error(handle));
+-      }
+-      else {
+-              // Print out the returned buffer.
+-              printf("Feature Report\n   ");
+-              for (i = 0; i < res; i++)
+-                      printf("%02hhx ", buf[i]);
+-              printf("\n");
+-      }
+-
+-      memset(buf,0,sizeof(buf));
+-
+-      // Toggle LED (cmd 0x80). The first byte is the report number (0x1).
+-      buf[0] = 0x1;
+-      buf[1] = 0x80;
+-      res = hid_write(handle, buf, 17);
+-      if (res < 0) {
+-              printf("Unable to write()\n");
+-              printf("Error: %ls\n", hid_error(handle));
+-      }
+-      
+-
+-      // Request state (cmd 0x81). The first byte is the report number (0x1).
+-      buf[0] = 0x1;
+-      buf[1] = 0x81;
+-      hid_write(handle, buf, 17);
+-      if (res < 0)
+-              printf("Unable to write() (2)\n");
+-
+-      // Read requested state. hid_read() has been set to be
+-      // non-blocking by the call to hid_set_nonblocking() above.
+-      // This loop demonstrates the non-blocking nature of hid_read().
+-      res = 0;
+-      while (res == 0) {
+-              res = hid_read(handle, buf, sizeof(buf));
+-              if (res == 0)
+-                      printf("waiting...\n");
+-              if (res < 0)
+-                      printf("Unable to read()\n");
+-              #ifdef WIN32
+-              Sleep(500);
+-              #else
+-              usleep(500*1000);
+-              #endif
+-      }
+-
+-      printf("Data read:\n   ");
+-      // Print out the returned buffer.
+-      for (i = 0; i < res; i++)
+-              printf("%02hhx ", buf[i]);
+-      printf("\n");
+-
+-      hid_close(handle);
+-
+-      /* Free static HIDAPI objects. */
+-      hid_exit();
+-
+-#ifdef WIN32
+-      system("pause");
+-#endif
+-
+-      return 0;
+-}
 -- 
-2.6.4
+2.7.4
 
index b1e8cb55d25a05127d650089c07e5ac2e6a39dd4..d70e2e926fc8b38c906de6066cde317abc0210ac 100644 (file)
@@ -27,6 +27,9 @@ HPLIP_CONF_OPTS = \
        --enable-new-hpcups \
        --enable-lite-build
 
+# build system does not support cups-config
+HPLIP_CONF_ENV = LIBS=`$(STAGING_DIR)/usr/bin/cups-config --libs`
+
 ifeq ($(BR2_PACKAGE_DBUS),y)
 HPLIP_CONF_OPTS += --enable-dbus-build
 HPLIP_DEPENDENCIES += dbus
index 4af40958434624fd60e85dd48cefabaf9f0b0660..36c5a65a9f7d904429e41c01f43672fd0e965a56 100644 (file)
@@ -1,8 +1,9 @@
 config BR2_PACKAGE_IPSEC_TOOLS
        bool "ipsec-tools"
+       depends on BR2_USE_MMU # fork()
+       depends on !BR2_TOOLCHAIN_USES_MUSL # Use __P() macro all over the tree
        select BR2_PACKAGE_OPENSSL
        select BR2_PACKAGE_FLEX
-       depends on BR2_USE_MMU # fork()
        help
          This package is required to support IPSec for Linux 2.6+
 
index 7313873972be4fac0f5a51a90675ad0710693f3b..a36c7089fb2ec13c59f430a2facf6e3119290354 100644 (file)
@@ -10,6 +10,10 @@ IPTRAF_NG_LICENSE = GPLv2+
 IPTRAF_NG_LICENSE_FILES = LICENSE
 IPTRAF_NG_DEPENDENCIES = ncurses
 
-IPTRAF_NG_MAKE_ENV = NCURSES_LDFLAGS="-lpanel -lncurses"
+IPTRAF_NG_MAKE_ENV = \
+       NCURSES_LDFLAGS="-lpanel -lncurses"
+
+IPTRAF_NG_CONF_ENV = \
+       CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE"
 
 $(eval $(autotools-package))
index 1cd8ed3ed1caaeb08bef4efb010dfe3c9d190781..42ea5fd8d93ac2407dfd6750e886c0c64357f8fb 100644 (file)
@@ -1,2 +1,2 @@
 # Locally computed
-sha256 73de246aee1fd3cd69b1341a0c4e1b4acfa655fe6f7363fd9424824aa8bf5a57        iputils-3a86a2542c6fe29413c439bebeae11ec8a57ec7c.tar.gz
+sha256 08b9f686fcc874f75b465f90f3e831aa9ac1f2e043f4bb61e6d99868e8869025        iputils-31d947cf7156cf78d3f57e0bd82b33e6f6ece6b4.tar.gz
index 522be9b85506494075b9fdc4abcec560c5462083..18e48b4beb2ae5c51977df583b2f44f382e43b00 100644 (file)
@@ -11,7 +11,7 @@
 # and IPv6 updates.
 # http://www.spinics.net/lists/netdev/msg279881.html
 
-IPUTILS_VERSION = 3a86a2542c6fe29413c439bebeae11ec8a57ec7c
+IPUTILS_VERSION = 31d947cf7156cf78d3f57e0bd82b33e6f6ece6b4
 IPUTILS_SITE = $(call github,iputils,iputils,$(IPUTILS_VERSION))
 IPUTILS_LICENSE = GPLv2+, BSD-3c, BSD-4c
 # Only includes a license file for BSD
diff --git a/package/jack2/0002-Make-backtrace-support-depends-on-execinfo.h-existen.patch b/package/jack2/0002-Make-backtrace-support-depends-on-execinfo.h-existen.patch
new file mode 100644 (file)
index 0000000..719c6a8
--- /dev/null
@@ -0,0 +1,67 @@
+From 4b2c73ad056aa327dc3b505410da68cf384317ba Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Mon, 16 May 2016 22:26:05 +0200
+Subject: [PATCH] Make backtrace support depends on execinfo.h existence
+
+In some C-libraries (like uclibc), backtrace support is optional, so the
+execinfo.h file may not exist.
+
+This change adds the check for execinfo.h header and conditionnaly enable
+backtrace support.
+
+This issue has been triggered by Buildroot farms:
+  http://autobuild.buildroot.org/results/391/391e71a988250ea66ec4dbee6f60fdce9eaf2766/build-end.log
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ dbus/sigsegv.c | 8 +++++++-
+ wscript        | 1 +
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/dbus/sigsegv.c b/dbus/sigsegv.c
+index ee12f91..0b31d89 100644
+--- a/dbus/sigsegv.c
++++ b/dbus/sigsegv.c
+@@ -27,7 +27,9 @@
+ #include <stdio.h>
+ #include <signal.h>
+ #include <dlfcn.h>
+-#include <execinfo.h>
++#if defined(HAVE_EXECINFO_H)
++# include <execinfo.h>
++#endif /* defined(HAVE_EXECINFO_H) */
+ #include <errno.h>
+ #ifndef NO_CPP_DEMANGLE
+ char * __cxa_demangle(const char * __mangled_name, char * __output_buffer, size_t * __length, int * __status);
+@@ -161,12 +163,16 @@ static void signal_segv(int signum, siginfo_t* info, void*ptr) {
+         bp = (void**)bp[0];
+     }
+ #else
++# if defined(HAVE_EXECINFO_H)
+     jack_error("Stack trace (non-dedicated):");
+     sz = backtrace(bt, 20);
+     strings = backtrace_symbols(bt, sz);
+     for(i = 0; i < sz; ++i)
+         jack_error("%s", strings[i]);
++# else /* defined(HAVE_EXECINFO_H) */
++    jack_error("Stack trace not available");
++# endif /* defined(HAVE_EXECINFO_H) */
+ #endif
+     jack_error("End of stack trace");
+     exit (-1);
+diff --git a/wscript b/wscript
+index aef4bd8..63ba3aa 100644
+--- a/wscript
++++ b/wscript
+@@ -166,6 +166,7 @@ def configure(conf):
+         if conf.env['BUILD_JACKDBUS'] != True:
+             conf.fatal('jackdbus was explicitly requested but cannot be built')
++    conf.check_cc(header_name='execinfo.h', define_name="HAVE_EXECINFO_H", mandatory=False)
+     conf.check_cc(header_name='samplerate.h', define_name="HAVE_SAMPLERATE")
+     if conf.is_defined('HAVE_SAMPLERATE'):
+-- 
+2.8.2
+
diff --git a/package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch b/package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch
new file mode 100644 (file)
index 0000000..50f95cd
--- /dev/null
@@ -0,0 +1,86 @@
+From 7152ded5219453c9ff1cd062cecbeaf4d77e4cab Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Thu, 26 May 2016 15:05:48 +0200
+Subject: [PATCH] Use <fenv.h> instead of <fpu_control.h>
+
+musl libc (http://musl-libc.org lack the non-standard <fpu_control.h>
+header, which is used in src/os/linux/{i386,x86_64}/init.c files to
+setup the floating point precision. This patch makes it use the
+standard C <fenv.h> header instead.
+
+Original patch at Felix Janda at
+https://sourceforge.net/p/jamvm/patches/6/.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/os/linux/i386/init.c   | 12 ++++++------
+ src/os/linux/x86_64/init.c | 16 ++++++----------
+ 2 files changed, 12 insertions(+), 16 deletions(-)
+
+diff --git a/src/os/linux/i386/init.c b/src/os/linux/i386/init.c
+index d9c6648..94a733e 100644
+--- a/src/os/linux/i386/init.c
++++ b/src/os/linux/i386/init.c
+@@ -19,18 +19,18 @@
+  * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+  */
+-#include <fpu_control.h>
++#include <fenv.h>
+ /* Change floating point precision to double (64-bit) from
+  * the extended (80-bit) Linux default. */
+ void setDoublePrecision() {
+-    fpu_control_t cw;
++    fenv_t fenv;
+-    _FPU_GETCW(cw);
+-    cw &= ~_FPU_EXTENDED;
+-    cw |= _FPU_DOUBLE;
+-    _FPU_SETCW(cw);
++    fegetenv(&fenv);
++    fenv.__control_word &= ~0x300; /* _FPU_EXTENDED */
++    fenv.__control_word |= 0x200; /* _FPU_DOUBLE */
++    fesetenv(&fenv);
+ }
+ void initialisePlatform() {
+diff --git a/src/os/linux/x86_64/init.c b/src/os/linux/x86_64/init.c
+index 9d55229..a76a923 100644
+--- a/src/os/linux/x86_64/init.c
++++ b/src/os/linux/x86_64/init.c
+@@ -19,9 +19,7 @@
+  * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+  */
+-#ifdef __linux__
+-#include <fpu_control.h>
+-#endif
++#include <fenv.h>
+ /* Change the x87 FPU precision to double (64-bit) from the extended
+    (80-bit) Linux default.  Note, unlike on i386, my testcases pass
+@@ -30,14 +28,12 @@
+ */
+ void setDoublePrecision() {
+-#ifdef __linux__
+-    fpu_control_t cw;
++    fenv_t fenv;
+-    _FPU_GETCW(cw);
+-    cw &= ~_FPU_EXTENDED;
+-    cw |= _FPU_DOUBLE;
+-    _FPU_SETCW(cw);
+-#endif
++    fegetenv(&fenv);
++    fenv.__control_word &= ~0x300; /*_FPU_EXTENDED */
++    fenv.__control_word |= 0x200; /*_FPU_DOUBLE */
++    fesetenv(&fenv);
+ }
+ void initialisePlatform() {
+-- 
+2.7.4
+
index d5d92c6e8e00db06d0a4ce85dba42a3913e4f096..ccc2aba6aa8f5da93afe991dc99c14d5b9c3fb8b 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_ASTEROIDS
        bool "kodi-screensaver-asteroids"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          Asteroids screensaver for Kodi
 
          https://github.com/notspiff/screensaver.asteroids
 
-comment "kodi-screensaver-asteroids needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-asteroids needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index c430cff308185f236df7a5722863f29d039f13a5..bd5db738cae3ed77bd76cd5b6161f29d12246233 100644 (file)
@@ -1,11 +1,12 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_ASTERWAVE
        bool "kodi-screensaver-asterwave"
-       depends on BR2_PACKAGE_KODI_GL # libsoil
+       depends on BR2_PACKAGE_HAS_LIBGL # libglu, libsoil
+       select BR2_PACKAGE_LIBGLU
        select BR2_PACKAGE_LIBSOIL
        help
          AsterWave screensaver for Kodi
 
          https://github.com/notspiff/screensaver.asterwave
 
-comment "asterwave needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-asterwave needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 1cb74f3ffbe780ad66f4b7c484c08a3d4632294d..7c718ccd84ddcf4572908786755e7c060e7cb3fc 100644 (file)
@@ -6,6 +6,6 @@
 
 KODI_SCREENSAVER_ASTERWAVE_VERSION = 0dc2c48dadb100954eef823e7e3a5f502ce65b1e
 KODI_SCREENSAVER_ASTERWAVE_SITE = $(call github,notspiff,screensaver.asterwave,$(KODI_SCREENSAVER_ASTERWAVE_VERSION))
-KODI_SCREENSAVER_ASTERWAVE_DEPENDENCIES = kodi libsoil
+KODI_SCREENSAVER_ASTERWAVE_DEPENDENCIES = kodi libglu libsoil
 
 $(eval $(cmake-package))
index 4b0d0532b52d1d0ef18d4f3253fbdd4021d5b61b..cdc2d919510a1fd35c7fdcba1ea491cb6953b998 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_BIOGENESIS
        bool "kodi-screensaver-biogenesis"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          BioGenesis screensaver for Kodi
 
          https://github.com/notspiff/screensaver.biogenesis
 
-comment "kodi-screensaver-biogenesis needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-biogenesis needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 184509e66d6d86e7710f4771504a8e8653129c5a..e80ea0ebb36a2f496977601a91d1c2b2210b26db 100644 (file)
@@ -1,11 +1,11 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_CPBLOBS
        bool "kodi-screensaver-cpblobs"
-       depends on BR2_PACKAGE_KODI_GL # libsoil
+       depends on BR2_PACKAGE_HAS_LIBGL # libsoil
        select BR2_PACKAGE_LIBSOIL
        help
          CpBlobs screensaver for Kodi
 
          https://github.com/notspiff/screensaver.cpblobs
 
-comment "cpblobs needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-cpblobs needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index ad29a90e5e5ee1cec4a080a35ce1b9fc48559715..1303d229fde6af2a3b5fddc8cd0fbcecf1df8f07 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_CRYSTALMORPH
        bool "kodi-screensaver-crystalmorph"
-       depends on BR2_PACKAGE_KODI_GL # libglu
+       depends on BR2_PACKAGE_HAS_LIBGL # libglu
        help
          CrystalMorph screensaver for Kodi
 
          https://github.com/notspiff/screensaver.crystalmorph
 
-comment "kodi-screensaver-crystalmorph needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-crystalmorph needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 14cab180194fb568981c41b18b943d51cfd6ca9d..ce636b82718de24ab62ce15055de4b2eb08ded80 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_GREYNETIC
        bool "kodi-screensaver-greynetic"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          Greynetic screensaver for Kodi
 
          https://github.com/notspiff/screensaver.greynetic
 
-comment "kodi-screensaver-greynetic needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-greynetic needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 72ed958bbff9048d6847c1ba7d3cdf8a17b89633..e2d3f71acfda111a18b5c1714291a04fb20e5dce 100644 (file)
@@ -1,11 +1,11 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_MATRIXTRAILS
        bool "kodi-screensaver-matrixtrails"
-       depends on BR2_PACKAGE_KODI_GL # libsoil
+       depends on BR2_PACKAGE_HAS_LIBGL # libsoil
        select BR2_PACKAGE_LIBSOIL
        help
          Matrix trails screensaver for Kodi
 
          https://github.com/notspiff/screensaver.matrixtrails
 
-comment "matrixtrails needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-matrixtrails needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
diff --git a/package/kodi-screensaver-matrixtrails/kodi-screensaver-matrixtrails.hash b/package/kodi-screensaver-matrixtrails/kodi-screensaver-matrixtrails.hash
new file mode 100644 (file)
index 0000000..5ae2459
--- /dev/null
@@ -0,0 +1,2 @@
+# Locally computed
+sha256 91990a29072cf85f4b9253a16a362d83fdfcc7595de796d982a189aa8618555c  kodi-screensaver-matrixtrails-16057e7195f930109f0a4aea999296ca315700e5.tar.gz
index 4ccf4c473b734f1a02a11a4f46751e47c2e5e9bc..3971052b94e9253a6e026f9d6cb766629e9ebceb 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_PINGPONG
        bool "kodi-screensaver-pingpong"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          Ping-pong screensaver for Kodi
 
          https://github.com/notspiff/screensaver.pingpong
 
-comment "kodi-screensaver-greynetic needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-pingpong needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 10322924cd66b39c27c7682ab772770240e0f677..b63d70e6418749b893aa46f8d7b590f2e4408b68 100644 (file)
@@ -1,11 +1,11 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_PLANESTATE
        bool "kodi-screensaver-planestate"
-       depends on BR2_PACKAGE_KODI_GL # libsoil
+       depends on BR2_PACKAGE_HAS_LIBGL # libsoil
        select BR2_PACKAGE_LIBSOIL
        help
          PlaneState screensaver for Kodi
 
          https://github.com/notspiff/screensaver.planestate
 
-comment "planestate needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-planestate needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 45432c4716e202e0bf06dd54fd9604e285934f77..982542d5a35e27574b23891c7d2def7873eb0c00 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_PYRO
        bool "kodi-screensaver-pyro"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          Pyro screensaver for Kodi
 
          https://github.com/notspiff/screensaver.pyro
 
-comment "kodi-screensaver-pyro needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-pyro needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index da12651a83c16c13d828524be260b095eb0495b2..11546ad1f89cec9a3b7a8bc27c111f66fa27ffd9 100644 (file)
@@ -1,10 +1,12 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_RSXS
        bool "kodi-screensaver-rsxs"
-       depends on BR2_PACKAGE_KODI_GL # libglu
+       depends on BR2_PACKAGE_HAS_LIBGL # libglu
+       depends on BR2_PACKAGE_XORG7 # xlib_libXmu
+       select BR2_PACKAGE_XLIB_LIBXMU
        help
          RSXS screensaver add-ons for Kodi
 
          https://github.com/notspiff/screensavers.rsxs
 
-comment "kodi-screensaver-rsxs needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-rsxs depends on X.org and needs OpenGL"
+       depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_HAS_LIBGL
index c76e9da954372e79134f921856e4e7e8e347a830..7df6c22cef0df3718a13cd1dad3d13024550e259 100644 (file)
@@ -9,6 +9,6 @@ KODI_SCREENSAVER_RSXS_SITE = $(call github,notspiff,screensavers.rsxs,$(KODI_SCR
 KODI_SCREENSAVER_RSXS_LICENSE = GPLv3
 KODI_SCREENSAVER_RSXS_LICENSE_FILES = lib/rsxs-1.0/COPYING
 
-KODI_SCREENSAVER_RSXS_DEPENDENCIES = kodi
+KODI_SCREENSAVER_RSXS_DEPENDENCIES = kodi xlib_libXmu
 
 $(eval $(cmake-package))
index c78021a1fcd41c4a52a5b110f13c7fea3da032be..bcfb47b2cc87384f838a0bce0e64fd9d48b63180 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_SCREENSAVER_STARS
        bool "kodi-screensaver-stars"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          Starfield screensaver for Kodi
 
          https://github.com/notspiff/screensaver.stars
 
-comment "kodi-screensaver-starts needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-screensaver-stars needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 9f1a4c5cac154af692fc644dd35f1d702774b5f1..9e2eabbdbc033abfdc271129709b34a3debbfeb9 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_VISUALISATION_FISHBMC
        bool "kodi-visualisation-fishbmc"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          Fische visualiser for Kodi
 
          https://github.com/notspiff/visualization.fishbmc
 
-comment "fishbmc needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-visualisation-fishbmc needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 2c52edd3365f685c62e505035c89a7c81214aade..570d169338cf376f068376835a13ba4e10d2a16b 100644 (file)
@@ -1,11 +1,11 @@
 config BR2_PACKAGE_KODI_VISUALISATION_FOUNTAIN
        bool "kodi-visualisation-fountain"
-       depends on BR2_PACKAGE_KODI_GL # libsoil
+       depends on BR2_PACKAGE_HAS_LIBGL # libsoil
        select BR2_PACKAGE_LIBSOIL
        help
          Fountain visualization for Kodi
 
          https://github.com/notspiff/visualization.fountain
 
-comment "fountain needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-visualisation-fountain needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index c5fa9827acf120dd051b593bc9c34abd4ce198c9..de4d2ef2ff48cbdb223234339924abbde9c9072b 100644 (file)
@@ -1,10 +1,10 @@
 config BR2_PACKAGE_KODI_VISUALISATION_GOOM
        bool "kodi-visualisation-goom"
-       depends on BR2_PACKAGE_KODI_GL
+       depends on BR2_PACKAGE_HAS_LIBGL
        help
          GOOM visualiser for Kodi
 
          https://github.com/notspiff/visualization.goom
 
-comment "kodi-visualization-goom needs an OpenGL backend"
-       depends on !BR2_PACKAGE_KODI_GL
+comment "kodi-visualization-goom needs OpenGL"
+       depends on !BR2_PACKAGE_HAS_LIBGL
index 10a6e55d5911fab350dbc685232fcf8da3fd5c55..ac1770270928860b1a61ada9e81c1e0b2667ee62 100644 (file)
@@ -1,5 +1,7 @@
 config BR2_PACKAGE_KODI_VISUALISATION_SHADERTOY
        bool "kodi-visualisation-shadertoy"
+       select BR2_PACKAGE_LIBGLEW if BR2_PACKAGE_HAS_LIBGL
+       select BR2_PACKAGE_LIBPLATFORM
        help
          Shadertoy visualiser for Kodi
 
index 308016ed36f52dda16a193c89300d4b5aa0e4b7e..e5f2d911db08078db08794cd8697954d2d853d48 100644 (file)
@@ -10,4 +10,8 @@ KODI_VISUALISATION_SHADERTOY_LICENSE = GPLv2+
 KODI_VISUALISATION_SHADERTOY_LICENSE_FILES = src/main.cpp
 KODI_VISUALISATION_SHADERTOY_DEPENDENCIES = kodi libplatform
 
+ifeq ($(BR2_PACKAGE_LIBGLEW),y)
+KODI_VISUALISATION_SHADERTOY_DEPENDENCIES += libglew
+endif
+
 $(eval $(cmake-package))
diff --git a/package/kodi/0007-exif-Fix-for-out-of-memory-errors-with-large-numbers.patch b/package/kodi/0007-exif-Fix-for-out-of-memory-errors-with-large-numbers.patch
new file mode 100644 (file)
index 0000000..9b0e47d
--- /dev/null
@@ -0,0 +1,45 @@
+From f63563615e357b7d794a38e1d37276c325d1466f Mon Sep 17 00:00:00 2001
+From: popcornmix <popcornmix@gmail.com>
+Date: Sat, 7 May 2016 13:47:42 +0100
+Subject: [PATCH] [exif] Fix for out-of-memory errors with large numbers
+ of jpegs
+
+This reverts part of https://github.com/xbmc/xbmc/pull/7472
+
+Basically the commit made the 4 comments in the exif block increase
+from 2K to 64K each, so you now need 256K per photo.
+
+When opening a folder exif information for all photos is extracted.
+So, for a folder of 5000 jpegs, 1.2GB of RAM is needed just for
+the comments.
+
+As a 64K comment string is of no use to kodi, just truncate them to 2K
+like we used to.
+
+See:
+http://trac.kodi.tv/ticket/16193
+http://forum.kodi.tv/showthread.php?tid=251908
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(backported from upstream commit in master branch:
+ https://github.com/xbmc/xbmc/commit/f63563615e357b7d794a38e1d37276c325d1466f)
+---
+ lib/libexif/libexif.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/libexif/libexif.h b/lib/libexif/libexif.h
+index aa8da07..519ac30 100644
+--- a/lib/libexif/libexif.h
++++ b/lib/libexif/libexif.h
+@@ -81,7 +81,7 @@ typedef struct {
+ #define EXIF_COMMENT_CHARSET_UNICODE    3 // Exif: Unicode (UTF-16)
+ #define EXIF_COMMENT_CHARSET_JIS        4 // Exif: JIS X208-1990
+-#define MAX_COMMENT 65533 // 2 bytes - 2 for the length param
++#define MAX_COMMENT 2000
+ #define MAX_DATE_COPIES 10
+ typedef struct {
+-- 
+2.8.1
+
index 391b4d1d37d37a3cfb0f9866443c0a23162f4077..d9760cac529f26b25f8270885a9190ec400cc222 100644 (file)
@@ -1,6 +1,8 @@
 config BR2_PACKAGE_KODI_ARCH_SUPPORTS
        bool
        default y if (BR2_arm || (BR2_mipsel && BR2_TOOLCHAIN_USES_GLIBC) || BR2_i386 || BR2_x86_64) \
+               && BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS \
+               && BR2_PACKAGE_BOOST_ARCH_SUPPORTS \
                && BR2_TOOLCHAIN_HAS_SYNC_8
 
 comment "kodi needs a uClibc or (e)glibc toolchain w/ C++, threads, wchar, dynamic library, gcc >= 4.7, host gcc >= 4.6"
diff --git a/package/libarchive/0001-fix-CVE-2016-1541.patch b/package/libarchive/0001-fix-CVE-2016-1541.patch
new file mode 100644 (file)
index 0000000..ef2448c
--- /dev/null
@@ -0,0 +1,71 @@
+From d0331e8e5b05b475f20b1f3101fe1ad772d7e7e7 Mon Sep 17 00:00:00 2001
+From: Tim Kientzle <kientzle@acm.org>
+Date: Sun, 24 Apr 2016 17:13:45 -0700
+Subject: [PATCH] Issue #656:  Fix CVE-2016-1541, VU#862384
+
+When reading OS X metadata entries in Zip archives that were stored
+without compression, libarchive would use the uncompressed entry size
+to allocate a buffer but would use the compressed entry size to limit
+the amount of data copied into that buffer.  Since the compressed
+and uncompressed sizes are provided by data in the archive itself,
+an attacker could manipulate these values to write data beyond
+the end of the allocated buffer.
+
+This fix provides three new checks to guard against such
+manipulation and to make libarchive generally more robust when
+handling this type of entry:
+ 1. If an OS X metadata entry is stored without compression,
+    abort the entire archive if the compressed and uncompressed
+    data sizes do not match.
+ 2. When sanity-checking the size of an OS X metadata entry,
+    abort this entry if either the compressed or uncompressed
+    size is larger than 4MB.
+ 3. When copying data into the allocated buffer, check the copy
+    size against both the compressed entry size and uncompressed
+    entry size.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+Status: from upstream https://github.com/libarchive/libarchive/issues/656
+
+ libarchive/archive_read_support_format_zip.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+diff --git a/libarchive/archive_read_support_format_zip.c b/libarchive/archive_read_support_format_zip.c
+index 0f8262c..0a0be96 100644
+--- a/libarchive/archive_read_support_format_zip.c
++++ b/libarchive/archive_read_support_format_zip.c
+@@ -2778,6 +2778,11 @@ zip_read_mac_metadata(struct archive_read *a, struct archive_entry *entry,
+       switch(rsrc->compression) {
+       case 0:  /* No compression. */
++              if (rsrc->uncompressed_size != rsrc->compressed_size) {
++                      archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
++                          "Malformed OS X metadata entry: inconsistent size");
++                      return (ARCHIVE_FATAL);
++              }
+ #ifdef HAVE_ZLIB_H
+       case 8: /* Deflate compression. */
+ #endif
+@@ -2798,6 +2803,12 @@ zip_read_mac_metadata(struct archive_read *a, struct archive_entry *entry,
+                   (intmax_t)rsrc->uncompressed_size);
+               return (ARCHIVE_WARN);
+       }
++      if (rsrc->compressed_size > (4 * 1024 * 1024)) {
++              archive_set_error(&a->archive, ARCHIVE_ERRNO_FILE_FORMAT,
++                  "Mac metadata is too large: %jd > 4M bytes",
++                  (intmax_t)rsrc->compressed_size);
++              return (ARCHIVE_WARN);
++      }
+       metadata = malloc((size_t)rsrc->uncompressed_size);
+       if (metadata == NULL) {
+@@ -2836,6 +2847,8 @@ zip_read_mac_metadata(struct archive_read *a, struct archive_entry *entry,
+                       bytes_avail = remaining_bytes;
+               switch(rsrc->compression) {
+               case 0:  /* No compression. */
++                      if ((size_t)bytes_avail > metadata_bytes)
++                              bytes_avail = metadata_bytes;
+                       memcpy(mp, p, bytes_avail);
+                       bytes_used = (size_t)bytes_avail;
+                       metadata_bytes -= bytes_used;
index a8208de09011c930ed039097b76f5cc6454a0846..f9b90c0b4d62e0dedbabcf70e7102ef4109d9897 100644 (file)
@@ -1,2 +1,2 @@
 # Locally calculated after checking pgp signature
-sha256 864e7819210b586d42c674a1fdd577ce75a78b3dda64c63565abe5aefd72c753        curl-7.48.0.tar.bz2
+sha256 eb63cec4bef692eab9db459033f409533e6d10e20942f4b060b32819e81885f1  curl-7.49.1.tar.bz2
index d2c39d5ea9f7d68e31a31f0c0487aed4ad998af9..942c677191de7ca5ca7b9063858a3d81936df6d2 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBCURL_VERSION = 7.48.0
+LIBCURL_VERSION = 7.49.1
 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.bz2
 LIBCURL_SITE = http://curl.haxx.se/download
 LIBCURL_DEPENDENCIES = host-pkgconf \
diff --git a/package/libdrm/0003-xf86atomic-require-CAS-support-in-libatomic_ops.patch b/package/libdrm/0003-xf86atomic-require-CAS-support-in-libatomic_ops.patch
new file mode 100644 (file)
index 0000000..ff920fb
--- /dev/null
@@ -0,0 +1,32 @@
+From 7384f79f69fdb7b691cc5b0c28c301b3fe8b633e Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Thu, 26 May 2016 10:46:57 +0200
+Subject: [PATCH] xf86atomic: require CAS support in libatomic_ops
+
+Since AO_compare_and_swap_full() is used by libdrm, AO_REQUIRE_CAS
+must be defined before including <atomic_ops.h> so that we are sure
+that CAS support will be provided. This is necessary to make sure that
+the AO_compare_and_swap_full() function will be provided on all
+architectures, including the ones that don't have built-in CAS support
+such as SPARCv8.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ xf86atomic.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/xf86atomic.h b/xf86atomic.h
+index 922b37d..d7017a5 100644
+--- a/xf86atomic.h
++++ b/xf86atomic.h
+@@ -58,6 +58,7 @@ typedef struct {
+ #endif
+ #if HAVE_LIB_ATOMIC_OPS
++#define AO_REQUIRE_CAS
+ #include <atomic_ops.h>
+ #define HAS_ATOMIC_OPS 1
+-- 
+2.7.4
+
index 343a2ed5918bb2e43c5074b918f875b7b710dc1b..7c2a82859fb03b81c257b9d926df18b746f4b8d0 100644 (file)
@@ -9,6 +9,15 @@ config BR2_PACKAGE_LIBDRM
 
 if BR2_PACKAGE_LIBDRM
 
+config BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       bool
+       default y if BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS || \
+               BR2_TOOLCHAIN_HAS_SYNC_4
+
+config BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
+       bool
+       select BR2_PACKAGE_LIBATOMIC_OPS if !BR2_TOOLCHAIN_HAS_SYNC_4
+
 config BR2_PACKAGE_LIBDRM_INSTALL_TESTS
        bool "Install test programs"
        help
@@ -18,24 +27,31 @@ menu "DRM Drivers"
 
 config BR2_PACKAGE_LIBDRM_INTEL
        bool "intel"
-       select BR2_PACKAGE_LIBATOMIC_OPS
        select BR2_PACKAGE_LIBPCIACCESS
        depends on BR2_i386 || BR2_x86_64
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install intel graphics driver.
 
 config BR2_PACKAGE_LIBDRM_RADEON
        bool "radeon"
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install AMD/ATI graphics driver.
 
 config BR2_PACKAGE_LIBDRM_AMDGPU
        bool "amdgpu"
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install AMD GPU driver.
 
 config BR2_PACKAGE_LIBDRM_NOUVEAU
        bool "nouveau"
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install NVIDIA graphics driver.
 
@@ -48,6 +64,8 @@ config BR2_PACKAGE_LIBDRM_VMWGFX
 config BR2_PACKAGE_LIBDRM_OMAP
        bool "omap (experimental)"
        depends on BR2_arm
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install the TI OMAP driver using an experimental API.
 
@@ -60,12 +78,16 @@ config BR2_PACKAGE_LIBDRM_EXYNOS
 config BR2_PACKAGE_LIBDRM_FREEDRENO
        bool "freedreno"
        depends on BR2_arm || BR2_aarch64 || BR2_aarch64_be
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install Qualcomm Snapdragon driver.
 
 config BR2_PACKAGE_LIBDRM_TEGRA
        bool "tegra (experimental)"
        depends on BR2_arm
+       depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC
+       select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC
        help
          Install NVIDIA Tegra driver using an experimental API.
 
index 1d41f0591276524f112e71b316ec9bff30a8b136..50fa7ef92f08e6ab71d4fe05509e7ff7311e3617 100644 (file)
@@ -21,9 +21,16 @@ LIBDRM_CONF_OPTS = \
 
 LIBDRM_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
 
+ifeq ($(BR2_PACKAGE_LIBATOMIC_OPS),y)
+LIBDRM_DEPENDENCIES += libatomic_ops
+ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y)
+LIBDRM_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -DAO_NO_SPARC_V9"
+endif
+endif
+
 ifeq ($(BR2_PACKAGE_LIBDRM_INTEL),y)
 LIBDRM_CONF_OPTS += --enable-intel
-LIBDRM_DEPENDENCIES += libatomic_ops libpciaccess
+LIBDRM_DEPENDENCIES += libpciaccess
 else
 LIBDRM_CONF_OPTS += --disable-intel
 endif
index 8e717ce24c2ff806de83518f47d75a3c6bdf90c7..7436e8fed626766cf8ea91ebdf1d58d9a8037afc 100644 (file)
@@ -7,9 +7,7 @@
 LIBEPOXY_VERSION = v1.3.1
 LIBEPOXY_SITE = $(call github,anholt,libepoxy,$(LIBEPOXY_VERSION))
 LIBEPOXY_INSTALL_STAGING = YES
-# For patches:
-# 0001-make-egl-and-glx-conditional.patch
-# 0002-Forward-egl-cflags-into-epoxy.pc.patch
+# For patches 0001-0006:
 LIBEPOXY_AUTORECONF = YES
 LIBEPOXY_DEPENDENCIES = xutil_util-macros
 LIBEPOXY_LICENSE = MIT
@@ -23,7 +21,7 @@ LIBEPOXY_CONF_OPTS += --disable-egl
 endif
 
 ifeq ($(BR2_PACKAGE_HAS_LIBGL)$(BR2_PACKAGE_XLIB_LIBX11),yy)
-LIBEPOXY_CONF_OPTS += --enable-egl
+LIBEPOXY_CONF_OPTS += --enable-glx
 LIBEPOXY_DEPENDENCIES += libgl xlib_libX11
 else
 LIBEPOXY_CONF_OPTS += --disable-glx
index 186809985ca403500a218bb00664a3c2fd0b87de..574ddd6be14d4c4dda76c94ec3f09d2c2bcdb3ae 100644 (file)
@@ -23,7 +23,9 @@ LIBGPGME_CONF_OPTS = --with-gpg=/usr/bin/gpg \
 
 # Handle argp-standalone or it errors out during build
 ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y)
-LIBGPGME_CONF_ENV += LIBS="-largp"
+# musl libc does not define error_t in errno.h, but argp.h does.
+# Assume we have error_t to avoid collision with the argp.h error_t.
+LIBGPGME_CONF_ENV += LIBS="-largp" ac_cv_type_error_t=yes
 LIBGPGME_DEPENDENCIES += argp-standalone
 endif
 
diff --git a/package/libinput/0002-Add-configure.ac-check-for-static_assert.patch b/package/libinput/0002-Add-configure.ac-check-for-static_assert.patch
new file mode 100644 (file)
index 0000000..4df47b9
--- /dev/null
@@ -0,0 +1,34 @@
+From 0df21f54942dc82ddde4095824e7b65efb96d261 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Mon, 16 May 2016 13:32:07 +1000
+Subject: [PATCH] Add configure.ac check for static_assert
+
+Part of C11, defined via assert.h.
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: suggested upstream
+(https://lists.freedesktop.org/archives/wayland-devel/2016-May/028881.html)
+
+ configure.ac | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 602a86026544..28a5197cfa2e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,6 +55,10 @@ AC_CHECK_DECL(TFD_CLOEXEC,[],
+ AC_CHECK_DECL(CLOCK_MONOTONIC,[],
+             [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile libinput")],
+             [[#include <time.h>]])
++AC_CHECK_DECL(static_assert, [],
++            [AC_DEFINE(static_assert(...), [/* */], [noop static_assert() replacement]),
++              AC_MSG_RESULT([no])],
++            [[#include <assert.h>]])
+ PKG_PROG_PKG_CONFIG()
+ PKG_CHECK_MODULES(MTDEV, [mtdev >= 1.1.0])
+-- 
+2.8.1
+
index 2256287fbd6e1ae7414044a88616798d0227664d..2ff0de36853ef21afc9eb2ad088a275bc338be3e 100644 (file)
@@ -13,12 +13,14 @@ LIBINPUT_LICENSE = MIT
 LIBINPUT_LICENSE_FILES = COPYING
 # Tests need fork, so just disable them everywhere.
 LIBINPUT_CONF_OPTS = --disable-tests --disable-libwacom
+# Patching configure.ac
+LIBINPUT_AUTORECONF = YES
 
 ifeq ($(BR2_PACKAGE_LIBGTK3),y)
 LIBINPUT_CONF_OPTS += --enable-event-gui
 LIBINPUT_DEPENDENCIES += libgtk3
 else
-LIBINOUT_CONF_OPTS += --disable-event-gui
+LIBINPUT_CONF_OPTS += --disable-event-gui
 endif
 
 $(eval $(autotools-package))
index 730d9fef65f907a9a8bc24b14894d38e5d43acfc..ebb5897d0973b58d6f92336773d5c9fe9eb840f1 100644 (file)
@@ -11,6 +11,7 @@ LIBPJSIP_DEPENDENCIES = libsrtp
 LIBPJSIP_LICENSE = GPLv2+
 LIBPJSIP_LICENSE_FILES = COPYING
 LIBPJSIP_INSTALL_STAGING = YES
+LIBPJSIP_MAKE = $(MAKE1)
 
 LIBPJSIP_CONF_ENV = \
        LD="$(TARGET_CC)" \
index d9a83c0cf5bc283fca664a39c44df93c6d20835a..5e9ad8fee557bad324318dc847c4b541edca6f67 100644 (file)
@@ -5,6 +5,7 @@ config BR2_PACKAGE_LIBSEMANAGE
        select BR2_PACKAGE_BZIP2
        depends on BR2_TOOLCHAIN_HAS_THREADS
        depends on !BR2_STATIC_LIBS
+       depends on !BR2_TOOLCHAIN_USES_MUSL # getpwent_r()
        depends on !BR2_arc
        help
          libsemanage is the policy management library. It uses
@@ -19,4 +20,5 @@ config BR2_PACKAGE_LIBSEMANAGE
 
 comment "libsemanage needs a toolchain w/ threads, dynamic library"
        depends on !BR2_arc
+       depends on !BR2_TOOLCHAIN_USES_MUSL
        depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
index e5224da2eed1e2f113f617b60fb14fa28692b8e7..e96ba5f017679b64b9380e9411608a212836d938 100644 (file)
@@ -3,12 +3,12 @@ config BR2_PACKAGE_LIBSIGSEGV
        depends on !BR2_xtensa
        depends on !BR2_arc # no ucontext_i.sym file
        depends on !BR2_microblaze
-       # No ucontext support in uclibc for powerpc and superh
-       depends on !((BR2_powerpc || BR2_sh) && BR2_TOOLCHAIN_USES_UCLIBC)
+       # No ucontext support in uclibc for powerpc, sparc and superh
+       depends on !((BR2_powerpc || BR2_sh || BR2_sparc ) && BR2_TOOLCHAIN_USES_UCLIBC)
        help
          Library for handling page faults in user mode.
 
          http://libsigsegv.sourceforge.net/
 
 comment "libsigsegv needs an (e)glibc toolchain"
-       depends on (BR2_powerpc || BR2_sh) && BR2_TOOLCHAIN_USES_UCLIBC
+       depends on (BR2_powerpc || BR2_sh || BR2_sparc) && BR2_TOOLCHAIN_USES_UCLIBC
index 00fbf4372bdc1ed5896441de760d0a3a4c74e1eb..098121e11741ae939de4c623496b60b0b779d00e 100644 (file)
@@ -1,2 +1,2 @@
 # Locally calculated after checking pgp signature
-sha256 4de9e31f46b44d34871c22f54bfc54398ef124d6f7cafb1f4a5958fbcd3ba12d        libxml2-2.9.3.tar.gz
+sha256 ffb911191e509b966deb55de705387f14156e1a56b21824357cdf0053233633c        libxml2-2.9.4.tar.gz
index ee9b2ca44e306b0c5d4c1c3ac8d4309002e3428a..ed6f9af49b3603c8878932fc84f07f2780ccdc3a 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBXML2_VERSION = 2.9.3
+LIBXML2_VERSION = 2.9.4
 LIBXML2_SITE = ftp://xmlsoft.org/libxml2
 LIBXML2_INSTALL_STAGING = YES
 LIBXML2_LICENSE = MIT
diff --git a/package/libxslt/0001-Make-maxvars-option-work.patch b/package/libxslt/0001-Make-maxvars-option-work.patch
deleted file mode 100644 (file)
index d37cf62..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 5af7ad745323004984287e48b42712e7305de35c Mon Sep 17 00:00:00 2001
-From: Per Hedeland <per@hedeland.org>
-Date: Fri, 13 Dec 2013 14:43:06 +0100
-Subject: [PATCH] Make --maxvars option work
-
-From upstream: https://gitorious.org/libxslt/libxslt/commit/5af7ad745323004984287e48b42
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- xsltproc/xsltproc.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/xsltproc/xsltproc.c b/xsltproc/xsltproc.c
-index b22df37..66d8cbb 100644
---- a/xsltproc/xsltproc.c
-+++ b/xsltproc/xsltproc.c
-@@ -803,6 +803,10 @@ main(int argc, char **argv)
-             (!strcmp(argv[i], "--maxdepth"))) {
-             i++;
-             continue;
-+        } else if ((!strcmp(argv[i], "-maxvars")) ||
-+            (!strcmp(argv[i], "--maxvars"))) {
-+            i++;
-+            continue;
-         } else if ((!strcmp(argv[i], "-maxparserdepth")) ||
-             (!strcmp(argv[i], "--maxparserdepth"))) {
-             i++;
--- 
-2.1.0
-
index 140db09df085ff5f1afc8a4a66588aea09754966..8222bc590dda007e7362f3e3eee4059b5bd5d24f 100644 (file)
@@ -1,2 +1,2 @@
-# Locally calculated
-sha256 5fc7151a57b89c03d7b825df5a0fae0a8d5f05674c0e7cf2937ecec4d54a028c        libxslt-1.1.28.tar.gz
+# Locally calculated after checking pgp signature
+sha256 b5976e3857837e7617b29f2249ebb5eeac34e249208d31f1fbf7a6ba7a4090ce        libxslt-1.1.29.tar.gz
index 0cc4bb960b9f117a6dbb183c984b3831a0b31309..868ba6a10f9b483aee1aabeb2507bf747d35f461 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBXSLT_VERSION = 1.1.28
+LIBXSLT_VERSION = 1.1.29
 LIBXSLT_SITE = ftp://xmlsoft.org/libxslt
 LIBXSLT_INSTALL_STAGING = YES
 LIBXSLT_LICENSE = MIT
index cc0ab41a403d2644c470aeb2356965bef8a24100..c07455a97bf1bacdc7b9381c1f73f6b91df00c90 100644 (file)
@@ -222,14 +222,14 @@ config BR2_DEFAULT_KERNEL_HEADERS
        default "3.4.112"       if BR2_KERNEL_HEADERS_3_4
        default "3.10.101"      if BR2_KERNEL_HEADERS_3_10
        default "3.12.59"       if BR2_KERNEL_HEADERS_3_12
-       default "3.14.68"       if BR2_KERNEL_HEADERS_3_14
-       default "3.18.32"       if BR2_KERNEL_HEADERS_3_18
+       default "3.14.70"       if BR2_KERNEL_HEADERS_3_14
+       default "3.18.33"       if BR2_KERNEL_HEADERS_3_18
        default "3.19.8"        if BR2_KERNEL_HEADERS_3_19
        default "4.0.9"         if BR2_KERNEL_HEADERS_4_0
-       default "4.1.23"        if BR2_KERNEL_HEADERS_4_1
+       default "4.1.24"        if BR2_KERNEL_HEADERS_4_1
        default "4.2.8"         if BR2_KERNEL_HEADERS_4_2
        default "4.3.6"         if BR2_KERNEL_HEADERS_4_3
-       default "4.4.9"         if BR2_KERNEL_HEADERS_4_4
-       default "4.5.3"         if BR2_KERNEL_HEADERS_4_5
+       default "4.4.11"        if BR2_KERNEL_HEADERS_4_4
+       default "4.5.5"         if BR2_KERNEL_HEADERS_4_5
        default "4.6"           if BR2_KERNEL_HEADERS_4_6
        default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
diff --git a/package/liquid-dsp/0002-math-poly-wrapping-isnan-in-T_ABS-to-help-compilatio.patch b/package/liquid-dsp/0002-math-poly-wrapping-isnan-in-T_ABS-to-help-compilatio.patch
new file mode 100644 (file)
index 0000000..f8dd602
--- /dev/null
@@ -0,0 +1,39 @@
+From 3055eb3da9d0a202c1a975f7db0c8370a09a30bc Mon Sep 17 00:00:00 2001
+From: "Joseph D. Gaeddert" <joseph@liquidsdr.org>
+Date: Thu, 25 Feb 2016 17:47:07 -0500
+Subject: [PATCH] math/poly: wrapping isnan in T_ABS to help compilation w/
+ certain gcc versions
+
+This is an upstreamed patch backported from here:
+
+https://github.com/jgaeddert/liquid-dsp/commit/3055eb3da9d0a202c1a975f7db0c8370a09a30bc
+
+It fixes the following error:
+
+src/math/src/poly.findroots.c: In function
+'polyc_findroots_bairstow_recursion':
+src/math/src/poly.findroots.c:305:9: error: non-floating-point argument
+in call to function '__builtin_isnan'
+         if (isnan(du) || isnan(dv)) {
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+---
+ src/math/src/poly.findroots.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/math/src/poly.findroots.c b/src/math/src/poly.findroots.c
+index 21b5756..e000ee8 100644
+--- a/src/math/src/poly.findroots.c
++++ b/src/math/src/poly.findroots.c
+@@ -302,7 +302,7 @@ void POLY(_findroots_bairstow_recursion)(T *          _p,
+ #endif
+         // adjust u, v
+-        if (isnan(du) || isnan(dv)) {
++        if (isnan(T_ABS(du)) || isnan(T_ABS(dv))) {
+             u *= 0.5f;
+             v *= 0.5f;
+         } else {
+-- 
+2.7.3
+
diff --git a/package/lirc-tools/0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch b/package/lirc-tools/0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch
new file mode 100644 (file)
index 0000000..5863128
--- /dev/null
@@ -0,0 +1,46 @@
+From f2fc8c48e5e55a91b309225f377b6cb3783fc6f6 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Wed, 25 May 2016 15:21:57 +0200
+Subject: [PATCH] lib: use proper linking method to avoid parallel build issue
+
+Using <foo>_LDFLAGS = -l<library> is correct when <library> is an
+external library. However, when it is built by the same package, and
+especially in the same directory, this is wrong and can cause parallel
+build issues. In lib/Makefile.am, there was:
+
+libirrecord_la_LDFLAGS      = -llirc
+
+But the liblirc library is built in the same directory. Or, due to the
+using of <foo>_LDFLAGS, make is not aware of the build dependency
+between libirrecord and liblirc.
+
+To solve this, <foo>_LIBADD should be used instead, as follows:
+
+libirrecord_la_LIBADD       = liblirc.la
+
+This fixes parallel build issues seen by automated build tests
+conducted by the Buildroot project, such as:
+
+  http://autobuild.buildroot.org/results/eb4/eb47d57de8182d25b1dacbf0ac3726ed20063d04/build-end.log
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ lib/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Makefile.am b/lib/Makefile.am
+index ce5c94c..8780f88 100644
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -29,7 +29,7 @@ liblirc_la_SOURCES          = config_file.c \
+                               transmit.c \
+                               util.c
+-libirrecord_la_LDFLAGS      = -llirc
++libirrecord_la_LIBADD       = liblirc.la
+ libirrecord_la_SOURCES      = irrecord.c
+ liblirc_client_la_LDFLAGS   = -version-info 4:0:4
+-- 
+2.7.4
+
index 46886a9aa7d2ef67c3dd57de446b1b27d925a6b7..289b9ed2310ed71e5e23aa13ef2a006176cb070a 100644 (file)
@@ -11,6 +11,8 @@ LIRC_TOOLS_LICENSE = GPLv2+
 LIRC_TOOLS_LICENSE_FILES = COPYING
 LIRC_TOOLS_DEPENDENCIES = host-libxslt host-pkgconf host-python3
 LIRC_TOOLS_INSTALL_STAGING = YES
+# 0001-lib-use-proper-linking-method-to-avoid-parallel-buil.patch
+LIRC_TOOLS_AUTORECONF = YES
 
 LIRC_TOOLS_CONF_ENV = XSLTPROC=yes
 LIRC_TOOLS_CONF_OPTS = --without-x
index e77f2ac931492a8dec0e965d3cabe131b7e2b634..bbd270ea133dbc847a53eb1850d95327981f611c 100644 (file)
@@ -12,18 +12,22 @@ LTRIS_LICENSE_FILES = COPYING
 LTRIS_DEPENDENCIES = sdl
 
 LTRIS_CONF_ENV = \
-       SDL_CONFIG="$(STAGING_DIR)/usr/bin/sdl-config"
+       SDL_CONFIG="$(STAGING_DIR)/usr/bin/sdl-config" \
+       LIBS="$(LTRIS_LIBS)"
 
 ifeq ($(BR2_PACKAGE_LTRIS_AUDIO),y)
-LTRIS_DEPENDENCIES += sdl_mixer
-LTRIS_CONF_OPTS += --enable-audio=yes
+LTRIS_DEPENDENCIES += sdl_mixer host-pkgconf
+LTRIS_CONF_OPTS += --enable-sound
+# configure script does NOT use pkg-config to figure out how to link
+# with sdl_mixer, breaking static linking as sdl_mixer can use libmad
+LTRIS_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs SDL_mixer`
 else
-LTRIS_CONF_OPTS += --disable-audio
+LTRIS_CONF_OPTS += --disable-sound
 endif
 
 ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
 LTRIS_DEPENDENCIES += gettext
-LTRIS_CONF_ENV += LIBS=-lintl
+LTRIS_LIBS += -lintl
 endif
 
 $(eval $(autotools-package))
diff --git a/package/lttng-babeltrace/0002-configure-fix-uuid-support-detection-on-static-build.patch b/package/lttng-babeltrace/0002-configure-fix-uuid-support-detection-on-static-build.patch
new file mode 100644 (file)
index 0000000..849c0a3
--- /dev/null
@@ -0,0 +1,63 @@
+From 670d0961a823df0db28f39a354430f3dc2519418 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 28 May 2016 12:53:33 +0200
+Subject: [PATCH] configure: fix uuid support detection on static build
+
+This change adds uuid support detection using pkg-config, before falling
+back on default AC_CHECK_LIB calls.
+
+Using flags from pkg-config is useful for static build, because they
+also include dependency flags; whereas
+
+AC_CHECK_LIB function achieves its test by trying to link against the
+requested library, without taking care of its dependency
+requirements/flags. Therefore, in case of static build, it can fail on
+the uuid detection like [1], because the uuid's dependency flags
+(regarding gettext) are missing.
+Instead, using pkg-config to do the check will take care of getting and
+setting all required flags.
+
+This change adds uuid detection using pkg-config helper before falling
+back on the standard AC_CHECK_LIB detection for platforms missing
+pkg-config.
+
+This issue [1] has been triggered on Buildroot farms.
+
+[1] http://autobuild.buildroot.net/results/43b/43b98ddf9eb44152ed9ac4a98d887af14831d8da/build-end.log
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ configure.ac | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index 632fe39..b344fa8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -65,6 +65,15 @@ esac
+ AM_CONDITIONAL([BABELTRACE_BUILD_WITH_MINGW], [test "x$MINGW32" = "xyes"])
+ # Check for libuuid
++PKG_CHECK_MODULES([UUID], [uuid],
++[
++      LIBS="${UUID_LIBS} ${LIBS}"
++      CFLAGS="${CFLAGS} ${UUID_CFLAGS}"
++      AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.])
++      have_libuuid=yes
++],
++[
++# try detecting libuuid without pkg-config
+ AC_CHECK_LIB([uuid], [uuid_generate],
+ [
+       AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.])
+@@ -83,6 +92,7 @@ AC_CHECK_LIB([uuid], [uuid_generate],
+                       AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.])
+               fi
+       ])
++])
+ ]
+ )
+ AM_CONDITIONAL([BABELTRACE_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"])
+-- 
+2.8.3
+
index 5de77fb14da408680ad7e0249625c60e7f4f123f..fdc647e8dadc02bda6df7e295fd282e25e5ac66b 100644 (file)
@@ -10,7 +10,9 @@ LTTNG_BABELTRACE_SOURCE = babeltrace-$(LTTNG_BABELTRACE_VERSION).tar.bz2
 LTTNG_BABELTRACE_LICENSE = MIT, LGPLv2.1 (include/babeltrace/list.h), GPLv2 (test code)
 LTTNG_BABELTRACE_LICENSE_FILES = mit-license.txt gpl-2.0.txt LICENSE
 
-LTTNG_BABELTRACE_DEPENDENCIES = popt util-linux libglib2
+LTTNG_BABELTRACE_DEPENDENCIES = popt util-linux libglib2 host-pkgconf
+# for 0002-configure-fix-uuid-support-detection-on-static-build.patch
+LTTNG_BABELTRACE_AUTORECONF = YES
 
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))
diff --git a/package/lxc/0002-Fix-redefinition-of-struct-in6_addr.patch b/package/lxc/0002-Fix-redefinition-of-struct-in6_addr.patch
new file mode 100644 (file)
index 0000000..b48ece3
--- /dev/null
@@ -0,0 +1,43 @@
+From 245bba9aadf8e7aea487b6fbd851f86c75524552 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
+Date: Thu, 19 May 2016 21:51:27 +0200
+Subject: [PATCH] Fix redefinition of struct in6_addr
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+struct in6_addr is both defined in the C library header <netinet/in.h>
+and the Linux kernel header <linux/in6.h>.
+
+lxc_user_nic.c includes both <netinet/in.h> and <linux/if_bridge.h>. The
+later one includes <linux/in6.h>.
+
+This breaks build with the musl libc:
+  error: redefinition of â€˜struct in6_addr’
+
+As lxc_user_nic.c does not use any references from <linux/if_bridge.h> it
+is safe to remove this header.
+
+Upstream status: Pending
+https://github.com/lxc/lxc/pull/1029
+
+Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
+---
+ src/lxc/lxc_user_nic.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/lxc/lxc_user_nic.c b/src/lxc/lxc_user_nic.c
+index 87780ca..0cb38ba 100644
+--- a/src/lxc/lxc_user_nic.c
++++ b/src/lxc/lxc_user_nic.c
+@@ -41,7 +41,6 @@
+ #include <net/if.h>
+ #include <net/if_arp.h>
+ #include <netinet/in.h>
+-#include <linux/if_bridge.h>
+ #include <linux/netlink.h>
+ #include <linux/rtnetlink.h>
+ #include <linux/sockios.h>
+-- 
+2.8.2
+
index 702f58395274e10b101e5aec4f5ebffc61f323d3..387685c033949d5c1bcaf75ae6eeefb0910d41b9 100644 (file)
@@ -7,7 +7,7 @@
 MALI_T76X_VERSION = r5p0-06rel0
 MALI_T76X_SOURCE = mali-t76x_$(MALI_T76X_VERSION)_linux_1+fbdev.tar.gz
 MALI_T76X_SITE = http://malideveloper.arm.com/downloads/drivers/binary/$(MALI_T76X_VERSION)
-
+MALI_T76X_DEPENDENCIES = mesa3d-headers
 MALI_T76X_INSTALL_STAGING = YES
 MALI_T76X_PROVIDES = libegl libgles
 
index fe166e21f4dbdcceaca3d682c4489bd5d1560caf..994a3f40a8081d1e04c77589c98854ef9001e57e 100644 (file)
@@ -23,6 +23,9 @@ define MBEDTLS_ENABLE_THREADING
                $(@D)/include/mbedtls/config.h
 endef
 MBEDTLS_POST_PATCH_HOOKS += MBEDTLS_ENABLE_THREADING
+ifeq ($(BR2_STATIC_LIBS),y)
+MBEDTLS_CONF_OPTS += -DLINK_WITH_PTHREAD=ON
+endif
 endif
 
 ifeq ($(BR2_STATIC_LIBS),y)
index 4e0d25540738b844f70d975a52379ff06ec69fc5..15ba42299d83ebef362b7e5a60a1bbcf4ff1b312 100644 (file)
@@ -22,6 +22,14 @@ MESA3D_DEPENDENCIES = \
        expat \
        libdrm
 
+# The Sourcery MIPS toolchain has a special (non-upstream) feature to
+# have "compact exception handling", which unfortunately breaks with
+# mesa3d, so we disable it here by passing -mno-compact-eh.
+ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS),y)
+MESA3D_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mno-compact-eh"
+MESA3D_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -mno-compact-eh"
+endif
+
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 MESA3D_DEPENDENCIES += openssl
 MESA3D_CONF_OPTS += --with-sha1=libcrypto
@@ -108,6 +116,8 @@ endif
 # libGL is only provided for a full xorg stack
 ifeq ($(BR2_PACKAGE_XORG7),y)
 MESA3D_PROVIDES += libgl
+else
+MESA3D_POST_INSTALL_STAGING_HOOKS += MESA3D_REMOVE_OPENGL_PC
 endif
 MESA3D_CONF_OPTS += \
        --enable-shared-glapi \
index 91a63af2de6f44629fb4bfa8f8eb38a85da25990..9751f33eac99355ee71377e18560bd8f6aa9f962 100644 (file)
@@ -1,7 +1,7 @@
 comment "midori needs libgtk3 and an (e)glibc toolchain w/ C++, gcc >= 4.9"
        depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_LIBGTK3 \
-               || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+               || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_TOOLCHAIN_USES_GLIBC
 
 config BR2_PACKAGE_MIDORI
        bool "midori"
@@ -18,6 +18,7 @@ config BR2_PACKAGE_MIDORI
        depends on BR2_PACKAGE_LIBGTK3
        depends on BR2_INSTALL_LIBSTDCPP # webkitgtk
        depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # webkitgtk
+       depends on BR2_TOOLCHAIN_USES_GLIBC # webkitgtk
        depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
        help
          Midori is a lightweight web browser based on WebKit
index 999ea019d25dc598b17888d4a173f2e7f154ced6..c900143f7596671c4ae0cae3dbde585e9d64d398 100644 (file)
@@ -4,6 +4,7 @@ config BR2_PACKAGE_MINIDLNA
        depends on BR2_USE_WCHAR # flac
        depends on BR2_USE_MMU # fork
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_FFMPEG
        select BR2_PACKAGE_FLAC
        select BR2_PACKAGE_LIBVORBIS # selects libogg
@@ -13,7 +14,6 @@ config BR2_PACKAGE_MINIDLNA
        select BR2_PACKAGE_JPEG
        select BR2_PACKAGE_SQLITE
        select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
-       depends on !BR2_nios2 # ffmpeg
        help
          MiniDLNA (aka ReadyDLNA) is server software with the aim of being
          fully compliant with DLNA/UPnP-AV clients.
@@ -22,6 +22,6 @@ config BR2_PACKAGE_MINIDLNA
 
 comment "minidlna needs a toolchain w/ dynamic library, threads, wchar"
        depends on BR2_USE_MMU
-       depends on !BR2_nios2
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
                BR2_STATIC_LIBS
index 82e4509d3a2eeb91f6507f7b1628ac9e1c3822b0..3e0a1045ec385a000777dc69fb701fc1982ad253 100644 (file)
@@ -4,8 +4,8 @@ config BR2_PACKAGE_MOARVM
        depends on !BR2_STATIC_LIBS # libuv
        depends on BR2_USE_MMU # libuv
        depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # libatomic_ops
-       # needs AO_fetch_compare_and_swap, not implemented for sparcv9
-       depends on !BR2_sparc64
+       # needs AO_fetch_compare_and_swap, not implemented for sparcv8/sparcv9
+       depends on !BR2_sparc64 && !BR2_sparc
        select BR2_PACKAGE_LIBUV
        select BR2_PACKAGE_LIBTOMMATH
        select BR2_PACKAGE_LIBATOMIC_OPS
@@ -19,5 +19,5 @@ comment "moarvm needs a toolchain w/ threads, dynamic library"
        depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
        depends on BR2_USE_MMU
        depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS
-       depends on !BR2_sparc64
+       depends on !BR2_sparc64 && !BR2_sparc
 
index 4525a21869772d20e602705cf256400edbdf6521..dfc1812fad4be8def92a5287e55d4ec7e9236f67 100644 (file)
@@ -76,8 +76,8 @@ config BR2_PACKAGE_MPD_FAAD2
 
 config BR2_PACKAGE_MPD_FFMPEG
        bool "ffmpeg"
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_FFMPEG
-       depends on !BR2_nios2 # ffmpeg
        help
          Enable ffmpeg input support.
          Select this if you want to play back files supported by
diff --git a/package/mpg123/0001-Makefile.am-don-t-override-LIBS.patch b/package/mpg123/0001-Makefile.am-don-t-override-LIBS.patch
new file mode 100644 (file)
index 0000000..a5bfe80
--- /dev/null
@@ -0,0 +1,46 @@
+From 25c2e71c9ce762561eeacd35bf432c6692c0fb44 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <peter@korsgaard.com>
+Date: Tue, 24 May 2016 17:34:32 +0200
+Subject: [PATCH] Makefile.am: don't override LIBS
+
+Patch status: posted upstream
+https://sourceforge.net/p/mpg123/mailman/message/35111696/
+
+The recent build system change broke custom LIBS handling. As opposed to the
+other internal variables, LIBS can be provided by the user when running
+configure, E.G.:
+
+LIBS="-lfoo -lbar" ./configure ..
+
+This is correctly used by the configure checks, but doesn't end up in the
+Makefile any more because of this override - Breaking static builds where
+the configure script needs a bit of help to link with -lpthread when
+alsa/portaudio is used (as those use pthreads internally).
+
+Fixes the following build issues from the Buildroot autobuilders:
+
+http://autobuild.buildroot.net/?reason=mpg123-1.23.3
+
+(see https://git.buildroot.net/buildroot/tree/package/mpg123/mpg123.mk for
+the build logic)
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ Makefile.am | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index d695a3b..863f59f 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -9,7 +9,6 @@
+ ACLOCAL_AMFLAGS = -I m4
+ bin_PROGRAMS =
+ EXTRA_PROGRAMS =
+-LIBS =
+ EXTRA_DIST =
+ pkglib_LTLIBRARIES =
+ lib_LTLIBRARIES =
+-- 
+2.7.0
+
index ab75fbd490d6440c49b4cf4dfb77bf40acdf0b09..d943b08b6187b46fae5f9ecbf0a6816b69f8bdb7 100644 (file)
@@ -12,6 +12,8 @@ MPG123_INSTALL_STAGING = YES
 MPG123_LICENSE = LGPLv2.1
 MPG123_LICENSE_FILES = COPYING
 MPG123_DEPENDENCIES = host-pkgconf
+# 0001-Makefile.am-don-t-override-LIBS.patch patches Makefile.am
+MPG123_AUTORECONF = YES
 
 MPG123_CPU = $(if $(BR2_SOFT_FLOAT),generic_nofpu,generic_fpu)
 
diff --git a/package/mplayer/0003-configure-armv8.patch b/package/mplayer/0003-configure-armv8.patch
new file mode 100644 (file)
index 0000000..9868643
--- /dev/null
@@ -0,0 +1,43 @@
+Fix aarch64 compile by adding HAVE_ARMV8 define
+
+Fixes build errors seen on the buildroot autobuilders:
+http://autobuild.buildroot.net/results/5f8/5f85c32eb89aac48ae8da892d9800bd13274cd3e/build-end.log
+
+libavutil/aarch64/cpu.c: In function 'ff_get_cpu_flags_aarch64':
+libavutil/aarch64/cpu.c:25:32: error: 'HAVE_ARMV8' undeclared (first use in this function)
+     return AV_CPU_FLAG_ARMV8 * HAVE_ARMV8 |
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(patch sent upstream:
+ http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2016-May/073496.html)
+
+Index: configure
+===================================================================
+--- a/configure        (revision 37871)
++++ b/configure        (working copy)
+@@ -1445,6 +1445,8 @@
+   --disable-armv6) _armv6=no ;;
+   --enable-armv6t2) _armv6t2=yes ;;
+   --disable-armv6t2) _armv6t2=no ;;
++  --enable-armv8) _armv8=yes ;;
++  --disable-armv8) _armv8=no ;;
+   --enable-armvfp) _armvfp=yes ;;
+   --disable-armvfp) _armvfp=no ;;
+   --enable-vfpv3) vfpv3=yes ;;
+@@ -3261,7 +3263,7 @@
+   echores "$_iwmmxt"
+ fi
+-cpuexts_all='ALTIVEC XOP AVX AVX2 FMA3 FMA4 MMX MMX2 MMXEXT AMD3DNOW AMD3DNOWEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 FAST_CMOV I686 FAST_CLZ ARMV5TE ARMV6 ARMV6T2 VFP VFPV3 SETEND NEON IWMMXT MMI VIS MVI'
++cpuexts_all='ALTIVEC XOP AVX AVX2 FMA3 FMA4 MMX MMX2 MMXEXT AMD3DNOW AMD3DNOWEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 FAST_CMOV I686 FAST_CLZ ARMV5TE ARMV6 ARMV6T2 ARMV8 VFP VFPV3 SETEND NEON IWMMXT MMI VIS MVI'
+ test "$_altivec"   = yes && cpuexts="ALTIVEC $cpuexts"
+ test "$_mmx"       = yes && cpuexts="MMX $cpuexts"
+ test "$_mmxext"    = yes && cpuexts="MMX2 $cpuexts"
+@@ -3285,6 +3287,7 @@
+ test "$_armv5te"   = yes && cpuexts="ARMV5TE $cpuexts"
+ test "$_armv6"     = yes && cpuexts="ARMV6 $cpuexts"
+ test "$_armv6t2"   = yes && cpuexts="ARMV6T2 $cpuexts"
++test "$_armv8"     = yes && cpuexts="ARMV8 $cpuexts"
+ test "$_armvfp"    = yes && cpuexts="VFP $cpuexts"
+ test "$vfpv3"      = yes && cpuexts="VFPV3 $cpuexts"
+ test "$setend"     = yes && cpuexts="SETEND $cpuexts"
index 507fb5d08ad2dd02f6172784293c1147a9420ce1..347ed5e295fa139dfb3580d5c87fd31c002a311d 100644 (file)
@@ -254,6 +254,10 @@ ifeq ($(BR2_ARM_CPU_ARMV6)$(BR2_ARM_CPU_ARMV7A),y)
 MPLAYER_CONF_OPTS += --enable-armv6
 endif
 
+ifeq ($(BR2_aarch64),y)
+MPLAYER_CONF_OPTS += --enable-armv8
+endif
+
 ifeq ($(BR2_ARM_SOFT_FLOAT),)
 ifeq ($(BR2_ARM_CPU_HAS_NEON),y)
 MPLAYER_CONF_OPTS += --enable-neon
@@ -268,10 +272,62 @@ MPLAYER_CFLAGS += -fomit-frame-pointer
 endif
 
 ifeq ($(BR2_X86_CPU_HAS_MMX),y)
-MPLAYER_CONF_OPTS += --yasm=$(HOST_DIR)/usr/bin/yasm
+MPLAYER_CONF_OPTS += \
+       --enable-mmx \
+       --yasm=$(HOST_DIR)/usr/bin/yasm
 MPLAYER_DEPENDENCIES += host-yasm
 else
-MPLAYER_CONF_OPTS += --yasm=''
+MPLAYER_CONF_OPTS += \
+       --disable-mmx \
+       --yasm=''
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_SSE),y)
+MPLAYER_CONF_OPTS += --enable-sse
+else
+MPLAYER_CONF_OPTS += --disable-sse
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_SSE2),y)
+MPLAYER_CONF_OPTS += --enable-sse2
+else
+MPLAYER_CONF_OPTS += --disable-sse2
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_SSE3),y)
+MPLAYER_CONF_OPTS += --enable-sse3
+else
+MPLAYER_CONF_OPTS += --disable-sse3
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_SSSE3),y)
+MPLAYER_CONF_OPTS += --enable-ssse3
+else
+MPLAYER_CONF_OPTS += --disable-ssse3
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_SSE4),y)
+MPLAYER_CONF_OPTS += --enable-sse4
+else
+MPLAYER_CONF_OPTS += --disable-sse4
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_SSE42),y)
+MPLAYER_CONF_OPTS += --enable-sse42
+else
+MPLAYER_CONF_OPTS += --disable-sse42
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_AVX),y)
+MPLAYER_CONF_OPTS += --enable-avx
+else
+MPLAYER_CONF_OPTS += --disable-avx
+endif
+
+ifeq ($(BR2_X86_CPU_HAS_AVX2),y)
+MPLAYER_CONF_OPTS += --enable-avx2
+else
+MPLAYER_CONF_OPTS += --disable-avx2
 endif
 
 define MPLAYER_CONFIGURE_CMDS
index b354d4dd4f77ddcf84f927223ea5918e8657bf6f..1cef6c50094d18b3a1e195bff3a91a05d3b0dd36 100644 (file)
@@ -1,7 +1,7 @@
 config BR2_PACKAGE_MPV
        bool "mpv"
-       depends on !BR2_nios2 # ffmpeg
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
        select BR2_PACKAGE_FFMPEG
        select BR2_PACKAGE_FFMPEG_SWSCALE
@@ -15,5 +15,5 @@ config BR2_PACKAGE_MPV
          https://mpv.io/
 
 comment "mpv needs a toolchain w/ threads"
-       depends on !BR2_nios2
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on !BR2_TOOLCHAIN_HAS_THREADS
index d331af25fa52bbc5aca5b27582f1e4d88f700f0f..fc145c0832066f805d396b0ab84bb42dda583244 100644 (file)
@@ -9,8 +9,14 @@ MTOOLS_SOURCE = mtools-$(MTOOLS_VERSION).tar.bz2
 MTOOLS_SITE = $(BR2_GNU_MIRROR)/mtools
 MTOOLS_LICENSE = GPLv3+
 MTOOLS_LICENSE_FILES = COPYING
-MTOOLS_CONF_ENV = ac_cv_func_setpgrp_void=yes
 MTOOLS_CONF_OPTS = --without-x
+# info documentation not needed
+MTOOLS_CONF_ENV = \
+       ac_cv_func_setpgrp_void=yes \
+       ac_cv_path_INSTALL_INFO=
+
+HOST_MTOOLS_CONF_ENV = \
+       ac_cv_path_INSTALL_INFO=
 
 # link with iconv if enabled
 ifeq ($(BR2_PACKAGE_LIBICONV),y)
index 5e2d5b238c54bc8c728278f813d057c14d694ee4..ec83e25cb13acb4719d4e3753bba189e9f2a3975 100644 (file)
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_MTR
        bool "mtr"
+       depends on BR2_USE_MMU # fork()
        help
          mtr combines the functionality of the 'traceroute' and 'ping'
          programs in a single network diagnostic tool.
diff --git a/package/mtr/mtr.hash b/package/mtr/mtr.hash
new file mode 100644 (file)
index 0000000..f3df81f
--- /dev/null
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 12a6a94c0ec04d508de27eda5f5ba91f50d4b5fe74a98aca0973e2c16a42555a        mtr-66de3ecbab28b054b868a73fbb57f30549d770ac.tar.gz
index 3f73a5f51966ab3040039e20c010313aa171a3ea..5ee61249ebf54d64868a1eb99b1529a835bd055f 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-MTR_VERSION = v0.86
+MTR_VERSION = 66de3ecbab28b054b868a73fbb57f30549d770ac
 MTR_SITE = $(call github,traviscross,mtr,$(MTR_VERSION))
 MTR_AUTORECONF = YES
 MTR_CONF_OPTS = --without-gtk
@@ -12,14 +12,4 @@ MTR_DEPENDENCIES = host-pkgconf $(if $(BR2_PACKAGE_NCURSES),ncurses)
 MTR_LICENSE = GPLv2
 MTR_LICENSE_FILES = COPYING
 
-# uClibc has res_ninit but not res_nmkquery
-ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
-define MTR_DISABLE_RES_NINIT
-       $(SED) 's/#ifdef res_ninit/#if 0/' \
-               $(@D)/dns.c
-endef
-endif
-
-MTR_POST_PATCH_HOOKS += MTR_DISABLE_RES_NINIT
-
 $(eval $(autotools-package))
index f1a3150745abc4125e267af1b6ca13ac8d1f1332..c263006a29f7f465d6beec956bd26cc85b2e4df6 100644 (file)
@@ -4,3 +4,4 @@ config BR2_PACKAGE_MUSL
        default y
        select BR2_PACKAGE_LINUX_HEADERS
        select BR2_PACKAGE_NETBSD_QUEUE
+       select BR2_TOOLCHAIN_HAS_SSP
diff --git a/package/net-tools/0001-Makefile-fix-static-linking-issue-with-lintl.patch b/package/net-tools/0001-Makefile-fix-static-linking-issue-with-lintl.patch
new file mode 100644 (file)
index 0000000..a2d674e
--- /dev/null
@@ -0,0 +1,79 @@
+From a2076079a409141704701ec17a205d89e5b24052 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Sat, 28 May 2016 20:45:02 +0200
+Subject: [PATCH] Makefile: fix static linking issue with lintl
+
+When net-tools are build with uClibc-ng and statically linked,
+some tools like hostname and route needs to link with -lintl.
+
+Adding -lintl in LDFLAGS place the library before object files:
+arm-linux-gcc -O2 -g -Wall -fno-strict-aliasing   -static -lintl -Llib -o hostname hostname.o
+
+Add $(LIBS) after object files in the Makefile to place -lintl correctly.
+
+Fixes:
+http://autobuild.buildroot.net/results/134/1345b6d366125320b89512e7ce7f142f1a03acf8
+
+Ref:
+http://lists.busybox.net/pipermail/buildroot/2016-May/162216.html
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ Makefile | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 171123d..a2baf79 100644
+--- a/Makefile
++++ b/Makefile
+@@ -158,37 +158,37 @@ subdirs: libdir
+               @for i in $(SUBDIRS:$(NET_LIB_PATH)/=); do $(MAKE) -C $$i || exit $$? ; done
+ ifconfig:     $(NET_LIB) ifconfig.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ ifconfig.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ ifconfig.o $(LIBS) $(NLIB)
+ nameif:               $(NET_LIB) nameif.o
+               $(CC) $(CFLAGS) $(LDFLAGS) -o $@ nameif.o $(NLIB)
+ hostname:     hostname.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ hostname.o $(DNLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ hostname.o $(LIBS) $(DNLIB)
+ route:                $(NET_LIB) route.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ route.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ route.o $(LIBS) $(NLIB)
+ arp:          $(NET_LIB) arp.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ arp.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ arp.o $(LIBS) $(NLIB)
+ rarp:         $(NET_LIB) rarp.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ rarp.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ rarp.o $(LIBS) $(NLIB)
+ slattach:     $(NET_LIB) slattach.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ slattach.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ slattach.o $(LIBS) $(NLIB)
+ plipconfig:   $(NET_LIB) plipconfig.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ plipconfig.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ plipconfig.o $(LIBS) $(NLIB)
+ netstat:      $(NET_LIB) netstat.o statistics.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ netstat.o statistics.o $(NLIB) $(SELIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ netstat.o statistics.o $(LIBS) $(NLIB) $(SELIB)
+ iptunnel:     $(NET_LIB) iptunnel.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ iptunnel.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ iptunnel.o $(LIBS) $(NLIB)
+ ipmaddr:      $(NET_LIB) ipmaddr.o
+-              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ ipmaddr.o $(NLIB)
++              $(CC) $(CFLAGS) $(LDFLAGS) -o $@ ipmaddr.o $(LIBS) $(NLIB)
+ mii-tool:     $(NET_LIB) mii-tool.o
+               $(CC) $(CFLAGS) $(LDFLAGS) -o $@ mii-tool.o $(NLIB)
+-- 
+2.5.5
+
index 184c50e9652f56c7a9d4494f9666956ee075d772..08d55bb27c4753a345c85be079ad9e383ff054f5 100644 (file)
@@ -7,8 +7,6 @@
 NET_TOOLS_VERSION = 3f170bff115303e92319791cbd56371e33dcbf6d
 NET_TOOLS_SITE = git://git.code.sf.net/p/net-tools/code
 NET_TOOLS_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext)
-NET_TOOLS_LDFLAGS = $(TARGET_LDFLAGS) \
-       $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)
 NET_TOOLS_LICENSE = GPLv2+
 NET_TOOLS_LICENSE_FILES = COPYING
 
@@ -37,7 +35,9 @@ NET_TOOLS_POST_CONFIGURE_HOOKS += NET_TOOLS_ENABLE_I18N NET_TOOLS_ENABLE_IPV6
 
 define NET_TOOLS_BUILD_CMDS
        $(TARGET_MAKE_ENV) AR="$(TARGET_AR)" CC="$(TARGET_CC)" \
-               LDFLAGS="$(NET_TOOLS_LDFLAGS)" $(MAKE) -C $(@D)
+               LDFLAGS="$(TARGET_LDFLAGS)" \
+               LIBS="$(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)" \
+               $(MAKE) -C $(@D)
 endef
 
 # install renames conflicting binaries, update does not
index 829a435eef3e72d4d7d0b338b31970fdec54ced9..603f7292dadaa16c083c043024f96ab5bdc1ff72 100644 (file)
@@ -1,7 +1,7 @@
 From fe05ccf80afe5de33d4f9c5e5545390c450bcd2d Mon Sep 17 00:00:00 2001
 From: Samuel Martin <s.martin49@gmail.com>
 Date: Thu, 24 Apr 2014 23:27:32 +0200
-Subject: [PATCH 1/5] auto/type/sizeof: rework autotest to be cross-compilation
+Subject: [PATCH] auto/type/sizeof: rework autotest to be cross-compilation
  friendly
 
 Rework the sizeof test to do the checks at compile time instead of at
index 7eb4a5da061b602500c7312b067575269417bb48..13bef5ffdb69a4e5027dd95fadd7de437c3faaf1 100644 (file)
@@ -1,7 +1,7 @@
 From ef72be22ad6d58e230f75553d80b470b80c3303a Mon Sep 17 00:00:00 2001
 From: Samuel Martin <s.martin49@gmail.com>
 Date: Sun, 4 May 2014 00:40:49 +0200
-Subject: [PATCH 2/5] auto/feature: add mechanism allowing to force feature run
+Subject: [PATCH] auto/feature: add mechanism allowing to force feature run
  test result
 
 Whenever a feature needs to run a test, the ngx_feature_run_force_result
index 8320c0f6d32d52a921e930fafb5497f74ee8cc1f..ed67a6794460086f91e4da241d6ff621069cf172 100644 (file)
@@ -1,7 +1,7 @@
 From 71939b727a8fa9f722934700948a5b68960f6183 Mon Sep 17 00:00:00 2001
 From: Samuel Martin <s.martin49@gmail.com>
 Date: Thu, 29 May 2014 18:52:10 +0200
-Subject: [PATCH 3/5] auto/*: set ngx_feature_run_force_result for each feature
+Subject: [PATCH] auto/*: set ngx_feature_run_force_result for each feature
  requiring run test
 
 Each feature requiring a run test has a matching preset variable (called
diff --git a/package/nginx/0004-auto-lib-libxslt-conf-allow-to-override-ngx_feature_.patch b/package/nginx/0004-auto-lib-libxslt-conf-allow-to-override-ngx_feature_.patch
deleted file mode 100644 (file)
index a125a78..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From 5d281572d0afbf69d934737e1ee4c553670a46cc Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Thu, 29 May 2014 19:22:27 +0200
-Subject: [PATCH 4/5] auto/lib/libxslt/conf: allow to override ngx_feature_path
- and ngx_feature_libs
-
-Because libxml2 headers are not in /usr/include by default, hardcoding the
-include directory to /usr/include/libxml2 does not play well when
-cross-compiling, or if libxml2 has been installed somewhere else.
-
-This patch allows to define/override the libxslt include directory, and
-the libxslt libs flags.
-
-Being able to override the include location is especially useful when
-cross-compiling to prevent gcc from complaining about unsafe include
-location for cross-compilation (-Wpoision-system-directories).
-
-So far, this warning is only triggered by libxslt.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- auto/lib/libxslt/conf | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/auto/lib/libxslt/conf b/auto/lib/libxslt/conf
-index bc19d83..386f1a0 100644
---- a/auto/lib/libxslt/conf
-+++ b/auto/lib/libxslt/conf
-@@ -12,8 +12,8 @@
-                       #include <libxslt/xsltInternals.h>
-                       #include <libxslt/transform.h>
-                       #include <libxslt/xsltutils.h>"
--    ngx_feature_path="/usr/include/libxml2"
--    ngx_feature_libs="-lxml2 -lxslt"
-+    ngx_feature_path="${ngx_feature_path_libxslt:=/usr/include/libxml2}"
-+    ngx_feature_libs="${ngx_feature_libs_libxslt:=-lxml2 -lxslt}"
-     ngx_feature_test="xmlParserCtxtPtr    ctxt = NULL;
-                       xsltStylesheetPtr   sheet = NULL;
-                       xmlDocPtr           doc;
---
-1.9.2
-
diff --git a/package/nginx/0004-auto-lib-libxslt-conf-use-pkg-config.patch b/package/nginx/0004-auto-lib-libxslt-conf-use-pkg-config.patch
new file mode 100644 (file)
index 0000000..b315909
--- /dev/null
@@ -0,0 +1,31 @@
+From 211b9f19a3a62826fadef55d2f89d6f66fbf4aa6 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Thu, 29 May 2014 19:22:27 +0200
+Subject: [PATCH] auto/lib/libxslt/conf: use pkg-config
+
+Change to using pkg-config to find the path to libxslt and its
+dependencies.
+
+Signed-off-by: Martin Bark <martin@barkynet.com>
+---
+ auto/lib/libxslt/conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/auto/lib/libxslt/conf b/auto/lib/libxslt/conf
+index 3a0f37b..3c2a60e 100644
+--- a/auto/lib/libxslt/conf
++++ b/auto/lib/libxslt/conf
+@@ -12,8 +12,8 @@
+                       #include <libxslt/xsltInternals.h>
+                       #include <libxslt/transform.h>
+                       #include <libxslt/xsltutils.h>"
+-    ngx_feature_path="/usr/include/libxml2"
+-    ngx_feature_libs="-lxml2 -lxslt"
++    ngx_feature_path="$(${PKG_CONFIG:=pkg-config} --cflags-only-I libxslt|sed 's/-I//g')"
++    ngx_feature_libs="$(${PKG_CONFIG:=pkg-config} --libs libxslt)"
+     ngx_feature_test="xmlParserCtxtPtr    ctxt = NULL;
+                       xsltStylesheetPtr   sheet = NULL;
+                       xmlDocPtr           doc;
+-- 
+2.8.2
+
index 6249add21ef20533286b51b62004135f376d91f5..2242d133636e2fa365fbb85dd016bce170b41219 100644 (file)
@@ -1,7 +1,7 @@
 From 08617a8d29ee22831175697555558fec8f52772c Mon Sep 17 00:00:00 2001
 From: Samuel Martin <s.martin49@gmail.com>
 Date: Sun, 1 Jun 2014 16:05:04 +0200
-Subject: [PATCH 5/5] auto/unix: make sys_nerr guessing cross-friendly
+Subject: [PATCH] auto/unix: make sys_nerr guessing cross-friendly
 
 This patch replaces the default sys_nerr runtest with a test done at
 buildtime.
diff --git a/package/nginx/0006-auto-lib-openssl-conf-use-pkg-config.patch b/package/nginx/0006-auto-lib-openssl-conf-use-pkg-config.patch
new file mode 100644 (file)
index 0000000..b826a3c
--- /dev/null
@@ -0,0 +1,31 @@
+From 756556d127da291cad8a2c007a89124a692aef7f Mon Sep 17 00:00:00 2001
+From: Martin Bark <martin@barkynet.com>
+Date: Fri, 6 May 2016 14:48:31 +0100
+Subject: [PATCH] auto/lib/openssl/conf: use pkg-config
+
+Change to using pkg-config to find the path to openssl and its
+dependencies.
+
+Signed-off-by: Martin Bark <martin@barkynet.com>
+---
+ auto/lib/openssl/conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/auto/lib/openssl/conf b/auto/lib/openssl/conf
+index 39d9602..995c6f3 100644
+--- a/auto/lib/openssl/conf
++++ b/auto/lib/openssl/conf
+@@ -50,8 +50,8 @@ else
+         ngx_feature_name="NGX_OPENSSL"
+         ngx_feature_run=no
+         ngx_feature_incs="#include <openssl/ssl.h>"
+-        ngx_feature_path=
+-        ngx_feature_libs="-lssl -lcrypto $NGX_LIBDL"
++        ngx_feature_path="$(${PKG_CONFIG:=pkg-config} --cflags-only-I openssl|sed 's/-I//g')"
++        ngx_feature_libs="$(${PKG_CONFIG:=pkg-config} --libs openssl)"
+         ngx_feature_test="SSL_CTX_set_options(NULL, 0)"
+         . auto/feature
+-- 
+2.8.2
+
diff --git a/package/nginx/0007-auto-lib-libgd-conf-use-pkg-config.patch b/package/nginx/0007-auto-lib-libgd-conf-use-pkg-config.patch
new file mode 100644 (file)
index 0000000..34e7981
--- /dev/null
@@ -0,0 +1,31 @@
+From fd9885fe5fef5826034547ca6be7299863f99769 Mon Sep 17 00:00:00 2001
+From: Martin Bark <martin@barkynet.com>
+Date: Fri, 6 May 2016 14:48:49 +0100
+Subject: [PATCH] auto/lib/libgd/conf: use pkg-config
+
+Change to using pkg-config to find the path to libgd and its
+dependencies.
+
+Signed-off-by: Martin Bark <martin@barkynet.com>
+---
+ auto/lib/libgd/conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/auto/lib/libgd/conf b/auto/lib/libgd/conf
+index 6e4e91c..1c536a2 100644
+--- a/auto/lib/libgd/conf
++++ b/auto/lib/libgd/conf
+@@ -7,8 +7,8 @@
+     ngx_feature_name=
+     ngx_feature_run=no
+     ngx_feature_incs="#include <gd.h>"
+-    ngx_feature_path=
+-    ngx_feature_libs="-lgd"
++    ngx_feature_path="$(${GDLIB_CONFIG:=gdlib-config} --includedir)"
++    ngx_feature_libs="$(${GDLIB_CONFIG:=gdlib-config} --libs)"
+     ngx_feature_test="gdImagePtr img = gdImageCreateFromGifPtr(1, NULL);"
+     . auto/feature
+-- 
+2.8.2
+
diff --git a/package/nginx/0008-src-os-unix-ngx_linux_config.h-only-include-dlfcn.h-.patch b/package/nginx/0008-src-os-unix-ngx_linux_config.h-only-include-dlfcn.h-.patch
new file mode 100644 (file)
index 0000000..c10fcd1
--- /dev/null
@@ -0,0 +1,33 @@
+From 8dc9dffc1f99ac951865f3135dfb5061a08d1f85 Mon Sep 17 00:00:00 2001
+From: Martin Bark <martin@barkynet.com>
+Date: Fri, 6 May 2016 16:29:17 +0100
+Subject: [PATCH] src/os/unix/ngx_linux_config.h: only include dlfcn.h if
+ available
+
+Signed-off-by: Martin Bark <martin@barkynet.com>
+---
+ src/os/unix/ngx_linux_config.h | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/os/unix/ngx_linux_config.h b/src/os/unix/ngx_linux_config.h
+index 2f6129d..4244086 100644
+--- a/src/os/unix/ngx_linux_config.h
++++ b/src/os/unix/ngx_linux_config.h
+@@ -55,10 +55,12 @@
+ #include <crypt.h>
+ #include <sys/utsname.h>        /* uname() */
+-#include <dlfcn.h>
++#include <ngx_auto_config.h>
+-#include <ngx_auto_config.h>
++#if (NGX_HAVE_DLOPEN)
++#include <dlfcn.h>
++#endif
+ #if (NGX_HAVE_POSIX_SEM)
+-- 
+2.8.2
+
index 9f3c218daeb539d95c049ab760473b948204b90b..e6f2d96d34633ce6cdd48e9a9f0d5964f5e7da83 100644 (file)
@@ -1,6 +1,7 @@
 menuconfig BR2_PACKAGE_NGINX
        bool "nginx"
        depends on BR2_USE_MMU # fork()
+       select BR2_PACKAGE_LIBATOMIC_OPS if BR2_sparc_v8 || BR2_sparc_leon3
        help
          nginx is an HTTP and reverse proxy server, as well as a mail proxy
          server.
index c1e8367dab7e7b6d0dda6c90d7ed41a5fef8dc80..fecef7b8f733f83c25cf700051789a1bfc9e8705 100644 (file)
@@ -8,12 +8,12 @@ NGINX_VERSION = 1.10.0
 NGINX_SITE = http://nginx.org/download
 NGINX_LICENSE = BSD-2c
 NGINX_LICENSE_FILES = LICENSE
+NGINX_DEPENDENCIES = host-pkgconf
 
 NGINX_CONF_OPTS = \
        --crossbuild=Linux::$(BR2_ARCH) \
        --with-cc="$(TARGET_CC)" \
        --with-cpp="$(TARGET_CC)" \
-       --with-cc-opt="$(TARGET_CFLAGS)" \
        --with-ld-opt="$(TARGET_LDFLAGS)" \
        --with-ipv6
 
@@ -35,7 +35,6 @@ NGINX_CONF_ENV += \
        ngx_force_c99_have_variadic_macros=yes \
        ngx_force_gcc_have_variadic_macros=yes \
        ngx_force_gcc_have_atomic=yes \
-       ngx_force_have_libatomic=no \
        ngx_force_have_epoll=yes \
        ngx_force_have_sendfile=yes \
        ngx_force_have_sendfile64=yes \
@@ -67,6 +66,17 @@ NGINX_CONF_OPTS += \
        $(if $(BR2_PACKAGE_NGINX_FILE_AIO),--with-file-aio) \
        $(if $(BR2_PACKAGE_NGINX_THREADS),--with-threads)
 
+ifeq ($(BR2_PACKAGE_LIBATOMIC_OPS),y)
+NGINX_DEPENDENCIES += libatomic_ops
+NGINX_CONF_OPTS += --with-libatomic
+NGINX_CONF_ENV += ngx_force_have_libatomic=yes
+ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y)
+NGINX_CFLAGS += "-DAO_NO_SPARC_V9"
+endif
+else
+NGINX_CONF_ENV += ngx_force_have_libatomic=no
+endif
+
 ifeq ($(BR2_PACKAGE_PCRE),y)
 NGINX_DEPENDENCIES += pcre
 NGINX_CONF_OPTS += --with-pcre
@@ -118,8 +128,6 @@ endif
 ifeq ($(BR2_PACKAGE_NGINX_HTTP_XSLT_MODULE),y)
 NGINX_DEPENDENCIES += libxml2 libxslt
 NGINX_CONF_OPTS += --with-http_xslt_module
-NGINX_CONF_ENV += \
-       ngx_feature_path_libxslt=$(STAGING_DIR)/usr/include/libxml2
 endif
 
 ifeq ($(BR2_PACKAGE_NGINX_HTTP_IMAGE_FILTER_MODULE),y)
@@ -236,7 +244,11 @@ endef
 NGINX_PRE_CONFIGURE_HOOKS += NGINX_DISABLE_WERROR
 
 define NGINX_CONFIGURE_CMDS
-       cd $(@D) ; $(NGINX_CONF_ENV) ./configure $(NGINX_CONF_OPTS)
+       cd $(@D) ; $(NGINX_CONF_ENV) \
+               PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
+               GDLIB_CONFIG=$(STAGING_DIR)/usr/bin/gdlib-config \
+               ./configure $(NGINX_CONF_OPTS) \
+                       --with-cc-opt="$(TARGET_CFLAGS) $(NGINX_CFLAGS)"
 endef
 
 define NGINX_BUILD_CMDS
index 908eb37443047caa4700268637e271f952b2d80f..c046baaa4b4352d68844315117679c278f7d9ac4 100644 (file)
@@ -51,15 +51,20 @@ config BR2_PACKAGE_OPENCV_LIB_FLANN
 
 config BR2_PACKAGE_OPENCV_LIB_GPU
        bool "gpu"
+       depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # opencv libphoto
        select BR2_PACKAGE_OPENCV_LIB_CALIB3D
        select BR2_PACKAGE_OPENCV_LIB_IMGPROC
        select BR2_PACKAGE_OPENCV_LIB_LEGACY
        select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
        select BR2_PACKAGE_OPENCV_LIB_PHOTO
        select BR2_PACKAGE_OPENCV_LIB_VIDEO
+       depends on !BR2_STATIC_LIBS
        help
          Include opencv_gpu module into the OpenCV build.
 
+comment "gpu module needs a toolchain w/ dynamic libraries"
+       depends on BR2_STATIC_LIBS
+
 config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
        bool "highgui"
        default y
@@ -109,6 +114,7 @@ config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
 config BR2_PACKAGE_OPENCV_LIB_PHOTO
        bool "photo"
        default y
+       depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # Binutils 2.25 nios2 issue
        select BR2_PACKAGE_OPENCV_LIB_IMGPROC
        help
          Include opencv_photo module into the OpenCV build.
@@ -156,6 +162,7 @@ config BR2_PACKAGE_OPENCV_LIB_VIDEO
 config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB
        bool "videostab"
        default y
+       depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # opencv libphoto
        select BR2_PACKAGE_OPENCV_LIB_CALIB3D
        select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
        select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
@@ -165,21 +172,29 @@ config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB
        help
          Include opencv_videostab module into the OpenCV build.
 
+if !BR2_STATIC_LIBS
+
 comment "Test sets"
+
 config BR2_PACKAGE_OPENCV_BUILD_TESTS
        bool "build tests"
 
 config BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS
        bool "build performance tests"
 
+endif
+
+comment "Tests sets need a toolchain w/ dynamic libraries"
+       depends on BR2_STATIC_LIBS
+
 comment "3rd party support"
 
 config BR2_PACKAGE_OPENCV_WITH_FFMPEG
        bool "ffmpeg support"
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_BZIP2
        select BR2_PACKAGE_FFMPEG
        select BR2_PACKAGE_FFMPEG_SWSCALE
-       depends on !BR2_nios2 # ffmpeg
        help
          Use ffmpeg from the target system.
 
index 9629a643e2c57b3f03a4b703ed77121ee628b874..2f4aa7aca86fd9dc014194af75f0a8583e8619e2 100644 (file)
@@ -242,11 +242,11 @@ comment "3rd party support"
 
 config BR2_PACKAGE_OPENCV3_WITH_FFMPEG
        bool "ffmpeg support"
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_BZIP2
        select BR2_PACKAGE_FFMPEG
        select BR2_PACKAGE_FFMPEG_AVRESAMPLE
        select BR2_PACKAGE_FFMPEG_SWSCALE
-       depends on !BR2_nios2 # ffmpeg
        help
          Use ffmpeg from the target system.
 
diff --git a/package/openpgm/0003-Rework-headers-includes-to-fix-build-with-musl-libc.patch b/package/openpgm/0003-Rework-headers-includes-to-fix-build-with-musl-libc.patch
new file mode 100644 (file)
index 0000000..4d700fb
--- /dev/null
@@ -0,0 +1,55 @@
+From 01128a2d8ad3288e8b96a908888049f186d156ee Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Sat, 21 May 2016 19:44:48 +0200
+Subject: [PATCH 1/1] Rework headers includes to fix build with musl libc
+
+Downloaded patch from
+http://git.alpinelinux.org/cgit/aports/plain/main/openpgm/openpgm-fix-includes.patch
+and adjusted paths by prefixing with "openpgm/pgm/"
+
+A build log with the compile error can be found here:
+http://autobuild.buildroot.net/results/854/854554827ead82f29b293ddceced6eb7fbfeec27/build-end.log
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(Patch sent upstream: https://github.com/steve-o/openpgm/pull/44)
+---
+ openpgm/pgm/include/impl/security.h | 3 ++-
+ openpgm/pgm/include/pgm/types.h     | 1 +
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/openpgm/pgm/include/impl/security.h b/openpgm/pgm/include/impl/security.h
+index c2b3e3d..896316f 100644
+--- a/openpgm/pgm/include/impl/security.h
++++ b/openpgm/pgm/include/impl/security.h
+@@ -33,7 +33,6 @@
+ #include <stdio.h>
+ #include <stdarg.h>
+ #include <sys/types.h>
+-#include <sys/timeb.h>
+ #include <impl/i18n.h>
+ #include <impl/errno.h>
+ #include <impl/string.h>
+@@ -41,6 +40,8 @@
+ PGM_BEGIN_DECLS
+ #ifdef HAVE_FTIME
++#include <sys/timeb.h>
++
+ static inline
+ errno_t
+ #     if   !defined( _WIN32 )
+diff --git a/openpgm/pgm/include/pgm/types.h b/openpgm/pgm/include/pgm/types.h
+index 4e41261..58731a3 100644
+--- a/openpgm/pgm/include/pgm/types.h
++++ b/openpgm/pgm/include/pgm/types.h
+@@ -27,6 +27,7 @@
+ #ifndef _MSC_VER
+ #     include <sys/param.h>
++#     include <sys/types.h>
+ #endif
+ #include <pgm/macros.h>
+-- 
+2.8.1
+
index f7e3c167234cff38fc809e655ffe597fa6395ad0..259a81a40d921b557756b0a7552a9e2227573959 100644 (file)
@@ -1,4 +1,4 @@
-From 5cf3f37e12d0bb4649e3cda29a43d748708aa554 Mon Sep 17 00:00:00 2001
+From 6f4bcf829efe5ce31592003e049606ae1de05e90 Mon Sep 17 00:00:00 2001
 From: Romain Naour <romain.naour@openwide.fr>
 Date: Wed, 12 Aug 2015 11:24:24 +0200
 Subject: [PATCH] Add top level CMakeLists.txt
@@ -11,15 +11,25 @@ level build (ie CFG_OPLK_LIB is ON).
 For a top level build, CMake will automatically add a build
 dependency on oplk libraries for building demos applications.
 
-This patch has been submitted upstream:
+Also replace OPLKLIB_DEBUG by OPLKLIB in OPLK_LINK_LIBRARIES macro
+if CMAKE_BUILD_TYPE is "Debug", otherwise TARGET_LINK_LIBRARIES can't
+find the openpowerlink library.
+This issue may be related to:
+https://github.com/OpenAutomationTechnologies/openPOWERLINK_V2/issues/109
+
+Fixes:
+http://autobuild.buildroot.net/results/da4/da445b65cb136d71577f04e3a17fdb2ef6302a9b
+
+This patch has not been accepted by upstream:
 https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57
 
 Signed-off-by: Romain Naour <romain.naour@openwide.fr>
 ---
  CMakeLists.txt                               | 36 +++++++++++++++
  apps/common/cmake/findoplklib.cmake          | 68 +++++++++++++++-------------
+ apps/common/cmake/linkoplklib.cmake          |  2 +-
  drivers/linux/drv_daemon_pcap/CMakeLists.txt | 12 +++--
3 files changed, 82 insertions(+), 34 deletions(-)
4 files changed, 83 insertions(+), 35 deletions(-)
  create mode 100644 CMakeLists.txt
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
@@ -142,6 +152,19 @@ index 1bf570e..79ea35b 100644
 +    ENDIF(CFG_OPLK_LIB)
  
  ENDMACRO(FIND_OPLK_LIBRARY)
+diff --git a/apps/common/cmake/linkoplklib.cmake b/apps/common/cmake/linkoplklib.cmake
+index 49aab66..d9fd418 100644
+--- a/apps/common/cmake/linkoplklib.cmake
++++ b/apps/common/cmake/linkoplklib.cmake
+@@ -33,7 +33,7 @@ MACRO(OPLK_LINK_LIBRARIES EXECUTABLE_NAME)
+         TARGET_LINK_LIBRARIES(${EXECUTABLE_NAME} optimized ${OPLKLIB} debug ${OPLKLIB_DEBUG})
+     ELSE()
+         IF(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
+-            TARGET_LINK_LIBRARIES(${EXECUTABLE_NAME} debug ${OPLKLIB_DEBUG})
++            TARGET_LINK_LIBRARIES(${EXECUTABLE_NAME} debug ${OPLKLIB})
+         ELSE ()
+             TARGET_LINK_LIBRARIES(${EXECUTABLE_NAME} optimized ${OPLKLIB})
+         ENDIF()
 diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt
 index 2702abd..81bb598 100644
 --- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt
@@ -166,5 +189,5 @@ index 2702abd..81bb598 100644
  
  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -pedantic -std=c99 -pthread -fno-strict-aliasing")
 -- 
-2.4.3
+2.5.5
 
diff --git a/package/openpowerlink/0006-veth-avoid-kernel-header-issue-with-musl.patch b/package/openpowerlink/0006-veth-avoid-kernel-header-issue-with-musl.patch
new file mode 100644 (file)
index 0000000..383f047
--- /dev/null
@@ -0,0 +1,91 @@
+From 42a95209c5650662b86d222678ec14e7edfae156 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Wed, 25 May 2016 13:26:49 +0200
+Subject: [PATCH] veth: avoid kernel header issue with musl
+
+The Virtual Ethernet driver doesn't build when the musl libc is used on the
+system. As stated in the musl wiki [1], the userspace and kernel headers are
+mixed leading to a "clash" with the definitions provided by musl.
+
+Remove netinet/if_ether.h userspace header and replace ETHER_ADDR_LEN by
+ETH_ALEN [2] and ETHERMTU by ETH_DATA_LEN [3] in veth-linuxuser.c.
+
+Fixes:
+http://autobuild.buildroot.org/results/2ca/2ca04bb046263e479e7597867b56469893d3c11d/build-end.log
+
+Upsteam status: pending
+https://github.com/OpenAutomationTechnologies/openPOWERLINK_V2/pull/120
+
+[Rebase on v2.2.2]
+[1] http://wiki.musl-libc.org/wiki/FAQ#Q:_why_am_i_getting_.22error:_redefinition_of_struct_ethhdr.2Ftcphdr.2Fetc.22_.3F
+[2] https://git.musl-libc.org/cgit/musl/tree/include/net/ethernet.h?h=v1.1.14#n35
+[3] https://git.musl-libc.org/cgit/musl/tree/include/net/ethernet.h?h=v1.1.14#n48
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ stack/src/kernel/veth/veth-linuxuser.c | 13 ++++++-------
+ 1 file changed, 6 insertions(+), 7 deletions(-)
+
+diff --git a/stack/src/kernel/veth/veth-linuxuser.c b/stack/src/kernel/veth/veth-linuxuser.c
+index 2a0bdd0..2bfaa87 100644
+--- a/stack/src/kernel/veth/veth-linuxuser.c
++++ b/stack/src/kernel/veth/veth-linuxuser.c
+@@ -61,7 +61,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include <arpa/inet.h>
+ #include <linux/if.h>
+ #include <linux/if_tun.h>
+-#include <netinet/if_ether.h>
+ //============================================================================//
+ //            G L O B A L   D E F I N I T I O N S                             //
+@@ -248,7 +247,7 @@ static void getMacAdrs(UINT8* pMac_p)
+     close(sock);
+-    OPLK_MEMCPY(pMac_p, &ifr.ifr_hwaddr.sa_data[0], ETHER_ADDR_LEN);
++    OPLK_MEMCPY(pMac_p, &ifr.ifr_hwaddr.sa_data[0], ETH_ALEN);
+ }
+ //------------------------------------------------------------------------------
+@@ -272,9 +271,9 @@ static tOplkError veth_receiveFrame(tFrameInfo* pFrameInfo_p,
+     // replace the MAC address of the POWERLINK Ethernet interface with virtual
+     // Ethernet MAC address before forwarding it into the virtual Ethernet interface
+-    if (OPLK_MEMCMP(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.macAdrs, ETHER_ADDR_LEN) == 0)
++    if (OPLK_MEMCMP(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.macAdrs, ETH_ALEN) == 0)
+     {
+-        OPLK_MEMCPY(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.tapMacAdrs, ETHER_ADDR_LEN);
++        OPLK_MEMCPY(pFrameInfo_p->pFrame->aDstMac, vethInstance_l.tapMacAdrs, ETH_ALEN);
+     }
+     nwrite = write(vethInstance_l.fd, pFrameInfo_p->pFrame, pFrameInfo_p->frameSize);
+@@ -302,7 +301,7 @@ to be used as a thread which does a blocking read in a while loop.
+ //------------------------------------------------------------------------------
+ static void* vethRecvThread(void* pArg_p)
+ {
+-    UINT8               buffer[ETHERMTU];
++    UINT8               buffer[ETH_DATA_LEN];
+     UINT                nread;
+     tFrameInfo          frameInfo;
+     tOplkError          ret = kErrorOk;
+@@ -331,7 +330,7 @@ static void* vethRecvThread(void* pArg_p)
+                 break;
+             default:    // data from tun/tap ready for read
+-                nread = read(pInstance->fd, buffer, ETHERMTU);
++                nread = read(pInstance->fd, buffer, ETH_DATA_LEN);
+                 if (nread > 0)
+                 {
+                     DEBUG_LVL_VETH_TRACE("VETH:Read %d bytes from the tap interface\n", nread);
+@@ -340,7 +339,7 @@ static void* vethRecvThread(void* pArg_p)
+                     DEBUG_LVL_VETH_TRACE("DST MAC: %02X:%02X:%02x:%02X:%02X:%02x\n",
+                                           buffer[0], buffer[1], buffer[2], buffer[3], buffer[4], buffer[5]);
+                     // replace src MAC address with MAC address of virtual Ethernet interface
+-                    OPLK_MEMCPY(&buffer[6], pInstance->macAdrs, ETHER_ADDR_LEN);
++                    OPLK_MEMCPY(&buffer[6], pInstance->macAdrs, ETH_ALEN);
+                     frameInfo.pFrame = (tPlkFrame *)buffer;
+                     frameInfo.frameSize = nread;
+-- 
+2.5.5
+
index 2e3712554ed17766e936b3ab1e0bbea964028ac3..8ba4ea197ff67f5808e45dff61a423a97e04cfb7 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_OPENVPN
        bool "openvpn"
        depends on BR2_USE_MMU # fork()
+       select BR2_PACKAGE_OPENSSL
        help
          OpenVPN is a full-featured SSL VPN solution which can
          accomodate a wide range of configurations, including road
@@ -33,24 +34,4 @@ config BR2_PACKAGE_OPENVPN_PWSAVE
          Allow --askpass and --auth-user-pass passwords to be read
          from a file.
 
-choice
-       prompt "Crypto backend"
-       default BR2_PACKAGE_OPENVPN_CRYPTO_OPENSSL
-       help
-         Select the cryptographic library to use.
-
-       config BR2_PACKAGE_OPENVPN_CRYPTO_OPENSSL
-       bool "OpenSSL"
-       select BR2_PACKAGE_OPENSSL
-       help
-         Enable TLS-based key exchange and OpenSSL crypto support.
-
-       config BR2_PACKAGE_OPENVPN_CRYPTO_POLARSSL
-       bool "PolarSSL"
-       select BR2_PACKAGE_POLARSSL
-       help
-         Enable TLS-based key exchange and PolarSSL crypto support.
-
-endchoice
-
 endif
index 4ab916ea24945be7816b60ef6abe5852c6852f57..179198e50e71b2abef507dd648b6bb6a79cde9b4 100644 (file)
@@ -1,2 +1,2 @@
 # Locally calculated after checking pgp signature
-sha256 52f16bef3a02369682f1464fbd2821070c98d0bd993f4c46c764e87375abdcc1        openvpn-2.3.9.tar.xz
+sha256 0f5f1ca1dc5743fa166d93dd4ec952f014b5f33bafd88f0ea34b455cae1434a7        openvpn-2.3.11.tar.xz
index 8f02792c892478dfa461c44fcbbd94d905dd769f..f3985cd2ef05dc78aceaa5c249f6994878e3702d 100644 (file)
@@ -4,15 +4,16 @@
 #
 ################################################################################
 
-OPENVPN_VERSION = 2.3.9
+OPENVPN_VERSION = 2.3.11
 OPENVPN_SOURCE = openvpn-$(OPENVPN_VERSION).tar.xz
 OPENVPN_SITE = http://swupdate.openvpn.net/community/releases
-OPENVPN_DEPENDENCIES = host-pkgconf
+OPENVPN_DEPENDENCIES = host-pkgconf openssl
 OPENVPN_LICENSE = GPLv2
 OPENVPN_LICENSE_FILES = COPYRIGHT.GPL
 OPENVPN_CONF_OPTS = \
        --disable-plugin-auth-pam \
        --enable-iproute2 \
+       --with-crypto-library=openssl \
        $(if $(BR2_STATIC_LIBS),--disable-plugins)
 OPENVPN_CONF_ENV = IFCONFIG=/sbin/ifconfig \
        NETSTAT=/bin/netstat \
@@ -47,16 +48,6 @@ else
 OPENVPN_CONF_OPTS += --disable-password-save
 endif
 
-ifeq ($(BR2_PACKAGE_OPENVPN_CRYPTO_OPENSSL),y)
-OPENVPN_CONF_OPTS += --with-crypto-library=openssl
-OPENVPN_DEPENDENCIES += openssl
-endif
-
-ifeq ($(BR2_PACKAGE_OPENVPN_CRYPTO_POLARSSL),y)
-OPENVPN_CONF_OPTS += --with-crypto-library=polarssl
-OPENVPN_DEPENDENCIES += polarssl
-endif
-
 define OPENVPN_INSTALL_TARGET_CMDS
        $(INSTALL) -m 755 $(@D)/src/openvpn/openvpn \
                $(TARGET_DIR)/usr/sbin/openvpn
index 9cf569383b8039c76a3ccc7bbd5ce1d8824b5c5a..7a88e4a87ae79466054d0e59b8f334c1661a3679 100644 (file)
@@ -7,7 +7,8 @@ config BR2_PACKAGE_OPROFILE
        depends on BR2_INSTALL_LIBSTDCPP
        depends on !BR2_aarch64 && !BR2_nios2 # binutils
        depends on BR2_USE_WCHAR # binutils
-       depends on !BR2_xtensa
+       # no memory barrier functions
+       depends on !BR2_xtensa && !BR2_microblaze
        # libpfm4 is needed on PowerPC, and requires thread support
        depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_powerpc
        help
@@ -28,7 +29,7 @@ config BR2_PACKAGE_OPROFILE
 
 comment "oprofile needs a toolchain w/ C++, wchar"
        depends on BR2_USE_MMU
-       depends on !BR2_aarch64 && !BR2_nios2 && !BR2_xtensa
+       depends on !BR2_aarch64 && !BR2_nios2 && !BR2_xtensa && !BR2_microblaze
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR
 
 comment "oprofile needs a toolchain w/ NPTL on PPC"
index 40d2f881a310f9be7f4babfaa7b88a67b17f5149..b0f51789c39231069c705b51b76aea46add3292b 100644 (file)
@@ -143,7 +143,8 @@ endif
 # nconfig, gconfig, xconfig).
 # So we simply remove our PATH and PKG_CONFIG_* variables.
 $(2)_CONFIGURATOR_MAKE_ENV = \
-       $$(filter-out PATH=% PKG_CONFIG=% PKG_CONFIG_SYSROOT_DIR=% PKG_CONFIG_LIBDIR=%,$$($(2)_MAKE_ENV))
+       $$(filter-out PATH=% PKG_CONFIG=% PKG_CONFIG_SYSROOT_DIR=% PKG_CONFIG_LIBDIR=%,$$($(2)_MAKE_ENV)) \
+       PKG_CONFIG_PATH="$(HOST_PKG_CONFIG_PATH)"
 
 # Configuration editors (menuconfig, ...)
 #
index 10da15e3b04dd19965db0bfd0537960ba06e5e72..8edefb7543a43f58376d9d2e2d2ae7cee88707a2 100644 (file)
@@ -12,7 +12,7 @@ POSTGRESQL_LICENSE_FILES = COPYRIGHT
 POSTGRESQL_INSTALL_STAGING = YES
 POSTGRESQL_CONFIG_SCRIPTS = pg_config
 POSTGRESQL_CONF_ENV = ac_cv_type_struct_sockaddr_in6=yes \
-                     pgac_cv_snprintf_long_long_int_format="%lld" \
+                     pgac_cv_snprintf_long_long_int_modifier="%lld" \
                      pgac_cv_snprintf_size_t_support=yes
 POSTGRESQL_CONF_OPTS = --disable-rpath
 
diff --git a/package/pulseview/0002-cmake-add-check-for-explicit-linking-against-libatom.patch b/package/pulseview/0002-cmake-add-check-for-explicit-linking-against-libatom.patch
new file mode 100644 (file)
index 0000000..70549e6
--- /dev/null
@@ -0,0 +1,117 @@
+From 71830c804be76cf6abe913ac2fe584947b7a91ea Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Tue, 24 May 2016 23:08:40 +0200
+Subject: [PATCH] cmake: add check for explicit linking against libatomic
+
+To use atomics functions, some toolchains requires to explicitly add
+-latomic to the linker flags (because they are not provided by libc,
+but libatomic).
+
+This change adds a helper function trying to build/link a test program
+using atomics, then calls it to:
+* first check if atomics are directly available in the libc;
+* if not and libatomic has been found, then run the same test with
+  "-latomic" added to the linker flags.
+The pulseview link library list is updated according to the results of
+these tests.
+
+This issue was triggered by the Buildroot farms:
+  http://autobuild.buildroot.org/results/1e3/1e3101261252d5f30fdf842cc99604e4f4c25eef/build-end.log
+
+Notes:
+1- CMAKE_REQUIRED_* variables are only used in check functions. They
+   are not automatically forwarded to/handled by the target commands
+   (such as target_link_library), because the check functions are
+   implemented as macro in CMake code, whereas many target commands
+   are native.
+2- Because of note #1, CMAKE_REQUIRED_LIBRARIES (or its value) must be
+   explicitly passed to the target_link_library command when this is
+   needed.
+3- In this implementation, LIBATOMIC_LIBRARY is only set when it is
+   needed; so, unconditionally appending it to PULSEVIEW_LINK_LIBS
+   will produce the expected behavior.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+---
+changes v1->v2:
+- use std::atomic_fetch_add_explicit function instead of
+  __atomic_fetch_add_4;
+- rework code using cmake_*_check_state and find_library helpers;
+- quiet-ize checks and clean outputs
+- extend the commit log
+---
+ CMakeLists.txt | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 50 insertions(+)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9dac69f..44f810e 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -107,6 +107,55 @@ endif()
+ # This will set ${CMAKE_THREAD_LIBS_INIT} to the correct, OS-specific value.
+ find_package(Threads REQUIRED)
++
++# Check for explicit link against libatomic
++#
++# Depending on the toolchain, linking a program using atomic functions may need
++# "-latomic" explicitly passed to the linker
++#
++# This check first tests if atomics are available in the C-library, if not and
++# libatomic exists, then it runs the same test with -latomic added to the
++# linker flags.
++
++# Helper for checking for atomics
++function(check_working_cxx_atomics varname additional_lib)
++  include(CheckCXXSourceCompiles)
++  include(CMakePushCheckState)
++  cmake_push_check_state()
++  set(CMAKE_REQUIRED_FLAGS "-std=c++11")
++  set(CMAKE_REQUIRED_LIBRARIES "${additional_lib}")
++  set(CMAKE_REQUIRED_QUIET 1)
++  CHECK_CXX_SOURCE_COMPILES("
++#include <atomic>
++std::atomic<int> x;
++int main() {
++  return std::atomic_fetch_add_explicit(&x, 1, std::memory_order_seq_cst);
++}
++" ${varname})
++  cmake_pop_check_state()
++endfunction(check_working_cxx_atomics)
++
++# First check if atomics work without the library.
++# If not, check if the library exists, and atomics work with it.
++check_working_cxx_atomics(HAVE_CXX_ATOMICS_WITHOUT_LIB "")
++if(HAVE_CXX_ATOMICS_WITHOUT_LIB)
++  message(STATUS "Atomics provided by the C-library - yes")
++else()
++  message(STATUS "Atomics provided by the C-library - no")
++  find_library(LIBATOMIC_LIBRARY NAMES atomic PATH_SUFFIXES lib)
++  if(LIBATOMIC_LIBRARY)
++    check_working_cxx_atomics(HAVE_CXX_ATOMICS_WITH_LIB "${LIBATOMIC_LIBRARY}")
++    if (HAVE_CXX_ATOMICS_WITH_LIB)
++      message(STATUS "Atomics provided by libatomic - yes")
++    else()
++      message(STATUS "Atomics provided by libatomic - no")
++      message(FATAL_ERROR "Compiler must support std::atomic!")
++    endif()
++  else()
++    message(FATAL_ERROR "Compiler appears to require libatomic, but cannot find it.")
++  endif()
++endif()
++
+ #===============================================================================
+ #= System Introspection
+ #-------------------------------------------------------------------------------
+@@ -387,6 +436,7 @@ set(PULSEVIEW_LINK_LIBS
+       ${Boost_LIBRARIES}
+       ${QT_LIBRARIES}
+       ${CMAKE_THREAD_LIBS_INIT}
++      ${LIBATOMIC_LIBRARY}
+ )
+ if(STATIC_PKGDEPS_LIBS)
+-- 
+2.8.3
+
diff --git a/package/putty/0001-uxcons-Fix-on-musl-libc.patch b/package/putty/0001-uxcons-Fix-on-musl-libc.patch
new file mode 100644 (file)
index 0000000..5f43af0
--- /dev/null
@@ -0,0 +1,29 @@
+From 4ae1577b432c1859704d2763f70a764dee23bd98 Mon Sep 17 00:00:00 2001
+From: Kylie McClain <somasis@exherbo.org>
+Date: Thu, 28 Apr 2016 22:40:32 -0400
+Subject: [PATCH] uxcons: Fix on musl libc
+
+musl libc exports FD_SET and friends in sys/select.h.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream commit 4ae1577b432c
+
+ unix/uxcons.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/unix/uxcons.c b/unix/uxcons.c
+index b9fd67fe9274..f2a25f3fed70 100644
+--- a/unix/uxcons.c
++++ b/unix/uxcons.c
+@@ -12,6 +12,7 @@
+ #include <termios.h>
+ #include <unistd.h>
+ #include <fcntl.h>
++#include <sys/select.h>
+ #include "putty.h"
+ #include "storage.h"
+-- 
+2.8.1
+
diff --git a/package/putty/0002-Fix-__uint128_t-compile-error-on-MinGW.patch b/package/putty/0002-Fix-__uint128_t-compile-error-on-MinGW.patch
new file mode 100644 (file)
index 0000000..514b629
--- /dev/null
@@ -0,0 +1,30 @@
+From 3377ea57f5d333d65d44a1130161396782389e88 Mon Sep 17 00:00:00 2001
+From: Tim Kosse <tim.kosse@filezilla-project.org>
+Date: Tue, 11 Aug 2015 09:43:34 +0200
+Subject: [PATCH] Fix  __uint128_t compile error on MinGW.
+
+MinGW has __uint128_t, but not __uint64_t.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream commit 3377ea57f5
+
+ sshbn.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sshbn.h b/sshbn.h
+index a043241eea67..9366f614ae4c 100644
+--- a/sshbn.h
++++ b/sshbn.h
+@@ -26,7 +26,7 @@
+  * using the same 'two machine registers' kind of code generation that
+  * 32-bit targets use for 64-bit ints. If we have one of these, we can
+  * use a 64-bit BignumInt and a 128-bit BignumDblInt. */
+-typedef __uint64_t BignumInt;
++typedef unsigned long long BignumInt;
+ typedef __uint128_t BignumDblInt;
+ #define BIGNUM_INT_MASK  0xFFFFFFFFFFFFFFFFULL
+ #define BIGNUM_TOP_BIT   0x8000000000000000ULL
+-- 
+2.8.1
+
diff --git a/package/python-coherence/0001-Fix-twisted-detection.patch b/package/python-coherence/0001-Fix-twisted-detection.patch
new file mode 100644 (file)
index 0000000..c0e51b9
--- /dev/null
@@ -0,0 +1,29 @@
+From 3cf8d89cbb44b5c7a0693d0b5d665e68acc3927c Mon Sep 17 00:00:00 2001
+From: Thomas Klausner <wiz@NetBSD.org>
+Date: Tue, 10 May 2016 00:14:33 +0200
+Subject: [PATCH] Fix twisted detection.
+
+Addresses https://github.com/coherence-project/Coherence/issues/25
+
+Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
+Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
+---
+ coherence/__init__.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/coherence/__init__.py b/coherence/__init__.py
+index 2e4e8f1..4c4d73d 100644
+--- a/coherence/__init__.py
++++ b/coherence/__init__.py
+@@ -24,8 +24,6 @@ try:
+     if twisted_version < Version("twisted", 2, 5, 0):
+         raise ImportError("Twisted >= 2.5 is required. Please install it.")
+-    if twisted_web_version < Version("twisted.web", 2, 5, 0):
+-        raise ImportError("Twisted.Web >= 2.5 is required. Please install it")
+ except ImportError, exc:
+     # log error to stderr, might be useful for debugging purpose
+     for arg in exc.args:
+-- 
+2.8.1
+
index e2200f67a85e427a4276dbcb2961e85fb5448ffe..c9cbb6cca1395a0af4a23a985f61a3bab37225b3 100644 (file)
@@ -4,7 +4,11 @@ config BR2_PACKAGE_PYTHON_SERVICE_IDENTITY
        select BR2_PACKAGE_PYTHON_PYASN # runtime
        select BR2_PACKAGE_PYTHON_PYASN_MODULES # runtime
        select BR2_PACKAGE_PYTHON_PYOPENSSL # runtime
+       depends on BR2_INSTALL_LIBSTDCPP # python-pyopenssl, python-pyasn
        help
          Service identity verification for pyOpenSSL.
 
          https://pypi.python.org/pypi/service_identity
+
+comment "python-service-identify needs a toolchain w/ C++"
+       depends on !BR2_INSTALL_LIBSTDCPP
index a8590a97408b8d20dad6983c40da3c02616344b0..4a237373d1830505bd581989a21c5f1f1b8cb5ea 100644 (file)
@@ -5,9 +5,13 @@ config BR2_PACKAGE_PYTHON_TREQ
        select BR2_PACKAGE_PYTHON_SIX # runtime
        select BR2_PACKAGE_PYTHON_TWISTED # runtime
        select BR2_PACKAGE_PYTHON_PYOPENSSL # runtime
+       depends on BR2_INSTALL_LIBSTDCPP # python-pyopenssl
        help
          treq is an HTTP library inspired by requests but written on
          top of Twisted's Agents.  It provides a simple, higher level
          API for making HTTP requests when using Twisted.
 
          https://github.com/twisted/treq
+
+comment "python-treq needs a toolchain w/ C++"
+       depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/qlibc/0004-md5-fix-musl-build-by-removing-usage-of-internal-gli.patch b/package/qlibc/0004-md5-fix-musl-build-by-removing-usage-of-internal-gli.patch
new file mode 100644 (file)
index 0000000..2ce3757
--- /dev/null
@@ -0,0 +1,60 @@
+From fe45b18f777b1414aee908f08f56a5730a00dbb5 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Sat, 21 May 2016 09:59:56 +0200
+Subject: [PATCH 1/1] md5: fix musl build by removing usage of internal glibc
+ header sys/cdefs.h
+
+As suggested in musl FAQ:
+http://wiki.musl-libc.org/wiki/FAQ#Q:_I.27m_trying_to_compile_something_against_musl_and_I_get_error_messages_about_sys.2Fcdefs.h
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(Patch for master branch sent upstream:
+ https://github.com/wolkykim/qlibc/pull/53,
+ this patch is a backport for v2.1.6)
+---
+ src/internal/md5/md5.h  | 10 ++++++----
+ src/internal/md5/md5c.c |  1 -
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/src/internal/md5/md5.h b/src/internal/md5/md5.h
+index cbfa7ca..8e726fe 100644
+--- a/src/internal/md5/md5.h
++++ b/src/internal/md5/md5.h
+@@ -35,9 +35,9 @@ typedef struct MD5Context {
+     unsigned char buffer[64]; /* input buffer */
+ } MD5_CTX;
+-#include <sys/cdefs.h>
+-
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+ void   MD5Init (MD5_CTX *);
+ void   MD5Update (MD5_CTX *, const unsigned char *, unsigned int);
+ void   MD5Final (unsigned char[16], MD5_CTX *);
+@@ -45,6 +45,8 @@ char * MD5End(MD5_CTX *, char *);
+ char * MD5File(const char *, char *);
+ char * MD5FileChunk(const char *, char *, off_t, off_t);
+ char * MD5Data(const unsigned char *, unsigned int, char *);
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+ #endif /* Q_MD5_H */
+diff --git a/src/internal/md5/md5c.c b/src/internal/md5/md5c.c
+index de9e47f..040bf5e 100644
+--- a/src/internal/md5/md5c.c
++++ b/src/internal/md5/md5c.c
+@@ -26,7 +26,6 @@
+  * edited for clarity and style only.
+  */
+-#include <sys/cdefs.h>
+ #include <sys/types.h>
+ #include <string.h>
+ #include "md5.h"
+-- 
+2.8.1
+
index 59c398478164d0e88aec0d2de70d2062b02432cf..7549b35192e38623cf26dfc6fe3c118a7919453e 100644 (file)
@@ -3,6 +3,7 @@ config BR2_PACKAGE_QT5MULTIMEDIA
        select BR2_PACKAGE_QT5BASE
        select BR2_PACKAGE_QT5BASE_GUI
        select BR2_PACKAGE_QT5BASE_NETWORK
+       select BR2_PACKAGE_QT5BASE_OPENGL_LIB if BR2_PACKAGE_QT5BASE_OPENGL
        help
          Qt is a cross-platform application and UI framework for
          developers using C++.
index 504141c63f5267830582f6c492e414f35d7d953a..f5b713dbaec3f1fde8ad850a1516048394f7fb08 100644 (file)
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_QT5SERIALBUS
        bool "qt5serialbus"
+       depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6 # CAN FD
        select BR2_PACKAGE_QT5BASE
        select BR2_PACKAGE_QT5SERIALPORT
        help
@@ -9,3 +10,6 @@ config BR2_PACKAGE_QT5SERIALBUS
          This package corresponds to the qt5serialbus module.
 
          http://qt.io
+
+comment "qt5serialbus needs headers >= 3.6"
+       depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6
index 6b98367bcb848a0e5a5ee48fef6b9917b54235b4..22e90add2c35beb896d4b9a7005a68c62e9b8663 100644 (file)
@@ -10,7 +10,15 @@ QUAGGA_SITE = http://download.savannah.gnu.org/releases/quagga
 QUAGGA_DEPENDENCIES = host-gawk
 QUAGGA_LICENSE = GPLv2+
 QUAGGA_LICENSE_FILES = COPYING
-QUAGGA_CONF_OPTS = --program-transform-name=''
+
+# We need to override the sysconf and localstate directories so that
+# quagga can create files as the quagga user without extra
+# intervention
+QUAGGA_CONF_OPTS = \
+       --program-transform-name='' \
+       --sysconfdir=/etc/quagga \
+       --localstatedir=/var/run/quagga
+
 # 0002-configure-fix-static-linking-with-readline.patch
 QUAGGA_AUTORECONF = YES
 
@@ -33,6 +41,20 @@ QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_ISISD),--enable-isisd,--disable-is
 QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_BGP_ANNOUNCE),--enable-bgp-announce,--disable-bgp-announce)
 QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_TCP_ZERBRA),--enable-tcp-zebra,--disable-tcp-zebra)
 
+define QUAGGA_USERS
+       quagga -1 quagga -1 * - - - Quagga priv drop user
+endef
+
+# Set the permissions of /etc/quagga such that quagga (through vtysh)
+# can save the configuration - set the folder recursively as the files
+# need to be 600, and then set the folder (non-recursively) to 755 so
+# it can used.  Quagga also needs to write to the folder as it moves
+# and creates, rather than overwriting.
+define QUAGGA_PERMISSIONS
+       /etc/quagga r 600 quagga quagga - - - - -
+       /etc/quagga d 755 quagga quagga - - - - -
+endef
+
 ifeq ($(BR2_PACKAGE_QUAGGA_SNMP),y)
 QUAGGA_CONF_ENV += ac_cv_path_NETSNMP_CONFIG=$(STAGING_DIR)/usr/bin/net-snmp-config
 QUAGGA_CONF_OPTS += --enable-snmp=agentx
@@ -50,4 +72,9 @@ ifeq ($(BR2_arc),y)
 QUAGGA_CONF_OPTS += --disable-pie
 endif
 
+define QUAGGA_INSTALL_INIT_SYSTEMD
+       $(INSTALL) -D -m 644 package/quagga/quagga_tmpfiles.conf \
+               $(TARGET_DIR)/usr/lib/tmpfiles.d/quagga.conf
+endef
+
 $(eval $(autotools-package))
diff --git a/package/quagga/quagga_tmpfiles.conf b/package/quagga/quagga_tmpfiles.conf
new file mode 100644 (file)
index 0000000..e16c475
--- /dev/null
@@ -0,0 +1 @@
+d /var/run/quagga/ 1755 quagga quagga -
index c6fc3b762138244d5c09edfd86c4043bc5fcfb19..ad8279ef288a79298fde142f79329d9fb67f63f5 100644 (file)
@@ -2,8 +2,13 @@ comment "rpm needs a toolchain w/ threads"
        depends on !BR2_TOOLCHAIN_HAS_THREADS
        depends on BR2_USE_MMU # fork()
 
+comment "rpm needs a toolchain w/ gcc >= 5"
+       depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_5 && BR2_sh
+
 config BR2_PACKAGE_RPM
        bool "rpm"
+       # triggers internal compiler error
+       depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 || !BR2_sh
        depends on BR2_TOOLCHAIN_HAS_THREADS # beecrypt
        depends on BR2_USE_MMU # fork()
        select BR2_PACKAGE_BEECRYPT
diff --git a/package/ruby/0001-process.c-fix-rb_spawn_process-for-nommu.patch b/package/ruby/0001-process.c-fix-rb_spawn_process-for-nommu.patch
new file mode 100644 (file)
index 0000000..701c105
--- /dev/null
@@ -0,0 +1,34 @@
+From 24e6d5bcf791a5c3f46191e544731420ff8b1312 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Thu, 19 May 2016 11:10:02 -0300
+Subject: [PATCH] process.c: fix rb_spawn_process() for nommu
+
+rb_spawn_process() in process.c tries different solutions for when fork
+and/or spawnv are/aren't available.
+The last resort when both aren't is to use the system() call which
+stores the value in the status variable, which isn't declared.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+Patch status: reported https://bugs.ruby-lang.org/issues/12398
+
+ process.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/process.c b/process.c
+index e196639..40967f7 100644
+--- a/process.c
++++ b/process.c
+@@ -3897,6 +3897,9 @@ rb_spawn_process(struct rb_execarg *eargp, char *errmsg, size_t errmsg_buflen)
+     VALUE prog;
+     struct rb_execarg sarg;
+ #endif
++#if !defined HAVE_WORKING_FORK || !USE_SPAWNV
++    int status;
++#endif
+ #if defined HAVE_WORKING_FORK && !USE_SPAWNV
+     pid = rb_fork_async_signal_safe(NULL, rb_exec_atfork, eargp, eargp->redirect_fds, errmsg, errmsg_buflen);
+-- 
+2.7.3
+
index bb546f0837334fdbdcd9ad466aa0d8909155dbd7..e424861f678ee1a99c21b92bbbcede62f74574ea 100644 (file)
@@ -155,6 +155,9 @@ define SAMBA4_INSTALL_INIT_SYSTEMD
                $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/smb.service
        ln -sf ../../../../usr/lib/systemd/system/winbind.service \
                $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/winbind.service
+       $(INSTALL) -D -m 644 $(@D)/packaging/systemd/samba.conf.tmp \
+               $(TARGET_DIR)/etc/tmpfiles.d/samba.conf
+       printf "d /var/log/samba  755 root root\n" >>$(TARGET_DIR)/etc/tmpfiles.d/samba.conf
 endef
 
 $(eval $(generic-package))
index f4db4b9b99ff32ac7737309d4fa369e4a742daa1..4b74eda64167ab6f7c00945628e8fc3eeb691860 100644 (file)
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_SG3_UTILS
        bool "sg3-utils"
+       depends on !BR2_bfin # symbol prefixing problems
        depends on BR2_TOOLCHAIN_HAS_THREADS
        help
          Low level utilities for devices that use a SCSI command set.
@@ -15,4 +16,5 @@ config BR2_PACKAGE_SG3_UTILS_PROGS
 endif
 
 comment "sg3-utils needs a toolchain w/ threads"
+       depends on !BR2_bfin
        depends on !BR2_TOOLCHAIN_HAS_THREADS
index 761883567175da3728eb0428905080bc9c4adc83..4e3cdc68df950afe15cdec7668524b5fe074104b 100644 (file)
@@ -48,8 +48,7 @@ SKELETON_CUSTOM_NOT_MERGED_USR += /sbin
 endif
 
 ifneq ($(SKELETON_CUSTOM_NOT_MERGED_USR),)
-$(error Use of systemd as an init system requires a merged /usr. \
-       However, the custom skeleton in $(SKELETON_PATH) is not \
+$(error The custom skeleton in $(SKELETON_PATH) is not \
        using a merged /usr for the following directories: \
        $(SKELETON_CUSTOM_NOT_MERGED_USR))
 endif
index 1c2960ea62aad01212129268ec622f7302890597..79d29474971b804c51fc92d0c8f65f656e629f15 100644 (file)
@@ -21,8 +21,8 @@ if BR2_PACKAGE_SQUEEZELITE
 config BR2_PACKAGE_SQUEEZELITE_FFMPEG
        bool "Enable WMA and ALAC decoding"
        default y
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        select BR2_PACKAGE_FFMPEG
-       depends on !BR2_nios2 # ffmpeg
 
 config BR2_PACKAGE_SQUEEZELITE_DSD
        bool "Enable DSD decoding"
index 1e475b19a015e18fc5782e6c1d95778335757633..20ec93affb94fc6a243f6dc54655cd6996a6902c 100644 (file)
@@ -7,6 +7,8 @@ config BR2_PACKAGE_STRESS_NG
        # perf.c needs PERF_COUNT_HW_REF_CPU_CYCLES
        depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
        depends on !BR2_microblaze # keyutils
+       # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
+       depends on !BR2_nios2
        depends on !BR2_STATIC_LIBS # keyutils
        select BR2_PACKAGE_KEYUTILS # stress-key.c needs keyutils.h
        select BR2_PACKAGE_ATTR # stress-xattr.c needs xattr.h
@@ -19,7 +21,7 @@ config BR2_PACKAGE_STRESS_NG
          http://kernel.ubuntu.com/~cking/stress-ng/
 
 comment "stress-ng needs a glibc toolchain w/ dynamic library, headers >= 3.3"
-       depends on !BR2_microblaze
+       depends on !BR2_microblaze && !BR2_nios2
        depends on BR2_USE_MMU
        depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 \
                || !BR2_TOOLCHAIN_USES_GLIBC
index 497930397f0acbe86710010461423eff22612377..d09edc0e2f8aa3ff8099b6aa1b0320f27e7f250c 100644 (file)
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 9d17dffafdf8dd71eb5c191973b65d4eb2964ecc31f1d01ad188fd03a0c49f6c        stress-ng-0.04.16.tar.gz
+sha256 7af9759a37902ebf401f92fedeada0b82bcd1e3f4e9e10130177344f143470eb        stress-ng-0.06.02.tar.gz
index 114c42738155371f281945f50be28b5f922dfcf7..6015a1e9e932b6afba054fe3f09ce5516d299a50 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-STRESS_NG_VERSION = 0.04.16
+STRESS_NG_VERSION = 0.06.02
 STRESS_NG_SITE = http://kernel.ubuntu.com/~cking/tarballs/stress-ng
 STRESS_NG_LICENSE = GPLv2+
 STRESS_NG_LICENSE_FILES = COPYING
index cada78bb70d6b56671416421e8b40c83bbce9105..b49435c8c7935dd2a7b34476abd0a26a96ce4481 100644 (file)
@@ -1,11 +1,13 @@
 comment "strongswan needs a toolchain w/ threads, dynamic library"
        depends on BR2_USE_MMU
+       depends on BR2_TOOLCHAIN_HAS_ATOMIC
        depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
 
 menuconfig BR2_PACKAGE_STRONGSWAN
        bool "strongswan"
        depends on BR2_USE_MMU # fork()
        depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_HAS_ATOMIC
        depends on !BR2_STATIC_LIBS
        help
          strongSwan is an OpenSource IPsec implementation for the
index e7606c008ffe1b5f3bc7d6db6b0db9a8beb70097..36b51485359239dc3469de53e4a309335dbee427 100644 (file)
@@ -35,6 +35,10 @@ STRONGSWAN_CONF_OPTS += \
        --enable-vici=$(if $(BR2_PACKAGE_STRONGSWAN_VICI),yes,no) \
        --enable-swanctl=$(if $(BR2_PACKAGE_STRONGSWAN_VICI),yes,no)
 
+ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
+STRONGSWAN_CONF_ENV += LIBS='-latomic'
+endif
+
 ifeq ($(BR2_PACKAGE_STRONGSWAN_EAP),y)
 STRONGSWAN_CONF_OPTS += \
        --enable-eap-sim \
index 0ec3be351a1eaf8aaaad85edf46175569abdc3f8..f4694a2b7c770e6f945700914391ab5d38faca3c 100644 (file)
@@ -1,7 +1,13 @@
 config BR2_PACKAGE_TIME
        bool "time"
        depends on BR2_USE_MMU # fork()
+       # See https://savannah.gnu.org/bugs/index.php?48000
+       depends on !BR2_STATIC_LIBS
        help
          The GNU time utility.
 
          http://savannah.gnu.org/projects/time/
+
+comment "time needs a toolchain w/ dynamic library"
+       depends on BR2_USE_MMU
+       depends on BR2_STATIC_LIBS
diff --git a/package/tinc/0001-musl.patch b/package/tinc/0001-musl.patch
new file mode 100644 (file)
index 0000000..654c705
--- /dev/null
@@ -0,0 +1,32 @@
+From: Jo-Philipp Wich <jow@openwrt.org>
+Date: Thu, 18 Jun 2015 21:58:31 +0000 (+0200)
+Subject: fix musl compatibility
+X-Git-Tag: release-1.0.26~9
+X-Git-Url: http://www.tinc-vpn.org/git/browse?p=tinc;a=commitdiff_plain;h=a04fd9d0c9babca461cee186677db8f607677c6a;hp=bb616245b7883ab30291cd8d46672ed2ae733166
+
+fix musl compatibility
+
+Let configure include sys/if_tun.h when testing for netinet/if_ether.h
+to detect the Kernel/libc header conflict on musl.
+
+After this patch, configure will correctly detect netinet/if_ether.h as
+unusable and the subsequent compilation will not attempt to use it.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+(downloaded upstream commit included in tinc 1.0.25:
+ http://www.tinc-vpn.org/git/browse?p=tinc;a=commitdiff;h=a04fd9d0c9babca461cee186677db8f607677c6a)
+---
+
+diff --git a/src/have.h b/src/have.h
+index e83f98f..69d5100 100644
+--- a/src/have.h
++++ b/src/have.h
+@@ -207,4 +207,8 @@
+ #include <resolv.h>
+ #endif
++#ifdef HAVE_LINUX_IF_TUN_H
++#include <linux/if_tun.h>
++#endif
++
+ #endif /* __TINC_SYSTEM_H__ */
index 5390ff33941c1a0f4a297ad08574c79e2a647bc7..1d8e2c42591e70cb06ba0643eb55ee1660039c0e 100644 (file)
@@ -3,6 +3,7 @@ config BR2_PACKAGE_TINC
        select BR2_PACKAGE_LZO
        select BR2_PACKAGE_OPENSSL
        select BR2_PACKAGE_ZLIB
+       depends on !BR2_STATIC_LIBS # tinc requires libdl for OpenSSL
        depends on BR2_USE_MMU # fork()
        help
          tinc is a Virtual Private Network (VPN) daemon that uses
@@ -10,3 +11,6 @@ config BR2_PACKAGE_TINC
          between hosts on the Internet.
 
          http://www.tinc-vpn.org/
+
+comment "tinc needs a toolchain w/ dynamic library"
+       depends on BR2_STATIC_LIBS
diff --git a/package/tinyalsa/0002-asound.h-include-time.h-to-get-struct-timespec-proto.patch b/package/tinyalsa/0002-asound.h-include-time.h-to-get-struct-timespec-proto.patch
new file mode 100644 (file)
index 0000000..1b5d43c
--- /dev/null
@@ -0,0 +1,33 @@
+From c8333f8c7a4e4b9549abeef7530b2cd20a18e537 Mon Sep 17 00:00:00 2001
+From: rofl0r <retnyg@gmx.net>
+Date: Mon, 12 Oct 2015 12:57:09 +0100
+Subject: [PATCH] asound.h: include <time.h> to get struct timespec prototype
+
+without including it, we get
+In file included from mixer.c:44:0:
+include/sound/asound.h:337:18: error: field 'trigger_tstamp' has incomplete type
+include/sound/asound.h:338:18: error: field 'tstamp' has incomplete type
+etc.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream commit c8333f8c7a4e
+
+ include/sound/asound.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/sound/asound.h b/include/sound/asound.h
+index a041628ec28e..7c6de81673f5 100644
+--- a/include/sound/asound.h
++++ b/include/sound/asound.h
+@@ -12,6 +12,7 @@
+ #ifndef __SOUND_ASOUND_H
+ #define __SOUND_ASOUND_H
++#include <time.h>
+ #include <linux/types.h>
+ #define SNDRV_PROTOCOL_VERSION(major, minor, subminor) (((major)<<16)|((minor)<<8)|(subminor))
+-- 
+2.8.1
+
index 093bfdf2a2b817ef1c40734779dc11d1b44a0c42..1288f849e2e1b04fbbfea19b4047f8948cba423d 100644 (file)
@@ -5,7 +5,7 @@ config BR2_PACKAGE_TOVID
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_USE_WCHAR
        depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
-       depends on !BR2_nios2 # ffmpeg
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS
        # The below dependencies are runtime dependencies only
        select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps_ng
@@ -28,6 +28,7 @@ config BR2_PACKAGE_TOVID
 
 comment "tovid needs a toolchain w/ threads, C++, wchar"
        depends on BR2_USE_MMU
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS
        depends on !BR2_TOOLCHAIN_HAS_THREADS \
                || !BR2_INSTALL_LIBSTDCPP \
@@ -35,4 +36,5 @@ comment "tovid needs a toolchain w/ threads, C++, wchar"
 
 comment "tovid depends on python or python3"
        depends on !BR2_PACKAGE_PYTHON && !BR2_PACKAGE_PYTHON3
+       depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS
index cf66e70ad1b9f4b5fd0078b35359afb58e27a93b..fe6db3184cf4d903b6f205627c49cd0fe57d1148 100644 (file)
@@ -12,9 +12,15 @@ TURBOLUA_LICENSE_FILES = LICENSE
 
 TURBOLUA_MAKE_OPTS = \
        $(TARGET_CONFIGURE_OPTS) \
-       SSL=$(if $(BR2_PACKAGE_OPENSSL),openssl,none) \
        LUAJIT_VERSION="$(LUAJIT_VERSION)"
 
+ifeq ($(BR2_PACKAGE_OPENSSL),y)
+TURBOLUA_MAKE_OPTS += SSL=openssl
+TURBOLUA_DEPENDENCIES += openssl
+else
+TURBOLUA_MAKE_OPTS += SSL=none
+endif
+
 define TURBOLUA_BUILD_CMDS
        $(MAKE) $(TURBOLUA_MAKE_OPTS) -C $(@D) all
 endef
index 0d9c272b6b96e09b9672796a3749f78da779db04..9d6561c343c00c7013342d051e5948115b18ec1b 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_USTR
        bool "ustr"
        # unconditionally builds a shared library
        depends on !BR2_STATIC_LIBS
+       depends on !BR2_TOOLCHAIN_USES_MUSL # broken vsnprintf detection
        help
          A small, safe string library.
 
@@ -9,3 +10,4 @@ config BR2_PACKAGE_USTR
 
 comment "ustr needs a toolchain w/ dynamic library"
        depends on BR2_STATIC_LIBS
+       depends on !BR2_TOOLCHAIN_USES_MUSL
index 21b2608ffd6e2874d73e6893897e772b99083616..40e219d95af23449467ae1fd859893e207f65976 100644 (file)
@@ -8,6 +8,7 @@ config BR2_PACKAGE_VALGRIND
                   BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \
                   BR2_x86_64
        depends on !BR2_STATIC_LIBS
+       depends on !BR2_MIPS_SOFT_FLOAT
        help
          Tool for debugging and profiling Linux programs.
 
index 20959fdc5200a8ff61d20f6ffade4529e94e83d2..faccb3f945b2c857cc92c3642fb25a7e552bb454 100644 (file)
@@ -1,4 +1,4 @@
-# From http://www.webkitgtk.org/releases/webkitgtk-2.12.2.tar.xz.sha1
-sha1   84d02caadd3d39805e83a4719e2424c1ba4a54d6        webkitgtk-2.12.2.tar.xz
+# From http://www.webkitgtk.org/releases/webkitgtk-2.12.3.tar.xz.sha1
+sha1   d6a0d598c09d2d56ba0862f8d9206e89d75317cb        webkitgtk-2.12.3.tar.xz
 # Calculated based on the hash above
-sha256 9dc49b908b1c37da739703e1402a7f07c4ea9093b8ecfb34f20e8f74e328f124        webkitgtk-2.12.2.tar.xz
+sha256 173cbb9a2eca23eee52e99965483ab25aa9c0569ef5b57041fc0c129cc26c307        webkitgtk-2.12.3.tar.xz
index 8bed9c5cce1437262cc85b5a69d6b367c20d16f3..2479872c47847be8ddc1a7aae29ade06012fe946 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-WEBKITGTK_VERSION = 2.12.2
+WEBKITGTK_VERSION = 2.12.3
 WEBKITGTK_SITE = http://www.webkitgtk.org/releases
 WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz
 WEBKITGTK_INSTALL_STAGING = YES
index 8fec5c2834cca0b68966927d7edd5fe69a1c924c..7825901e9838b06b80bd74ba01767d2519fa636e 100644 (file)
@@ -2,6 +2,7 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_FBTURBO
        bool "xf86-video-fbturbo"
        select BR2_PACKAGE_LIBDRM
        select BR2_PACKAGE_PIXMAN
+       select BR2_PACKAGE_XPROTO_DRI2PROTO if BR2_PACKAGE_LIBUMP
        select BR2_PACKAGE_XPROTO_FONTSPROTO
        select BR2_PACKAGE_XPROTO_RANDRPROTO
        select BR2_PACKAGE_XPROTO_RENDERPROTO
index b2053d3e59040d6b2cf75ed64cad2ed4d1a7312b..15f4cd10937a53c9af4f922a742ff67c92002846 100644 (file)
@@ -26,6 +26,14 @@ else
 XDRIVER_XF86_VIDEO_FBTURBO_CONF_OPTS += --disable-pciaccess
 endif
 
+ifeq ($(BR2_PACKAGE_LIBUMP),y)
+XDRIVER_XF86_VIDEO_FBTURBO_DEPENDENCIES += libump
+endif
+
+ifeq ($(BR2_PACKAGE_XPROTO_DRI2PROTO),y)
+XDRIVER_XF86_VIDEO_FBTURBO_DEPENDENCIES += xproto_dri2proto
+endif
+
 define XDRIVER_XF86_VIDEO_FBTURBO_INSTALL_CONF_FILE
        $(INSTALL) -m 0644 -D $(@D)/xorg.conf $(TARGET_DIR)/etc/X11/xorg.conf
 endef
index 31f6d0dba53362b41bce3b99e33df08920d51c75..85d7e98e9f62bb74567a37a7e5696322e9fc4b54 100644 (file)
@@ -80,6 +80,14 @@ XSERVER_XORG_SERVER_CONF_OPTS += \
        --disable-systemd-logind
 endif
 
+# Xwayland support needs libdrm, libepoxy, wayland and libxcomposite
+ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_LIBEPOXY)$(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_XLIB_LIBXCOMPOSITE),yyyy)
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-xwayland
+XSERVER_XORG_SERVER_DEPENDENCIES += libdrm libepoxy wayland xlib_libXcomposite
+else
+XSERVER_XORG_SERVER_CONF_OPTS += --disable-xwayland
+endif
+
 # Present protocol only required for xserver 1.15+, but does not matter if
 # enabled for older versions as they don't use it (not even optionally).
 ifeq ($(BR2_PACKAGE_XPROTO_PRESENTPROTO),y)
diff --git a/package/xorriso/0001-fix-musl-build.patch b/package/xorriso/0001-fix-musl-build.patch
new file mode 100644 (file)
index 0000000..86d251d
--- /dev/null
@@ -0,0 +1,20 @@
+Fix musl build
+
+Add missing header needed for ssize_t.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: posted upstream
+(http://lists.gnu.org/archive/html/bug-xorriso/2016-05/msg00000.html)
+
+diff -Nuar xorriso-1.4.2-orig/libisofs/aaip_0_2.h xorriso-1.4.2/libisofs/aaip_0_2.h
+--- xorriso-1.4.2-orig/libisofs/aaip_0_2.h     2015-11-28 16:41:33.000000000 +0200
++++ xorriso-1.4.2/libisofs/aaip_0_2.h  2016-05-24 11:40:43.874191174 +0300
+@@ -16,6 +16,7 @@
+ #ifndef Aaip_h_is_includeD
+ #define Aaip_h_is_includeD yes
++#include <unistd.h>
+ /* --------------------------------- Encoder ---------------------------- */
index b8f02afc7720c834cb1f6a00bf2860ce057ab63e..d42a39444432c0bce1b2e4cc31b6e4303f799da7 100644 (file)
@@ -5,7 +5,7 @@
 ################################################################################
 
 # Buildroot version to use
-RELEASE='2016.02'
+RELEASE='2016.05'
 
 ### Change here for more memory/cores ###
 VM_MEMORY=2048
index 7eb3e479532698db4400f7a01e352627aa001d63..0ba0f2d3a73946988b248bbaf7052935aa086fb4 100755 (executable)
@@ -276,7 +276,7 @@ parser.add_argument("--order", '-O', metavar="GRAPH_ORDER",
                     help="Ordering of packages: build or duration (for histogram only)")
 parser.add_argument("--alternate-colors", '-c', action="store_true",
                     help="Use alternate colour-scheme")
-parser.add_argument("--input", '-i', metavar="OUTPUT",
+parser.add_argument("--input", '-i', metavar="INPUT",
                     help="Input file (usually $(O)/build/build-time.log)")
 parser.add_argument("--output", '-o', metavar="OUTPUT", required=True,
                     help="Output file (.pdf or .png extension)")
index 2e14971ba79c78a091e6d1b5466acc54c51b242d..9441467435184fb19469aa7a1ede5556597686d4 100644 (file)
@@ -101,6 +101,10 @@ comment "systemd needs (e)glibc toolchain, headers >= 3.10"
 
 config BR2_INIT_NONE
        bool "None"
+       help
+         Buildroot will not install any init system. You will
+         have to provide your own, either with a new package
+         or with a rootfs-overlay.
 
 endchoice
 
index fc30c6e52e71b94b3e6214d5f021876ea5fefc23..e0044c14f84f6304eb9f42b12244e7c234ae4253 100644 (file)
@@ -15,7 +15,6 @@ config BR2_TOOLCHAIN_USES_GLIBC
        select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
        select BR2_TOOLCHAIN_HAS_THREADS_NPTL
        select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS
-       select BR2_TOOLCHAIN_HAS_SSP
 
 config BR2_TOOLCHAIN_USES_UCLIBC
        bool
@@ -27,7 +26,6 @@ config BR2_TOOLCHAIN_USES_MUSL
        select BR2_TOOLCHAIN_HAS_THREADS
        select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
        select BR2_TOOLCHAIN_HAS_THREADS_NPTL
-       select BR2_TOOLCHAIN_HAS_SSP
 
 choice
        prompt "Toolchain type"
index d28a2caed3ea848edb2e3fc6dbbf75077e2fabf4..b3510b6e0bc4ec1f1da35efb600179ff17fd5713 100644 (file)
@@ -11,7 +11,7 @@
 copy_toolchain_lib_root = \
        LIB="$(strip $1)"; \
 \
-       LIBPATHS=`find -L $(STAGING_DIR) -name "$${LIB}" 2>/dev/null` ; \
+       LIBPATHS=`find $(STAGING_DIR)/ -name "$${LIB}" 2>/dev/null` ; \
        for LIBPATH in $${LIBPATHS} ; do \
                DESTDIR=`echo $${LIBPATH} | sed "s,^$(STAGING_DIR)/,," | xargs dirname` ; \
                mkdir -p $(TARGET_DIR)/$${DESTDIR}; \
@@ -294,8 +294,7 @@ check_uclibc = \
        $(call check_uclibc_feature,__UCLIBC_HAS_WCHAR__,BR2_USE_WCHAR,$${UCLIBC_CONFIG_FILE},Wide char support) ;\
        $(call check_uclibc_feature,__UCLIBC_HAS_THREADS__,BR2_TOOLCHAIN_HAS_THREADS,$${UCLIBC_CONFIG_FILE},Thread support) ;\
        $(call check_uclibc_feature,__PTHREADS_DEBUG_SUPPORT__,BR2_TOOLCHAIN_HAS_THREADS_DEBUG,$${UCLIBC_CONFIG_FILE},Thread debugging support) ;\
-       $(call check_uclibc_feature,__UCLIBC_HAS_THREADS_NATIVE__,BR2_TOOLCHAIN_HAS_THREADS_NPTL,$${UCLIBC_CONFIG_FILE},NPTL thread support) ;\
-       $(call check_uclibc_feature,__UCLIBC_HAS_SSP__,BR2_TOOLCHAIN_HAS_SSP,$${UCLIBC_CONFIG_FILE},Stack Smashing Protection support)
+       $(call check_uclibc_feature,__UCLIBC_HAS_THREADS_NATIVE__,BR2_TOOLCHAIN_HAS_THREADS_NPTL,$${UCLIBC_CONFIG_FILE},NPTL thread support)
 
 #
 # Check that the Buildroot configuration of the ABI matches the
@@ -386,6 +385,24 @@ check_unusable_toolchain = \
                exit 1 ; \
        fi
 
+#
+# Check if the toolchain has SSP (stack smashing protector) support
+#
+# $1: cross-gcc path
+#
+check_toolchain_ssp = \
+       __CROSS_CC=$(strip $1) ; \
+       __HAS_SSP=`echo 'void main(){}' | $${__CROSS_CC} -fstack-protector -x c - -o $(BUILD_DIR)/.br-toolchain-test.tmp >/dev/null 2>&1 && echo y` ; \
+       if [ "$(BR2_TOOLCHAIN_HAS_SSP)" != "y" -a "$${__HAS_SSP}" = "y" ] ; then \
+               echo "SSP support available in this toolchain, please enable BR2_TOOLCHAIN_EXTERNAL_HAS_SSP" ; \
+               exit 1 ; \
+       fi ; \
+       if [ "$(BR2_TOOLCHAIN_HAS_SSP)" = "y" -a "$${__HAS_SSP}" != "y" ] ; then \
+               echo "SSP support not available in this toolchain, please disable BR2_TOOLCHAIN_EXTERNAL_HAS_SSP" ; \
+               exit 1 ; \
+       fi ; \
+       rm -f $(BUILD_DIR)/.br-toolchain-test.tmp*
+
 #
 # Generate gdbinit file for use with Buildroot
 #
index ce2d91eb8323ae49d5220b597f9df636ea0a448e..7aee57f8bcd9a7ec88307ec8d7254d95e4e0b989 100644 (file)
@@ -22,6 +22,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
        depends on BR2_ARM_EABIHF
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
@@ -44,6 +45,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
        depends on BR2_ARM_EABIHF
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
@@ -66,6 +68,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
        depends on BR2_ARM_EABIHF
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
@@ -88,6 +91,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
        depends on BR2_ARM_EABIHF
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
@@ -108,6 +112,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM
        depends on BR2_ARM_EABI
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -143,6 +148,7 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A
        depends on BR2_ARM_CPU_HAS_VFPV3
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -166,6 +172,7 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE
        depends on BR2_ARM_EABI
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -185,6 +192,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
        depends on !BR2_MIPS_NABI32
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -408,6 +416,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -425,6 +434,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -451,6 +461,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64
        depends on !BR2_STATIC_LIBS
        depends on BR2_x86_jaguar || BR2_x86_steamroller
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -476,6 +487,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86
        depends on !BR2_x86_jaguar
        depends on !BR2_x86_steamroller
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
@@ -521,6 +533,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
        depends on BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_INSTALL_LIBSTDCPP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
@@ -536,6 +549,7 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
        depends on BR2_HOSTARCH = "x86_64"
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_INSTALL_LIBSTDCPP
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
@@ -550,6 +564,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        depends on !BR2_STATIC_LIBS
        select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
@@ -574,6 +589,7 @@ config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
        # Unsupported for MIPS R6
        depends on !BR2_mips_32r6 && !BR2_mips_64r6
        select BR2_TOOLCHAIN_EXTERNAL_MUSL
+       select BR2_TOOLCHAIN_HAS_SSP
        select BR2_INSTALL_LIBSTDCPP
        select BR2_HOSTARCH_NEEDS_IA32_LIBS
        select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
@@ -973,17 +989,19 @@ config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL
 
 endif # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
 
+endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
+
 config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
        bool "Toolchain has SSP support?"
        select BR2_TOOLCHAIN_HAS_SSP
+       default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       default y if BR2_TOOLCHAIN_EXTERNAL_MUSL
        help
          Selection this option if your external toolchain has Stack
          Smashing Protection support enabled. If you don't know,
          leave the default value, Buildroot will tell you if it's
          correct or not.
 
-endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
-
 config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
        bool "Toolchain has RPC support?"
        select BR2_TOOLCHAIN_HAS_NATIVE_RPC
index ef4c7e216b78b75592f315c3390942e4eddf8bc0..fe45f19f754b6b120f59c99de4c882908d529a11 100644 (file)
@@ -42,7 +42,7 @@ sha256 4bc9d86390f8fa67a693ba4768ba5b12faaf7dd37c706c05ccd9321e765226e4  gcc-lin
 sha256 bf5d3111dad5aa9aef0e955875fb7fc9e918cb24519af7014dd67a9e581a49b1  gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_src.tar.bz2
 sha256 f488caf46680b0c0a16b66b43fbfd157e3d6389df18e957983132e89529a9804  gcc-linaro-5.3-2016.02-x86_64_armeb-linux-gnueabihf.tar.xz
 sha256 3954f496ab01de67241109e82abfaa9b7625fdab4f05e79e7902e9814a07b832  gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz
-sha256 3954f496ab01de67241109e82abfaa9b7625fdab4f05e79e7902e9814a07b832  gcc-linaro-aarch64-linux-gnu-4.9-2014.09_src.tar.bz2
+sha256 a7b8f842fdc9d9be22ca4e0c999429780fc6f16ea798b032421b5ec0cfa53b3e  gcc-linaro-aarch64-linux-gnu-4.9-2014.09_src.tar.bz2
 sha256 1c85af550bedd378be583317b4abbdc96342b42c19fb19873c13d3093ff694ad  gcc-linaro-5.3-2016.02-x86_64_aarch64-linux-gnu.tar.xz
 
 # Codescape toolchains from Imagination Technologies
index 3d71ef464460bfb79ad40751f36442b47a7d2f29..f3443a23923c0f4753e9259e67eb1825467b15d8 100644 (file)
@@ -90,7 +90,7 @@ ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
 TOOLCHAIN_EXTERNAL_LIBS += libstdc++.so.*
 endif
 
-TOOLCHAIN_EXTERNAL_LIBS += $(call qstrip,$(BR2_TOOLCHAIN_EXTRA_TOOLCHAIN_EXTERNAL_LIBS))
+TOOLCHAIN_EXTERNAL_LIBS += $(call qstrip,$(BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS))
 
 # Details about sysroot directory selection.
 #
@@ -522,6 +522,7 @@ define TOOLCHAIN_EXTERNAL_CONFIGURE_CMDS
        else \
                $(call check_glibc,$${SYSROOT_DIR}) ; \
        fi
+       $(Q)$(call check_toolchain_ssp,$(TOOLCHAIN_EXTERNAL_CC))
 endef
 
 # With the musl C library, the libc.so library directly plays the role