summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGES47
-rw-r--r--Config.in.legacy32
-rw-r--r--Makefile2
-rw-r--r--arch/Config.in.arm6
-rw-r--r--boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch742
-rw-r--r--docs/manual/makedev-syntax.txt11
-rw-r--r--docs/website/contribute.html2
-rw-r--r--docs/website/docs.html2
-rw-r--r--docs/website/download.html24
-rw-r--r--docs/website/news.html32
-rw-r--r--fs/common.mk4
-rw-r--r--fs/iso9660/Config.in5
-rw-r--r--linux/linux.mk1
-rw-r--r--package/Config.in13
-rw-r--r--package/apitrace/apitrace.mk2
-rw-r--r--[-rwxr-xr-x]package/audit/0001-Missed-cross-compile-fixes.patch0
-rw-r--r--package/audit/Config.in7
-rw-r--r--package/avrdude/Config.in6
-rw-r--r--package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch48
-rw-r--r--package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch31
-rw-r--r--package/bcusdk/Config.in2
-rw-r--r--package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch61
-rw-r--r--package/beecrypt/Config.in6
-rw-r--r--package/beecrypt/beecrypt.mk1
-rw-r--r--package/boost/0004-fix-uclibc-eventfd.patch38
-rw-r--r--package/bootutils/0001-fix-musl-compilation-issue.patch31
-rw-r--r--package/busybox/Config.in1
-rw-r--r--package/bwm-ng/Config.in2
-rw-r--r--package/bwm-ng/bwm-ng.hash2
-rw-r--r--package/bwm-ng/bwm-ng.mk4
-rw-r--r--package/c-icap/Config.in4
-rw-r--r--package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch32
-rw-r--r--package/c-periphery/0002-Fix-build-on-SPARC.patch70
-rw-r--r--package/canfestival/canfestival.mk6
-rw-r--r--package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch47
-rw-r--r--package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch31
-rw-r--r--package/clapack/0006-remove-uninit-f2c.patch24
-rw-r--r--package/clapack/0007-off64-t.patch16
-rw-r--r--package/cpio/Config.in2
-rw-r--r--package/cpio/cpio.mk7
-rw-r--r--package/cppcms/cppcms.hash5
-rw-r--r--package/cppcms/cppcms.mk2
-rw-r--r--package/cramfs/0003-fix-missing-types.patch17
-rw-r--r--package/curlftpfs/0004-fix-musl-build-off-t.patch39
-rw-r--r--package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch206
-rw-r--r--package/czmq/czmq.mk2
-rw-r--r--package/dawgdic/Config.in6
-rw-r--r--package/dhcpdump/dhcpdump.mk3
-rw-r--r--package/dnsmasq/dnsmasq.hash2
-rw-r--r--package/dnsmasq/dnsmasq.mk2
-rw-r--r--package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch45
-rw-r--r--package/dropbear/S50dropbear14
-rw-r--r--package/dropbear/dropbear.mk2
-rw-r--r--package/dropbear/dropbear.service8
-rw-r--r--package/elfutils/Config.in7
-rw-r--r--package/empty/0002-fix-non-thread-build.patch49
-rw-r--r--package/erlang-p1-tls/Config.in1
-rw-r--r--package/erlang-p1-tls/erlang-p1-tls.mk1
-rw-r--r--package/eudev/0002-build-sys-check-for-mallinfo.patch93
-rw-r--r--package/eudev/0003-build-sys-check-for-strndupa.patch69
-rw-r--r--package/eudev/eudev.mk5
-rw-r--r--package/exfat/exfat.mk13
-rw-r--r--package/fan-ctrl/Config.in3
-rw-r--r--package/filemq/filemq.mk2
-rw-r--r--package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch12
-rw-r--r--package/gnuradio/0002-types_t-is-need-for-mode_t.patch19
-rw-r--r--package/gnutls/gnutls.hash2
-rw-r--r--package/gnutls/gnutls.mk2
-rw-r--r--package/gstreamer1/gst1-plugins-bad/Config.in20
-rw-r--r--package/guile/guile.mk4
-rw-r--r--package/haveged/haveged.mk4
-rw-r--r--package/imlib2/0007-fix-compilation-issues-with-musl.patch31
-rw-r--r--package/ipkg/0001-fix-musl-build.patch50
-rw-r--r--package/kexec-lite/Config.in6
-rw-r--r--package/kodi/Config.in4
-rw-r--r--package/libcec/Config.in6
-rw-r--r--package/libev/0001-fix-sparcv8-condition.patch29
-rw-r--r--package/libgpgme/libgpgme.mk2
-rw-r--r--package/libgudev/Config.in22
-rw-r--r--package/libgudev/libgudev.mk15
-rw-r--r--package/libiio/Config.in4
-rw-r--r--package/libmbim/Config.in1
-rw-r--r--package/libmbim/libmbim.mk4
-rw-r--r--package/libnetfilter_queue/0002-musl.patch45
-rw-r--r--package/libnfnetlink/0002-musl.patch32
-rw-r--r--package/libpfm4/libpfm4.mk5
-rw-r--r--package/libpthsem/libpthsem.mk14
-rw-r--r--package/librtas/Config.in1
-rw-r--r--package/libselinux/Config.in3
-rw-r--r--package/libsemanage/Config.in2
-rw-r--r--package/libsigsegv/Config.in6
-rw-r--r--package/libsodium/libsodium.mk4
-rw-r--r--package/libv4l/Config.in11
-rw-r--r--package/libwebsock/0003-fix-incorrect-inline.patch66
-rw-r--r--package/lightning/Config.in6
-rw-r--r--package/linux-pam/Config.in5
-rw-r--r--package/lirc-tools/Config.in6
-rw-r--r--package/lm-sensors/0003-musl-fix-includes.patch100
-rw-r--r--package/lrzsz/Config.in10
-rw-r--r--package/ltrace/Config.in6
-rw-r--r--package/ltrace/ltrace.mk3
-rw-r--r--package/mesa3d/Config.in14
-rw-r--r--package/mesa3d/mesa3d.mk5
-rw-r--r--package/midori/Config.in6
-rw-r--r--package/midori/midori.mk2
-rw-r--r--package/mono/0004-fixing-initialization-of-have-vasprintf.patch29
-rw-r--r--package/mono/Config.in6
-rw-r--r--package/mosh/Config.in9
-rw-r--r--package/mpd/0002-musl-gcc5-fixes.patch56
-rw-r--r--package/msmtp/msmtp.mk1
-rw-r--r--package/nbd/0001-avoid-name-clashing.patch28
-rw-r--r--package/netatalk/Config.in5
-rw-r--r--package/network-manager/Config.in1
-rw-r--r--package/network-manager/network-manager.mk4
-rw-r--r--package/nodejs/0.10.40/0005-fix-musl-USE-MISC-build-issue.patch47
-rw-r--r--package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch26
-rw-r--r--package/ola/Config.in6
-rw-r--r--package/opencv/0001-core-fix-x86-PIC-code-compilation.patch49
-rw-r--r--package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch40
-rw-r--r--package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch156
-rw-r--r--package/opencv/Config.in273
-rw-r--r--package/opencv/opencv.mk151
-rw-r--r--package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch (renamed from package/opencv/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch)0
-rw-r--r--package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch (renamed from package/opencv/0002-fix-support-for-pthreads-parallel_for.patch)0
-rw-r--r--package/opencv3/Config.in344
-rw-r--r--package/opencv3/opencv3.mk363
-rw-r--r--package/openssh/openssh.hash5
-rw-r--r--package/openssh/openssh.mk6
-rw-r--r--package/openvmtools/Config.in5
-rw-r--r--package/oprofile/oprofile.mk6
-rw-r--r--package/perl-file-listing/perl-file-listing.mk2
-rw-r--r--package/perl-http-cookies/Config.in1
-rw-r--r--package/perl-http-cookies/perl-http-cookies.mk2
-rw-r--r--package/perl-http-daemon/Config.in2
-rw-r--r--package/perl-http-daemon/perl-http-daemon.mk2
-rw-r--r--package/perl-http-negotiate/perl-http-negotiate.mk2
-rw-r--r--package/perl-www-robotrules/Config.in2
-rw-r--r--package/perl-www-robotrules/perl-www-robotrules.mk2
-rw-r--r--package/php/php.hash2
-rw-r--r--package/php/php.mk2
-rw-r--r--package/pkg-kconfig.mk12
-rw-r--r--package/pkg-kernel-module.mk4
-rw-r--r--package/poco/Config.in5
-rw-r--r--package/postgresql/0002-fix-sparc-compile.patch38
-rw-r--r--package/powertop/0003-add-missing-sys-time.h-header.patch35
-rw-r--r--package/powertop/0004-add-missing-stdio.h-header.patch35
-rw-r--r--package/protobuf-c/Config.in2
-rw-r--r--package/protobuf/Config.in6
-rw-r--r--package/python-can/python-can.mk1
-rw-r--r--package/python-pam/Config.in6
-rw-r--r--package/qt5/Config.in5
-rw-r--r--package/qt5/qt5base/0009-fix-build-with-ccache.patch49
-rw-r--r--package/qt5/qt5base/qt5base.mk12
-rw-r--r--package/qt5/qt5multimedia/qt5multimedia.mk5
-rw-r--r--package/qt5/qt5quickcontrols/qt5quickcontrols.mk4
-rw-r--r--package/racehound/Config.in6
-rw-r--r--package/rapidjson/rapidjson.mk2
-rw-r--r--package/rng-tools/Config.in2
-rw-r--r--package/rng-tools/rng-tools.mk5
-rw-r--r--package/rpi-firmware/config.txt2
-rw-r--r--package/rsh-redone/Config.in10
-rw-r--r--package/setools/Config.in10
-rw-r--r--package/squid/squid.mk2
-rw-r--r--package/sysdig/Config.in2
-rw-r--r--package/sysstat/sysstat.mk2
-rw-r--r--package/systemd/Config.in1
-rw-r--r--package/sysvinit/Config.in2
-rwxr-xr-xpackage/tftpd/S80tftpd-hpa4
-rw-r--r--package/tinc/tinc.mk6
-rw-r--r--package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch45
-rw-r--r--package/tn5250/tn5250.mk3
-rw-r--r--package/tvheadend/Config.in6
-rw-r--r--package/tz/tz.mk2
-rw-r--r--package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch35
-rw-r--r--package/util-linux/Config.in10
-rw-r--r--package/vlc/Config.in14
-rw-r--r--package/vlc/vlc.mk6
-rw-r--r--package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch46
-rw-r--r--package/webkitgtk24/Config.in11
-rw-r--r--package/weston/Config.in5
-rw-r--r--package/wireshark/wireshark.hash6
-rw-r--r--package/wireshark/wireshark.mk2
-rw-r--r--package/wvdial/Config.in5
-rw-r--r--package/wvstreams/Config.in6
-rw-r--r--package/x11r7/libepoxy/Config.in10
-rw-r--r--package/x11r7/libepoxy/libepoxy.mk7
-rw-r--r--package/x11r7/xdriver_xf86-input-synaptics/Config.in1
-rw-r--r--package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk2
-rw-r--r--package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch19
-rw-r--r--package/x11r7/xserver_xorg-server/Config.in2
-rw-r--r--package/x11r7/xserver_xorg-server/xserver_xorg-server.mk27
-rw-r--r--package/x264/x264.mk6
-rw-r--r--package/zyre/zyre.mk4
-rw-r--r--toolchain/helpers.mk16
194 files changed, 3998 insertions, 797 deletions
diff --git a/CHANGES b/CHANGES
index ee4aca1eb6..89df9a4a9d 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,50 @@
+2015.08, Released August 31st, 2015
+
+ Minor fixes.
+
+ OpenCV 3.x package renamed to opencv3. OpenCV 2.4.x
+ reintroduced as opencv.
+
+ Updated/fixed packages: bootutils, canfestival, cppcms,
+ curlftpfs, dhcpdump, dropbear, erlang-p1-tls, exfat, gnuradio,
+ ipkg, libgudev, libmbim, libwebsock, linux-pam, lm-sensors,
+ ltrace, midori, network-manager, openssh, perl-file-listing,
+ perl-http-cookies, perl-http-daemon, perl-http-negotiate,
+ perl-www-robotrules, python-can, qt5base, qt5multimedia,
+ setools, sysvinit, tinyalsa, tn5250, tvheadend, uboot, vlc,
+ x264, xserver_xorg-server, zyre
+
+2015.08-rc2, Released August, 24th 2015
+
+ Fixes all over the tree.
+
+ Toolchain: fix gcc build on NIOS-II.
+
+ Infrastructure: add <fs>_POST_GEN_HOOKS mechanism to fix
+ hybrid ISO image generation.
+
+ Architectures: add arm1136j-s variant.
+
+ Updated/fixed packages: apitrace, audit, bcusdk, bdwgc,
+ beecrypt, boost, bwm-ng, cdrkit, c-icap, cifs-utils, clapack,
+ c-periphery, cpio, cramfs, czmq, dawgdic, dnsmasq, dosfstools,
+ dropbear, elfutils, empty, eudev, fan-ctrl, filemq, gnutls,
+ guile, haveged, imlib2, libcec, libepoxy, libev, libgpgme,
+ libiio, libnetfilter_queue, libnfnetlink, libpfm4, libpthsem,
+ librtas, libselinux, libsigsegv, libsodium, libv4l, lightning,
+ linux, lirc-tools, lrzsz, mono, mosh, mpd, msmtp, nbd,
+ netatalk, nodejs, ola, opencv, oprofile, php, poco,
+ postgresql, powertop, protobuf, protobuf-c, qt5base,
+ qt5quickcontrols, rapidjson, rng-tools, squid, sysdig,
+ sysstat, tftpd, tinc, tz, util-linux, webkitgtk24, weston,
+ wireshark, wvstreams, xdriver_xf86-input-synaptics, zyre.
+
+ Issues resolved (http://bugs.uclibc.org):
+
+ #8276: package/dropbear: symlink resolution incorrect
+ #8286: Error with buildroot
+ #8301: ldconfig parameter in Makefile
+
2015.08-rc1, Released August, 5th 2015
Fixes all over the tree and new features.
diff --git a/Config.in.legacy b/Config.in.legacy
index 3b77b3488f..33305665d9 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -194,38 +194,6 @@ config BR2_TARGET_UBOOT_NETWORK
help
U-Boot's custom network settings options have been removed.
-config BR2_PACKAGE_OPENCV_LIB_CONTRIB
- bool "opencv contrib module no longer exists"
- select BR2_LEGACY
- help
- OpenCV >=3.0 does not come with in-tree contrib modules.
-
- They have been moved out of the OpenCV base tree, into the opencv_contrib
- repository:
- https://github.com/Itseez/opencv_contrib
-
-config BR2_PACKAGE_OPENCV_LIB_GPU
- bool "opencv gpu module no longer exists"
- select BR2_LEGACY
- help
- opencv_gpu module no longer exists as is in OpenCV >=3.0.
-
- It has been split into several modules prefixed with "cuda" that require
- Cuda programming toolkit, which is not available in Buildroot. So cuda
- modules are forcibly disabled in Buildroot.
-
-config BR2_PACKAGE_OPENCV_LIB_LEGACY
- bool "opencv legacy module no longer exists"
- select BR2_LEGACY
- help
- opencv_legacy module no longer exists in OpenCV >=3.0.
-
-config BR2_PACKAGE_OPENCV_LIB_NONFREE
- bool "opencv nonfree module no longer exists"
- select BR2_LEGACY
- help
- opencv_nonfree module no longer exists in OpenCV >=3.0.
-
###############################################################################
comment "Legacy options removed in 2015.05"
diff --git a/Makefile b/Makefile
index b4cef3f669..9a6e9c0a8e 100644
--- a/Makefile
+++ b/Makefile
@@ -41,7 +41,7 @@ else # umask
all:
# Set and export the version string
-export BR2_VERSION := 2015.08-rc1
+export BR2_VERSION := 2015.11-git
# Save running make version since it's clobbered by the make package
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
diff --git a/arch/Config.in.arm b/arch/Config.in.arm
index 9aa23a3d8d..4d10f4c498 100644
--- a/arch/Config.in.arm
+++ b/arch/Config.in.arm
@@ -78,6 +78,12 @@ config BR2_arm926t
select BR2_ARM_CPU_HAS_THUMB
select BR2_ARM_CPU_ARMV5
select BR2_ARCH_HAS_MMU_OPTIONAL
+config BR2_arm1136j_s
+ bool "arm1136j-s"
+ select BR2_ARM_CPU_HAS_ARM
+ select BR2_ARM_CPU_HAS_THUMB
+ select BR2_ARM_CPU_ARMV6
+ select BR2_ARCH_HAS_MMU_OPTIONAL
config BR2_arm1136jf_s
bool "arm1136jf-s"
select BR2_ARM_CPU_HAS_ARM
diff --git a/boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch b/boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch
new file mode 100644
index 0000000000..8b814f2d69
--- /dev/null
+++ b/boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch
@@ -0,0 +1,742 @@
+From ee11fed43e2bd029f71af1e72ab9bb5652f5fc54 Mon Sep 17 00:00:00 2001
+From: Alexey Brodkin <abrodkin@synopsys.com>
+Date: Wed, 29 Jul 2015 20:32:59 +0300
+Subject: [PATCH] Revert "arch: Make board selection choices optional"
+
+This reverts commit a26cd04920dc069fd6e91abb785426cf6c29f45f.
+
+Reverted commit caused an issue with "make oldconfig" - default prompt
+for target selection was set as No that lead to missing platform
+selection by automated scripts like that:
+------------------>8------------------
+"yes "" | make oldconfig" on defconfig
+------------------>8------------------
+
+And that lead to build failure:
+------------------>8------------------
+$ make
+scripts/kconfig/conf --silentoldconfig Kconfig
+ CHK include/config.h
+ UPD include/config.h
+ GEN include/autoconf.mk
+In file included from ./include/common.h:18:0:
+include/config.h:5:22: fatal error: configs/.h: No such file or directory
+ #include <configs/.h>
+ ^
+compilation terminated.
+scripts/Makefile.autoconf:72: recipe for target 'include/autoconf.mk' failed
+make[1]: *** [include/autoconf.mk] Error 1
+------------------>8------------------
+
+Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
+---
+ arch/arc/Kconfig | 1 -
+ arch/arm/Kconfig | 1 -
+ arch/arm/cpu/armv7/exynos/Kconfig | 1 -
+ arch/arm/cpu/armv7/mx5/Kconfig | 1 -
+ arch/arm/cpu/armv7/mx6/Kconfig | 1 -
+ arch/arm/cpu/armv7/omap3/Kconfig | 1 -
+ arch/arm/cpu/armv7/omap4/Kconfig | 1 -
+ arch/arm/cpu/armv7/omap5/Kconfig | 1 -
+ arch/arm/cpu/armv7/rmobile/Kconfig | 1 -
+ arch/arm/cpu/armv7/s5pc1xx/Kconfig | 1 -
+ arch/arm/mach-at91/Kconfig | 1 -
+ arch/arm/mach-bcm283x/Kconfig | 1 -
+ arch/arm/mach-davinci/Kconfig | 1 -
+ arch/arm/mach-integrator/Kconfig | 2 --
+ arch/arm/mach-keystone/Kconfig | 1 -
+ arch/arm/mach-kirkwood/Kconfig | 1 -
+ arch/arm/mach-nomadik/Kconfig | 1 -
+ arch/arm/mach-orion5x/Kconfig | 1 -
+ arch/arm/mach-socfpga/Kconfig | 1 -
+ arch/arm/mach-tegra/Kconfig | 1 -
+ arch/arm/mach-tegra/tegra114/Kconfig | 1 -
+ arch/arm/mach-tegra/tegra124/Kconfig | 1 -
+ arch/arm/mach-tegra/tegra20/Kconfig | 1 -
+ arch/arm/mach-tegra/tegra30/Kconfig | 1 -
+ arch/arm/mach-zynq/Kconfig | 1 -
+ arch/avr32/Kconfig | 1 -
+ arch/blackfin/Kconfig | 1 -
+ arch/m68k/Kconfig | 1 -
+ arch/microblaze/Kconfig | 1 -
+ arch/mips/Kconfig | 1 -
+ arch/nds32/Kconfig | 1 -
+ arch/nios2/Kconfig | 1 -
+ arch/openrisc/Kconfig | 1 -
+ arch/powerpc/Kconfig | 1 -
+ arch/powerpc/cpu/mpc512x/Kconfig | 1 -
+ arch/powerpc/cpu/mpc5xx/Kconfig | 1 -
+ arch/powerpc/cpu/mpc5xxx/Kconfig | 1 -
+ arch/powerpc/cpu/mpc8260/Kconfig | 1 -
+ arch/powerpc/cpu/mpc83xx/Kconfig | 1 -
+ arch/powerpc/cpu/mpc85xx/Kconfig | 1 -
+ arch/powerpc/cpu/mpc86xx/Kconfig | 1 -
+ arch/powerpc/cpu/mpc8xx/Kconfig | 1 -
+ arch/powerpc/cpu/ppc4xx/Kconfig | 1 -
+ arch/sh/Kconfig | 1 -
+ arch/sparc/Kconfig | 1 -
+ board/amcc/canyonlands/Kconfig | 1 -
+ board/coreboot/Kconfig | 1 -
+ board/dbau1x00/Kconfig | 1 -
+ board/google/Kconfig | 1 -
+ board/intel/Kconfig | 1 -
+ board/micronas/vct/Kconfig | 1 -
+ board/seco/Kconfig | 2 --
+ board/sunxi/Kconfig | 1 -
+ 53 files changed, 55 deletions(-)
+
+diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
+index 925e312..640cda8 100644
+--- a/arch/arc/Kconfig
++++ b/arch/arc/Kconfig
+@@ -129,7 +129,6 @@ config ARC_CACHE_LINE_SHIFT
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_TB100
+ bool "Support tb100"
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 9908b43..8eeb46c 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -64,7 +64,6 @@ config SEMIHOSTING
+
+ choice
+ prompt "Target select"
+- optional
+
+ config ARCH_AT91
+ bool "Atmel AT91"
+diff --git a/arch/arm/cpu/armv7/exynos/Kconfig b/arch/arm/cpu/armv7/exynos/Kconfig
+index 4a7d82f..f2fe748 100644
+--- a/arch/arm/cpu/armv7/exynos/Kconfig
++++ b/arch/arm/cpu/armv7/exynos/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_EXYNOS
+
+ choice
+ prompt "EXYNOS board select"
+- optional
+
+ config TARGET_SMDKV310
+ select SUPPORT_SPL
+diff --git a/arch/arm/cpu/armv7/mx5/Kconfig b/arch/arm/cpu/armv7/mx5/Kconfig
+index 9f250c6..2d6c0ce 100644
+--- a/arch/arm/cpu/armv7/mx5/Kconfig
++++ b/arch/arm/cpu/armv7/mx5/Kconfig
+@@ -12,7 +12,6 @@ config MX53
+
+ choice
+ prompt "MX5 board select"
+- optional
+
+ config TARGET_USBARMORY
+ bool "Support USB armory"
+diff --git a/arch/arm/cpu/armv7/mx6/Kconfig b/arch/arm/cpu/armv7/mx6/Kconfig
+index 10908c4..662596f 100644
+--- a/arch/arm/cpu/armv7/mx6/Kconfig
++++ b/arch/arm/cpu/armv7/mx6/Kconfig
+@@ -27,7 +27,6 @@ config MX6SX
+
+ choice
+ prompt "MX6 board select"
+- optional
+
+ config TARGET_SECOMX6
+ bool "Support secomx6 boards"
+diff --git a/arch/arm/cpu/armv7/omap3/Kconfig b/arch/arm/cpu/armv7/omap3/Kconfig
+index b32a6b0..cc82c50 100644
+--- a/arch/arm/cpu/armv7/omap3/Kconfig
++++ b/arch/arm/cpu/armv7/omap3/Kconfig
+@@ -2,7 +2,6 @@ if OMAP34XX
+
+ choice
+ prompt "OMAP3 board select"
+- optional
+
+ config TARGET_AM3517_EVM
+ bool "AM3517 EVM"
+diff --git a/arch/arm/cpu/armv7/omap4/Kconfig b/arch/arm/cpu/armv7/omap4/Kconfig
+index df27ea1..eccf897 100644
+--- a/arch/arm/cpu/armv7/omap4/Kconfig
++++ b/arch/arm/cpu/armv7/omap4/Kconfig
+@@ -2,7 +2,6 @@ if OMAP44XX
+
+ choice
+ prompt "OMAP4 board select"
+- optional
+
+ config TARGET_DUOVERO
+ bool "OMAP4430 Gumstix Duovero"
+diff --git a/arch/arm/cpu/armv7/omap5/Kconfig b/arch/arm/cpu/armv7/omap5/Kconfig
+index 20c3bd9..aca862d 100644
+--- a/arch/arm/cpu/armv7/omap5/Kconfig
++++ b/arch/arm/cpu/armv7/omap5/Kconfig
+@@ -2,7 +2,6 @@ if OMAP54XX
+
+ choice
+ prompt "OMAP5 board select"
+- optional
+
+ config TARGET_CM_T54
+ bool "CompuLab CM-T54"
+diff --git a/arch/arm/cpu/armv7/rmobile/Kconfig b/arch/arm/cpu/armv7/rmobile/Kconfig
+index ef56286..638b63d 100644
+--- a/arch/arm/cpu/armv7/rmobile/Kconfig
++++ b/arch/arm/cpu/armv7/rmobile/Kconfig
+@@ -2,7 +2,6 @@ if RMOBILE
+
+ choice
+ prompt "Renesus ARM SoCs board select"
+- optional
+
+ config TARGET_ARMADILLO_800EVA
+ bool "armadillo 800 eva board"
+diff --git a/arch/arm/cpu/armv7/s5pc1xx/Kconfig b/arch/arm/cpu/armv7/s5pc1xx/Kconfig
+index 792ef59..65cc9eb 100644
+--- a/arch/arm/cpu/armv7/s5pc1xx/Kconfig
++++ b/arch/arm/cpu/armv7/s5pc1xx/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_S5PC1XX
+
+ choice
+ prompt "S5PC1XX board select"
+- optional
+
+ config TARGET_S5P_GONI
+ bool "S5P Goni board"
+diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig
+index bbf4228..5dc2cb2 100644
+--- a/arch/arm/mach-at91/Kconfig
++++ b/arch/arm/mach-at91/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_AT91
+
+ choice
+ prompt "Atmel AT91 board select"
+- optional
+
+ config TARGET_AT91RM9200EK
+ bool "Atmel AT91RM9200 evaluation kit"
+diff --git a/arch/arm/mach-bcm283x/Kconfig b/arch/arm/mach-bcm283x/Kconfig
+index 2315a13..d40f505 100644
+--- a/arch/arm/mach-bcm283x/Kconfig
++++ b/arch/arm/mach-bcm283x/Kconfig
+@@ -3,7 +3,6 @@ menu "Broadcom BCM283X family"
+
+ choice
+ prompt "Broadcom BCM283X board select"
+- optional
+
+ config TARGET_RPI
+ bool "Raspberry Pi"
+diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig
+index e6cb390..3ef55d3 100644
+--- a/arch/arm/mach-davinci/Kconfig
++++ b/arch/arm/mach-davinci/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_DAVINCI
+
+ choice
+ prompt "DaVinci board select"
+- optional
+
+ config TARGET_ENBW_CMC
+ bool "EnBW CMC board"
+diff --git a/arch/arm/mach-integrator/Kconfig b/arch/arm/mach-integrator/Kconfig
+index c54d69d..8ffc544 100644
+--- a/arch/arm/mach-integrator/Kconfig
++++ b/arch/arm/mach-integrator/Kconfig
+@@ -3,7 +3,6 @@ menu "Integrator Options"
+
+ choice
+ prompt "Integrator platform select"
+- optional
+
+ config ARCH_INTEGRATOR_AP
+ bool "Support Integrator/AP platform"
+@@ -19,7 +18,6 @@ config ARCH_CINTEGRATOR
+
+ choice
+ prompt "Integrator core module select"
+- optional
+
+ config CM720T
+ bool "Core Module for ARM720T"
+diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig
+index 67f1a33..134ae87 100644
+--- a/arch/arm/mach-keystone/Kconfig
++++ b/arch/arm/mach-keystone/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_KEYSTONE
+
+ choice
+ prompt "TI Keystone board select"
+- optional
+
+ config TARGET_K2HK_EVM
+ bool "TI Keystone 2 Kepler/Hawking EVM"
+diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig
+index 1261885..45c6687 100644
+--- a/arch/arm/mach-kirkwood/Kconfig
++++ b/arch/arm/mach-kirkwood/Kconfig
+@@ -2,7 +2,6 @@ if KIRKWOOD
+
+ choice
+ prompt "Marvell Kirkwood board select"
+- optional
+
+ config TARGET_OPENRD
+ bool "Marvell OpenRD Board"
+diff --git a/arch/arm/mach-nomadik/Kconfig b/arch/arm/mach-nomadik/Kconfig
+index ba72a41..265f336 100644
+--- a/arch/arm/mach-nomadik/Kconfig
++++ b/arch/arm/mach-nomadik/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_NOMADIK
+
+ choice
+ prompt "Nomadik board select"
+- optional
+
+ config NOMADIK_NHK8815
+ bool "ST 8815 Nomadik Hardware Kit"
+diff --git a/arch/arm/mach-orion5x/Kconfig b/arch/arm/mach-orion5x/Kconfig
+index 7644b8d..291c511 100644
+--- a/arch/arm/mach-orion5x/Kconfig
++++ b/arch/arm/mach-orion5x/Kconfig
+@@ -2,7 +2,6 @@ if ORION5X
+
+ choice
+ prompt "Marvell Orion board select"
+- optional
+
+ config TARGET_EDMINIV2
+ bool "LaCie Ethernet Disk mini V2"
+diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig
+index e46c348..204efca 100644
+--- a/arch/arm/mach-socfpga/Kconfig
++++ b/arch/arm/mach-socfpga/Kconfig
+@@ -2,7 +2,6 @@ if ARCH_SOCFPGA
+
+ choice
+ prompt "Altera SOCFPGA board select"
+- optional
+
+ config TARGET_SOCFPGA_ARRIA5
+ bool "Altera SOCFPGA Arria V"
+diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
+index 54bd648..ef77c84 100644
+--- a/arch/arm/mach-tegra/Kconfig
++++ b/arch/arm/mach-tegra/Kconfig
+@@ -2,7 +2,6 @@ if TEGRA
+
+ choice
+ prompt "Tegra SoC select"
+- optional
+
+ config TEGRA20
+ bool "Tegra20 family"
+diff --git a/arch/arm/mach-tegra/tegra114/Kconfig b/arch/arm/mach-tegra/tegra114/Kconfig
+index 1047b92..31012bc 100644
+--- a/arch/arm/mach-tegra/tegra114/Kconfig
++++ b/arch/arm/mach-tegra/tegra114/Kconfig
+@@ -2,7 +2,6 @@ if TEGRA114
+
+ choice
+ prompt "Tegra114 board select"
+- optional
+
+ config TARGET_DALMORE
+ bool "NVIDIA Tegra114 Dalmore evaluation board"
+diff --git a/arch/arm/mach-tegra/tegra124/Kconfig b/arch/arm/mach-tegra/tegra124/Kconfig
+index f3324ff..86c1301 100644
+--- a/arch/arm/mach-tegra/tegra124/Kconfig
++++ b/arch/arm/mach-tegra/tegra124/Kconfig
+@@ -2,7 +2,6 @@ if TEGRA124
+
+ choice
+ prompt "Tegra124 board select"
+- optional
+
+ config TARGET_JETSON_TK1
+ bool "NVIDIA Tegra124 Jetson TK1 board"
+diff --git a/arch/arm/mach-tegra/tegra20/Kconfig b/arch/arm/mach-tegra/tegra20/Kconfig
+index 1bb8dff..7f09f81 100644
+--- a/arch/arm/mach-tegra/tegra20/Kconfig
++++ b/arch/arm/mach-tegra/tegra20/Kconfig
+@@ -2,7 +2,6 @@ if TEGRA20
+
+ choice
+ prompt "Tegra20 board select"
+- optional
+
+ config TARGET_HARMONY
+ bool "NVIDIA Tegra20 Harmony evaluation board"
+diff --git a/arch/arm/mach-tegra/tegra30/Kconfig b/arch/arm/mach-tegra/tegra30/Kconfig
+index e78331e..3abdc7b 100644
+--- a/arch/arm/mach-tegra/tegra30/Kconfig
++++ b/arch/arm/mach-tegra/tegra30/Kconfig
+@@ -2,7 +2,6 @@ if TEGRA30
+
+ choice
+ prompt "Tegra30 board select"
+- optional
+
+ config TARGET_APALIS_T30
+ bool "Toradex Apalis T30 board"
+diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig
+index 1de5b07..6b0e295 100644
+--- a/arch/arm/mach-zynq/Kconfig
++++ b/arch/arm/mach-zynq/Kconfig
+@@ -10,7 +10,6 @@ config ZYNQ_CUSTOM_INIT
+
+ choice
+ prompt "Xilinx Zynq board select"
+- optional
+
+ config TARGET_ZYNQ_ZED
+ bool "Zynq ZedBoard"
+diff --git a/arch/avr32/Kconfig b/arch/avr32/Kconfig
+index eb33774..801b9cc 100644
+--- a/arch/avr32/Kconfig
++++ b/arch/avr32/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_ATNGW100
+ bool "Support atngw100"
+diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig
+index 0a2fb4d..31913fe 100644
+--- a/arch/blackfin/Kconfig
++++ b/arch/blackfin/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_BCT_BRETTL2
+ bool "Support bct-brettl2"
+diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
+index 26509b7..69cb0f7 100644
+--- a/arch/m68k/Kconfig
++++ b/arch/m68k/Kconfig
+@@ -114,7 +114,6 @@ config M548x
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_M52277EVB
+ bool "Support M52277EVB"
+diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
+index 077b2a7..6f419f0 100644
+--- a/arch/microblaze/Kconfig
++++ b/arch/microblaze/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_MICROBLAZE_GENERIC
+ bool "Support microblaze-generic"
+diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
+index 7f7e258..87b94ac 100644
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -10,7 +10,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_QEMU_MIPS
+ bool "Support qemu-mips"
+diff --git a/arch/nds32/Kconfig b/arch/nds32/Kconfig
+index 98b0282..81b0a01 100644
+--- a/arch/nds32/Kconfig
++++ b/arch/nds32/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_ADP_AG101
+ bool "Support adp-ag101"
+diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig
+index 8ae7f6e..b3be7b5 100644
+--- a/arch/nios2/Kconfig
++++ b/arch/nios2/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_NIOS2_GENERIC
+ bool "Support nios2-generic"
+diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
+index 11014d1..4d62b4c 100644
+--- a/arch/openrisc/Kconfig
++++ b/arch/openrisc/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_OPENRISC_GENERIC
+ bool "Support openrisc-generic"
+diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
+index 3b3f446..8e5a3e2 100644
+--- a/arch/powerpc/Kconfig
++++ b/arch/powerpc/Kconfig
+@@ -6,7 +6,6 @@ config SYS_ARCH
+
+ choice
+ prompt "CPU select"
+- optional
+
+ config MPC512X
+ bool "MPC512X"
+diff --git a/arch/powerpc/cpu/mpc512x/Kconfig b/arch/powerpc/cpu/mpc512x/Kconfig
+index 53450ae..a0f0ede 100644
+--- a/arch/powerpc/cpu/mpc512x/Kconfig
++++ b/arch/powerpc/cpu/mpc512x/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_PDM360NG
+ bool "Support pdm360ng"
+diff --git a/arch/powerpc/cpu/mpc5xx/Kconfig b/arch/powerpc/cpu/mpc5xx/Kconfig
+index 5275447..aad4a7c 100644
+--- a/arch/powerpc/cpu/mpc5xx/Kconfig
++++ b/arch/powerpc/cpu/mpc5xx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_CMI_MPC5XX
+ bool "Support cmi_mpc5xx"
+diff --git a/arch/powerpc/cpu/mpc5xxx/Kconfig b/arch/powerpc/cpu/mpc5xxx/Kconfig
+index 5d49228..eec9d7d 100644
+--- a/arch/powerpc/cpu/mpc5xxx/Kconfig
++++ b/arch/powerpc/cpu/mpc5xxx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_A3M071
+ bool "Support a3m071"
+diff --git a/arch/powerpc/cpu/mpc8260/Kconfig b/arch/powerpc/cpu/mpc8260/Kconfig
+index e93732d..55941c8 100644
+--- a/arch/powerpc/cpu/mpc8260/Kconfig
++++ b/arch/powerpc/cpu/mpc8260/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_KM82XX
+ bool "Support km82xx"
+diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig
+index 3fb901f..88a3bd6 100644
+--- a/arch/powerpc/cpu/mpc83xx/Kconfig
++++ b/arch/powerpc/cpu/mpc83xx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_MPC8308_P1M
+ bool "Support mpc8308_p1m"
+diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig
+index 3e8d0b1..aff5fdb 100644
+--- a/arch/powerpc/cpu/mpc85xx/Kconfig
++++ b/arch/powerpc/cpu/mpc85xx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_SBC8548
+ bool "Support sbc8548"
+diff --git a/arch/powerpc/cpu/mpc86xx/Kconfig b/arch/powerpc/cpu/mpc86xx/Kconfig
+index fe1859d..14e8b1a 100644
+--- a/arch/powerpc/cpu/mpc86xx/Kconfig
++++ b/arch/powerpc/cpu/mpc86xx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_SBC8641D
+ bool "Support sbc8641d"
+diff --git a/arch/powerpc/cpu/mpc8xx/Kconfig b/arch/powerpc/cpu/mpc8xx/Kconfig
+index 79cee35..e8bcbe9 100644
+--- a/arch/powerpc/cpu/mpc8xx/Kconfig
++++ b/arch/powerpc/cpu/mpc8xx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_TQM823L
+ bool "Support TQM823L"
+diff --git a/arch/powerpc/cpu/ppc4xx/Kconfig b/arch/powerpc/cpu/ppc4xx/Kconfig
+index 10b86e0..4d5954a 100644
+--- a/arch/powerpc/cpu/ppc4xx/Kconfig
++++ b/arch/powerpc/cpu/ppc4xx/Kconfig
+@@ -6,7 +6,6 @@ config SYS_CPU
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_CSB272
+ bool "Support csb272"
+diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
+index 6ac22af..ff8f5b5 100644
+--- a/arch/sh/Kconfig
++++ b/arch/sh/Kconfig
+@@ -29,7 +29,6 @@ config SH_32BIT
+
+ choice
+ prompt "Target select"
+- optional
+
+ config TARGET_RSK7203
+ bool "RSK+ 7203"
+diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
+index 04dc08f..2df09b2 100644
+--- a/arch/sparc/Kconfig
++++ b/arch/sparc/Kconfig
+@@ -14,7 +14,6 @@ config LEON3
+
+ choice
+ prompt "Board select"
+- optional
+
+ config TARGET_GRSIM_LEON2
+ bool "GRSIM simulating a LEON2 board"
+diff --git a/board/amcc/canyonlands/Kconfig b/board/amcc/canyonlands/Kconfig
+index a655dbc..ef66ad4 100644
+--- a/board/amcc/canyonlands/Kconfig
++++ b/board/amcc/canyonlands/Kconfig
+@@ -11,7 +11,6 @@ config SYS_CONFIG_NAME
+
+ choice BOARD_TYPE
+ prompt "Select which board to build for"
+- optional
+
+ config CANYONLANDS
+ bool "Glacier"
+diff --git a/board/coreboot/Kconfig b/board/coreboot/Kconfig
+index ede6065..dc9b70f 100644
+--- a/board/coreboot/Kconfig
++++ b/board/coreboot/Kconfig
+@@ -8,7 +8,6 @@ if VENDOR_COREBOOT
+
+ choice
+ prompt "Mainboard model"
+- optional
+
+ config TARGET_COREBOOT
+ bool "coreboot"
+diff --git a/board/dbau1x00/Kconfig b/board/dbau1x00/Kconfig
+index b813adb..1286e45 100644
+--- a/board/dbau1x00/Kconfig
++++ b/board/dbau1x00/Kconfig
+@@ -13,7 +13,6 @@ menu "dbau1x00 board options"
+
+ choice
+ prompt "Select au1x00 SoC type"
+- optional
+
+ config DBAU1100
+ bool "Select AU1100"
+diff --git a/board/google/Kconfig b/board/google/Kconfig
+index e9559c9..302f68e 100644
+--- a/board/google/Kconfig
++++ b/board/google/Kconfig
+@@ -8,7 +8,6 @@ if VENDOR_GOOGLE
+
+ choice
+ prompt "Mainboard model"
+- optional
+
+ config TARGET_CHROMEBOOK_LINK
+ bool "Chromebook link"
+diff --git a/board/intel/Kconfig b/board/intel/Kconfig
+index 3d9ecf0..7fe21b9 100644
+--- a/board/intel/Kconfig
++++ b/board/intel/Kconfig
+@@ -8,7 +8,6 @@ if VENDOR_INTEL
+
+ choice
+ prompt "Mainboard model"
+- optional
+
+ config TARGET_CROWNBAY
+ bool "Crown Bay"
+diff --git a/board/micronas/vct/Kconfig b/board/micronas/vct/Kconfig
+index c518079..288a1ae 100644
+--- a/board/micronas/vct/Kconfig
++++ b/board/micronas/vct/Kconfig
+@@ -13,7 +13,6 @@ menu "vct board options"
+
+ choice
+ prompt "Board variant"
+- optional
+
+ config VCT_PLATINUM
+ bool "Enable VCT_PLATINUM"
+diff --git a/board/seco/Kconfig b/board/seco/Kconfig
+index af16697..dcb1ac8 100644
+--- a/board/seco/Kconfig
++++ b/board/seco/Kconfig
+@@ -2,7 +2,6 @@ if TARGET_SECOMX6
+
+ choice
+ prompt "SECO i.MX6 Board variant"
+- optional
+
+ config SECOMX6_Q7
+ bool "Q7"
+@@ -17,7 +16,6 @@ endchoice
+
+ choice
+ prompt "SECO i.MX6 SoC variant"
+- optional
+
+ config SECOMX6Q
+ bool "i.MX6Q"
+diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
+index 2a1cd3c..808de26 100644
+--- a/board/sunxi/Kconfig
++++ b/board/sunxi/Kconfig
+@@ -18,7 +18,6 @@ config SUNXI_GEN_SUN6I
+
+ choice
+ prompt "Sunxi SoC Variant"
+- optional
+
+ config MACH_SUN4I
+ bool "sun4i (Allwinner A10)"
+--
+2.4.3
+
diff --git a/docs/manual/makedev-syntax.txt b/docs/manual/makedev-syntax.txt
index 283119d574..cae37f77d3 100644
--- a/docs/manual/makedev-syntax.txt
+++ b/docs/manual/makedev-syntax.txt
@@ -28,8 +28,9 @@ There are a few non-trivial blocks:
* c: a character device file
* b: a block device file
* p: a named pipe
-- +mode+, +uid+ and +gid+ are the usual permissions settings
-- +major+ and +minor+ are here for device files - set to - for other
+- +mode+, +uid+ and +gid+ are the usual permissions settings (only
+ numerical values are allowed)
+- +major+ and +minor+ are here for device files, set to +-+ for other
files
- +start+, +inc+ and +count+ are for when you want to create a batch
of files, and can be reduced to a loop, beginning at +start+,
@@ -43,10 +44,12 @@ this syntax, you will need to put:
----
Alternatively, if you want to change owner/permission of a directory
-recursively, you can put:
+recursively, you can put (to set UID to 123, GID to 456 and access
+rights to rwxr-x--- for the directory /usr/share/myapp and all files
+and directories below it):
----
-/usr/share/myapp r 750 myuser myuser - - - - -
+/usr/share/myapp r 750 123 456 - - - - -
----
On the other hand, if you want to create the device file +/dev/hda+
diff --git a/docs/website/contribute.html b/docs/website/contribute.html
index 17ed26fffd..c68a8a7653 100644
--- a/docs/website/contribute.html
+++ b/docs/website/contribute.html
@@ -26,7 +26,7 @@ There are many different ways to contribute:</p>
</ul>
<p>For more details on these topics, check out the
-<a href="http://buildroot.uclibc.org/downloads/manual/manual.html#_contributing_to_buildroot">
+<a href="http://buildroot.org/manual.html#_contributing_to_buildroot">
Contributing to buildroot</a> chapter in the Buildroot manual. Thanks for your help!</p>
<p>If you need any support yourself, have a look at <a href="./support.html">
diff --git a/docs/website/docs.html b/docs/website/docs.html
index 3bd31723ab..6edc989cf6 100644
--- a/docs/website/docs.html
+++ b/docs/website/docs.html
@@ -11,7 +11,7 @@ things. It is available as:</p>
<h4>Latest stable release</h4>
<ul>
- <li><a href="/downloads/manual/manual.html">Online HTML</a></li>
+ <li><a href="/manual.html">Online HTML</a></li>
<li><a href="/downloads/manual/manual.pdf">PDF document</a></li>
<li><a href="/downloads/manual/manual.text">ASCII text</a></li>
</ul>
diff --git a/docs/website/download.html b/docs/website/download.html
index aa4d731f69..ef87b1c8b7 100644
--- a/docs/website/download.html
+++ b/docs/website/download.html
@@ -7,26 +7,26 @@
<p>
-The latest stable release is <b>2015.05</b>, which can be downloaded
+The latest stable release is <b>2015.08</b>, which can be downloaded
here:<p>
-<a href="/downloads/buildroot-2015.05.tar.gz">buildroot-2015.05.tar.gz</a>
-(<a href="/downloads/buildroot-2015.05.tar.gz.sign">PGP signature</a>)
+<a href="/downloads/buildroot-2015.08.tar.gz">buildroot-2015.08.tar.gz</a>
+(<a href="/downloads/buildroot-2015.08.tar.gz.sign">PGP signature</a>)
or
-<a href="/downloads/buildroot-2015.05.tar.bz2">buildroot-2015.05.tar.bz2</a>
-(<a href="/downloads/buildroot-2015.05.tar.bz2.sign">PGP signature</a>).
-
+<a href="/downloads/buildroot-2015.08.tar.bz2">buildroot-2015.08.tar.bz2</a>
+(<a href="/downloads/buildroot-2015.08.tar.bz2.sign">PGP signature</a>).
+<!--
<p>
-The latest release candidate is <b>2015.08-rc1</b>, which can be
+The latest release candidate is <b>2015.08-rc2</b>, which can be
downloaded here:<p>
-<a href="/downloads/buildroot-2015.08-rc1.tar.gz">buildroot-2015.08-rc1.tar.gz</a>
-(<a href="/downloads/buildroot-2015.08-rc1.tar.gz.sign">PGP signature</a>)
+<a href="/downloads/buildroot-2015.08-rc2.tar.gz">buildroot-2015.08-rc1.tar.gz</a>
+(<a href="/downloads/buildroot-2015.08-rc2.tar.gz.sign">PGP signature</a>)
or
-<a href="/downloads/buildroot-2015.08-rc1.tar.bz2">buildroot-2015.08-rc1.tar.bz2</a>
-(<a href="/downloads/buildroot-2015.08-rc1.tar.bz2.sign">PGP signature</a>).
+<a href="/downloads/buildroot-2015.08-rc2.tar.bz2">buildroot-2015.08-rc1.tar.bz2</a>
+(<a href="/downloads/buildroot-2015.08-rc2.tar.bz2.sign">PGP signature</a>).
<p>
-
+-->
This and earlier releases (and their PGP signatures) can always be downloaded from
<a href="/downloads/">http://buildroot.net/downloads/</a>.
diff --git a/docs/website/news.html b/docs/website/news.html
index 66edf07aab..5511d8a642 100644
--- a/docs/website/news.html
+++ b/docs/website/news.html
@@ -8,12 +8,38 @@
<p>
<ul>
+ <li><b>31 August 2015 -- 2015.08 released</b>
+
+ <p>The stable 2015.08 release is out - Thanks to everyone
+ contributing and testing the release candidates. See the
+ <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2015.08">CHANGES</a>
+ file for more details, read the
+ <a href="http://lists.buildroot.org/pipermail/buildroot/2015-August/138336.html">announcement</a>
+ and go to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2015.08.tar.bz2">2015.08 release</a>.</p>
+
+ <li><b>24 August 2015 -- 2015.08-rc2 released</b>
+
+ <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=2015.08-rc2">CHANGES</a>
+ file for details, and
+ the <a href="http://lists.busybox.net/pipermail/buildroot/2015-August/137879.html">release
+ announcement</a>.</p>
+
+ <p>Head to the <a href="/downloads/">downloads page</a> to pick up the
+ <a href="/downloads/buildroot-2015.08-rc2.tar.bz2">2015.08-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>
+
<li><b>5 August 2015 -- 2015.08-rc1 released</b>
<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=2015.08-rc1">CHANGES</a>
- file for details.</p>
+ tree, see
+ the <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2015.08-rc1">CHANGES</a>
+ file for details, read
+ the <a href="http://lists.busybox.net/pipermail/buildroot/2015-August/135417.html">announcement</a>.</p>
<p>Head to the <a href="/downloads/">downloads page</a> to pick up the
<a href="/downloads/buildroot-2015.08-rc1.tar.bz2">2015.08-rc1
diff --git a/fs/common.mk b/fs/common.mk
index ad1bcf3034..528e194455 100644
--- a/fs/common.mk
+++ b/fs/common.mk
@@ -16,6 +16,9 @@
# ROOTFS_$(FSTYPE)_PRE_GEN_HOOKS, a list of hooks to call before
# generating the filesystem image
#
+# ROOTFS_$(FSTYPE)_POST_GEN_HOOKS, a list of hooks to call after
+# generating the filesystem image
+#
# ROOTFS_$(FSTYPE)_POST_TARGETS, the list of targets that should be
# run after running the main filesystem target. This is useful for
# initramfs, to rebuild the kernel once the initramfs is generated.
@@ -96,6 +99,7 @@ endif
ifneq ($$(ROOTFS_$(2)_COMPRESS_CMD),)
PATH=$$(BR_PATH) $$(ROOTFS_$(2)_COMPRESS_CMD) $$@ > $$@$$(ROOTFS_$(2)_COMPRESS_EXT)
endif
+ $$(foreach hook,$$(ROOTFS_$(2)_POST_GEN_HOOKS),$$(call $$(hook))$$(sep))
rootfs-$(1)-show-depends:
@echo $$(ROOTFS_$(2)_DEPENDENCIES)
diff --git a/fs/iso9660/Config.in b/fs/iso9660/Config.in
index 7e1ddd64ff..2482e44e31 100644
--- a/fs/iso9660/Config.in
+++ b/fs/iso9660/Config.in
@@ -47,13 +47,14 @@ config BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
endchoice
config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU
- string "Boot menu.lst file"
+ string "Boot menu config file"
default "fs/iso9660/menu.lst" if BR2_TARGET_ROOTFS_ISO9660_GRUB
default "fs/iso9660/grub.cfg" if BR2_TARGET_ROOTFS_ISO9660_GRUB2
default "fs/iso9660/isolinux.cfg" if BR2_TARGET_ROOTFS_ISO9660_ISOLINUX
help
Use this option to provide a custom bootloader configuration
- file (menu.lst for Grub, isolinux.cfg for isolinux).
+ file (menu.lst for Grub, grub.cfg for Grub 2, isolinux.cfg for
+ isolinux).
Note that the strings __KERNEL_PATH__ and __INITRD_PATH__
will automatically be replaced by the path to the kernel and
diff --git a/linux/linux.mk b/linux/linux.mk
index d91dbb2df4..48f9c740f4 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -215,6 +215,7 @@ define LINUX_KCONFIG_FIXUP_CMDS
$(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER,$(@D)/.config)
$(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_XTABLES,$(@D)/.config))
$(if $(BR2_PACKAGE_XTABLES_ADDONS),
+ $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_ADVANCED,$(@D)/.config)
$(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK,$(@D)/.config)
$(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK_MARK,$(@D)/.config))
$(if $(BR2_LINUX_KERNEL_APPENDED_DTB),
diff --git a/package/Config.in b/package/Config.in
index 914b83833d..6ba21a1aac 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -835,6 +835,7 @@ menu "Graphics"
source "package/libvips/Config.in"
source "package/menu-cache/Config.in"
source "package/opencv/Config.in"
+ source "package/opencv3/Config.in"
source "package/opengl/Config.in"
source "package/openjpeg/Config.in"
source "package/pango/Config.in"
@@ -861,6 +862,7 @@ menu "Hardware handling"
source "package/libfreefare/Config.in"
source "package/libftdi/Config.in"
source "package/libftdi1/Config.in"
+ source "package/libgudev/Config.in"
source "package/libhid/Config.in"
source "package/libiio/Config.in"
source "package/libinput/Config.in"
@@ -1394,6 +1396,17 @@ endif
endmenu
menu "Package managers"
+comment "-------------------------------------------------------"
+comment "Please note: "
+comment "- Buildroot does *not* generate binary packages, "
+comment "- Buildroot does *not* install any package database. "
+comment "* "
+comment "It is up to you to provide those by yourself if you "
+comment "want to use any of those package managers. "
+comment "* "
+comment "See the manual: "
+comment "http://buildroot.org/manual.html#faq-no-binary-packages"
+comment "-------------------------------------------------------"
source "package/ipkg/Config.in"
source "package/opkg/Config.in"
if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
diff --git a/package/apitrace/apitrace.mk b/package/apitrace/apitrace.mk
index b16436712e..28a40e4e20 100644
--- a/package/apitrace/apitrace.mk
+++ b/package/apitrace/apitrace.mk
@@ -4,7 +4,7 @@
#
################################################################################
-APITRACE_VERSION = c181b7fbf4b1c3912424761fec8ac7124640543a
+APITRACE_VERSION = 7.0
APITRACE_SITE = $(call github,apitrace,apitrace,$(APITRACE_VERSION))
APITRACE_LICENSE = MIT
APITRACE_LICENSE_FILES = LICENSE
diff --git a/package/audit/0001-Missed-cross-compile-fixes.patch b/package/audit/0001-Missed-cross-compile-fixes.patch
index a52d0cdcd5..a52d0cdcd5 100755..100644
--- a/package/audit/0001-Missed-cross-compile-fixes.patch
+++ b/package/audit/0001-Missed-cross-compile-fixes.patch
diff --git a/package/audit/Config.in b/package/audit/Config.in
index a973e20854..717c364fd5 100644
--- a/package/audit/Config.in
+++ b/package/audit/Config.in
@@ -8,6 +8,8 @@ config BR2_PACKAGE_AUDIT
bool "audit"
depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_STATIC_LIBS
+ depends on !BR2_TOOLCHAIN_USES_MUSL
help
The audit package contains the user space utilities for
storing and searching the audit records generated by
@@ -17,6 +19,7 @@ config BR2_PACKAGE_AUDIT
http://people.redhat.com/sgrubb/audit/
-comment "audit needs a toolchain w/ threads"
- depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "audit needs a uClibc or (e)glibc toolchain w/ threads, dynamic library"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
+ || BR2_TOOLCHAIN_USES_MUSL
depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS
diff --git a/package/avrdude/Config.in b/package/avrdude/Config.in
index dc842371ac..460f155086 100644
--- a/package/avrdude/Config.in
+++ b/package/avrdude/Config.in
@@ -8,12 +8,14 @@ config BR2_PACKAGE_AVRDUDE
depends on BR2_USE_WCHAR # elfutils
depends on !BR2_STATIC_LIBS # elfutils
depends on !BR2_bfin # elfutils
+ depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
help
avrdude is a programmer for Atmel AVR microcontrollers
this package provides a version with new linuxspi driver
https://github.com/kcuzner/avrdude
-comment "avrdude needs a toolchain w/ threads, wchar, dynamic library"
- depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS
+comment "avrdude needs a uclibc or (e)glibc toolchain w/ threads, wchar, dynamic library"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS \
+ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
depends on !BR2_bfin
diff --git a/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch b/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch
new file mode 100644
index 0000000000..fc64386ca6
--- /dev/null
+++ b/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch
@@ -0,0 +1,48 @@
+From c36db3f798bf576f42d81a0c51198b17d7112e8c Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 8 Aug 2015 17:43:28 +0200
+Subject: [PATCH] Do not use the non-standard <sys/cdefs.h> header
+
+<sys/cdefs.h> is glibc-specific, and should be used only internally by
+glibc, not by external libraries/programs. It is not available in all
+standard C libraries.
+
+Submitted upstream: https://sourceforge.net/p/bcusdk/patches/3/
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ eibd/include/eibclient.h | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/eibd/include/eibclient.h b/eibd/include/eibclient.h
+index 2781878..b095a1c 100644
+--- a/eibd/include/eibclient.h
++++ b/eibd/include/eibclient.h
+@@ -27,10 +27,11 @@
+ #ifndef EIBCLIENT_H
+ #define EIBCLIENT_H
+
+-#include <sys/cdefs.h>
+ #include <stdint.h>
+
+-__BEGIN_DECLS;
++#ifdef __cplusplus
++extern "C" {
++#endif
+
+ #include "eibloadresult.h"
+
+@@ -889,5 +890,9 @@ int EIB_Cache_LastUpdates_async (EIBConnection * con, uint16_t start,
+ uint16_t * end);
+
+
+-__END_DECLS
++
++#ifdef __cplusplus
++}
++#endif
++
+ #endif
+--
+2.5.0
+
diff --git a/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch b/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch
new file mode 100644
index 0000000000..723de5c1a2
--- /dev/null
+++ b/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch
@@ -0,0 +1,31 @@
+From 2541ee3d709803096b17e45610ccc1404e2e5eee Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 8 Aug 2015 17:46:34 +0200
+Subject: [PATCH] fd_set requires inclusion of <sys/select.h>
+
+According to POSIX.1-2001, the definition fd_set and related macros is
+in <sys/select.h>, so it should be included in files using fd_set to
+make the code compatible with all standard C libraries.
+
+Submitted upstream: https://sourceforge.net/p/bcusdk/patches/3/
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ eibd/examples/common.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/eibd/examples/common.h b/eibd/examples/common.h
+index 51fc514..f038da1 100644
+--- a/eibd/examples/common.h
++++ b/eibd/examples/common.h
+@@ -20,6 +20,7 @@
+ #include <stdlib.h>
+ #include <errno.h>
+ #include <unistd.h>
++#include <sys/select.h>
+ #include "eibclient.h"
+
+ /** unsigned char*/
+--
+2.5.0
+
diff --git a/package/bcusdk/Config.in b/package/bcusdk/Config.in
index 72deef154b..8f9330e0d1 100644
--- a/package/bcusdk/Config.in
+++ b/package/bcusdk/Config.in
@@ -3,7 +3,7 @@ config BR2_PACKAGE_BCUSDK
depends on BR2_USE_MMU # libpthsem
depends on BR2_INSTALL_LIBSTDCPP
select BR2_PACKAGE_LIBPTHSEM
- select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC
+ select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
help
A free development environment for the Bus Coupling Units of
the European Installation Bus.
diff --git a/package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch b/package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch
new file mode 100644
index 0000000000..40c9063103
--- /dev/null
+++ b/package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch
@@ -0,0 +1,61 @@
+From c887470e0e3310c81ecdb7e736bc5d2ead45db2a Mon Sep 17 00:00:00 2001
+From: Ivan Maidanski <ivmai@mail.ru>
+Date: Mon, 6 Apr 2015 20:06:47 +0300
+Subject: [PATCH 1/1] Do not include sigcontext.h and asm/sigcontext.h (these
+ Linux headers define sigcontext which is no longer used as replaced with
+ ucontext_t in GC 7.0alpha1)
+
+* os_dep.c: Do not include linux/version.h (do not test
+LINUX_VERSION_CODE), asm/signal.h, sigcontext.h, asm/sigcontext.h
+since struct sigcontext not used in GC v7+.
+
+Signed-off-by: Brendan Heading <brendanheading@gmail.com>
+Upstream-status: backport
+---
+ os_dep.c | 30 ------------------------------
+ 1 file changed, 30 deletions(-)
+
+diff --git a/os_dep.c b/os_dep.c
+index f62d4ed..a1bafbd 100644
+--- a/os_dep.c
++++ b/os_dep.c
+@@ -16,36 +16,6 @@
+
+ #include "private/gc_priv.h"
+
+-#if defined(LINUX) && !defined(POWERPC) && !defined(NO_SIGCONTEXT_H)
+-# include <linux/version.h>
+-# if (LINUX_VERSION_CODE <= 0x10400)
+- /* Ugly hack to get struct sigcontext_struct definition. Required */
+- /* for some early 1.3.X releases. Will hopefully go away soon. */
+- /* in some later Linux releases, asm/sigcontext.h may have to */
+- /* be included instead. */
+-# define __KERNEL__
+-# include <asm/signal.h>
+-# undef __KERNEL__
+-# else
+- /* Kernels prior to 2.1.1 defined struct sigcontext_struct instead of */
+- /* struct sigcontext. libc6 (glibc2) uses "struct sigcontext" in */
+- /* prototypes, so we have to include the top-level sigcontext.h to */
+- /* make sure the former gets defined to be the latter if appropriate. */
+-# include <features.h>
+-# if 2 <= __GLIBC__
+-# if 2 == __GLIBC__ && 0 == __GLIBC_MINOR__
+- /* glibc 2.1 no longer has sigcontext.h. But signal.h */
+- /* has the right declaration for glibc 2.1. */
+-# include <sigcontext.h>
+-# endif /* 0 == __GLIBC_MINOR__ */
+-# else /* __GLIBC__ < 2 */
+- /* libc5 doesn't have <sigcontext.h>: go directly with the kernel */
+- /* one. Check LINUX_VERSION_CODE to see which we should reference. */
+-# include <asm/sigcontext.h>
+-# endif /* __GLIBC__ < 2 */
+-# endif
+-#endif /* LINUX && !POWERPC */
+-
+ #if !defined(OS2) && !defined(PCR) && !defined(AMIGA) && !defined(MACOS) \
+ && !defined(MSWINCE) && !defined(__CC_ARM)
+ # include <sys/types.h>
+--
+2.4.3
+
diff --git a/package/beecrypt/Config.in b/package/beecrypt/Config.in
index b9685ef3b0..fc93a77605 100644
--- a/package/beecrypt/Config.in
+++ b/package/beecrypt/Config.in
@@ -17,13 +17,15 @@ config BR2_PACKAGE_BEECRYPT_CPP
depends on BR2_USE_WCHAR # icu
depends on !BR2_BINFMT_FLAT # icu
depends on BR2_ARCH_HAS_ATOMICS # icu
+ depends on !BR2_STATIC_LIBS
select BR2_PACKAGE_ICU
help
Enable C++ support. This pulls in the (large) icu package.
-comment "C++ support needs a toolchain w/ wchar"
+comment "C++ support needs a toolchain w/ C++, wchar, dynamic libraries"
depends on !BR2_BINFMT_FLAT
depends on BR2_ARCH_HAS_ATOMICS
- depends on BR2_INSTALL_LIBSTDCPP && !BR2_USE_WCHAR
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
+ || BR2_STATIC_LIBS
endif # BR2_PACKAGE_BEECRYPT
diff --git a/package/beecrypt/beecrypt.mk b/package/beecrypt/beecrypt.mk
index cd0b4ac96b..e66cec10d6 100644
--- a/package/beecrypt/beecrypt.mk
+++ b/package/beecrypt/beecrypt.mk
@@ -19,6 +19,7 @@ BEECRYPT_CONF_OPTS = \
ifeq ($(BR2_PACKAGE_BEECRYPT_CPP),y)
BEECRYPT_DEPENDENCIES += icu
+BEECRYPT_CONF_OPTS += --with-cplusplus
else
BEECRYPT_CONF_OPTS += --without-cplusplus
diff --git a/package/boost/0004-fix-uclibc-eventfd.patch b/package/boost/0004-fix-uclibc-eventfd.patch
new file mode 100644
index 0000000000..1b7eb8723c
--- /dev/null
+++ b/package/boost/0004-fix-uclibc-eventfd.patch
@@ -0,0 +1,38 @@
+Use eventfd() function with uClibc
+
+The Boost eventfd code either directly makes the eventfd system call
+using __NR_eventfd (when __GLIBC_MINOR is less than 8), or otherwise
+uses the eventfd() function provided by the C library.
+
+However, since uClibc pretends to be glibc 2.2, the Boost eventfd code
+directly uses the system call. While it works fine on most
+architectures, it doesn't on ARC since __NR_eventfd is not defined on
+this architecture. However, eventfd() is properly implemented.
+
+So, this patch adjusts the logic used by Boost to consider uClibc as a
+C library providing the eventfd() function.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/boost/asio/detail/impl/eventfd_select_interrupter.ipp
+===================================================================
+--- a/boost/asio/detail/impl/eventfd_select_interrupter.ipp
++++ b/boost/asio/detail/impl/eventfd_select_interrupter.ipp
+@@ -23,7 +23,7 @@
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include <fcntl.h>
+-#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
++#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 && !defined(__UCLIBC__)
+ # include <asm/unistd.h>
+ #else // __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
+ # include <sys/eventfd.h>
+@@ -46,7 +46,7 @@
+
+ void eventfd_select_interrupter::open_descriptors()
+ {
+-#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8
++#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 && !defined(__UCLIBC__)
+ write_descriptor_ = read_descriptor_ = syscall(__NR_eventfd, 0);
+ if (read_descriptor_ != -1)
+ {
diff --git a/package/bootutils/0001-fix-musl-compilation-issue.patch b/package/bootutils/0001-fix-musl-compilation-issue.patch
new file mode 100644
index 0000000000..ccb6ef61ec
--- /dev/null
+++ b/package/bootutils/0001-fix-musl-compilation-issue.patch
@@ -0,0 +1,31 @@
+From e4c2c18b9d1d7a6dc17d8f7705b26fc2e2efc5a9 Mon Sep 17 00:00:00 2001
+From: Brendan Heading <brendanheading@gmail.com>
+Date: Sun, 30 Aug 2015 20:12:40 +0100
+Subject: [PATCH 1/1] fix musl compilation issue
+
+makedev(3) requires sys/types.h to be included.
+
+Note upstream has not issued releases since 2009. No mailing list activity
+since January 2010, and even before then it seems to be mostly spam.
+
+Upstream-Status: dormant
+Signed-off-by: Brendan Heading <brendanheading@gmail.com>
+---
+ raidscan.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/raidscan.c b/raidscan.c
+index fab3b02..3cb1a0d 100644
+--- a/raidscan.c
++++ b/raidscan.c
+@@ -22,6 +22,7 @@
+ #include "config.h"
+
+ #include <sys/stat.h>
++#include <sys/types.h>
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
+ #include <linux/major.h>
+--
+2.4.3
+
diff --git a/package/busybox/Config.in b/package/busybox/Config.in
index 25f72de338..a3a328d484 100644
--- a/package/busybox/Config.in
+++ b/package/busybox/Config.in
@@ -36,6 +36,7 @@ config BR2_PACKAGE_BUSYBOX_SELINUX
select BR2_PACKAGE_LIBSELINUX
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on !BR2_STATIC_LIBS
+ depends on !BR2_arc
bool "Enable SELinux support"
help
Enable SELinux support in BusyBox. Please note that
diff --git a/package/bwm-ng/Config.in b/package/bwm-ng/Config.in
index 25e7cbe8f7..f93dd9358b 100644
--- a/package/bwm-ng/Config.in
+++ b/package/bwm-ng/Config.in
@@ -5,4 +5,4 @@ config BR2_PACKAGE_BWM_NG
network and disk-io bandwidth monitor for Linux, BSD,
Solaris, Mac OS X and others.
- http://sourceforge.net/projects/bwmng/
+ http://www.gropp.org/?id=projects&sub=bwm-ng
diff --git a/package/bwm-ng/bwm-ng.hash b/package/bwm-ng/bwm-ng.hash
index 6bb83554a6..1d3a240a26 100644
--- a/package/bwm-ng/bwm-ng.hash
+++ b/package/bwm-ng/bwm-ng.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 c1134358e268329d438b0996399003b0f0b966034fb4b5b138761c2f3c62ffdd bwm-ng-0.6.tar.gz
+sha256 027cf3c960cd96fc9ffacdf7713df62d0fc55eeef4a1388289f8a62ae5e50df0 bwm-ng-0.6.1.tar.gz
diff --git a/package/bwm-ng/bwm-ng.mk b/package/bwm-ng/bwm-ng.mk
index ed1f5aab4c..e285422b92 100644
--- a/package/bwm-ng/bwm-ng.mk
+++ b/package/bwm-ng/bwm-ng.mk
@@ -4,8 +4,8 @@
#
################################################################################
-BWM_NG_VERSION = 0.6
-BWM_NG_SITE = http://downloads.sourceforge.net/project/bwmng/bwmng/$(BWM_NG_VERSION)
+BWM_NG_VERSION = 0.6.1
+BWM_NG_SITE = http://www.gropp.org/bwm-ng
BWM_NG_CONF_OPTS = --with-procnetdev --with-diskstats
BWM_NG_LICENSE = GPLv2
BWM_NG_LICENSE_FILES = COPYING
diff --git a/package/c-icap/Config.in b/package/c-icap/Config.in
index 8121a26a65..8f7963c26a 100644
--- a/package/c-icap/Config.in
+++ b/package/c-icap/Config.in
@@ -1,6 +1,6 @@
config BR2_PACKAGE_C_ICAP
bool "c-icap"
- depends on !BR2_PREFER_STATIC_LIB
+ depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # fork()
help
@@ -15,4 +15,4 @@ config BR2_PACKAGE_C_ICAP
comment "c-icap needs a toolchain w/ threads and dynamic library"
depends on BR2_USE_MMU
- depends on BR2_PREFER_STATIC_LIB || !BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch b/package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch
new file mode 100644
index 0000000000..108297c9c2
--- /dev/null
+++ b/package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch
@@ -0,0 +1,32 @@
+From 1d8cb0ad54099c3d7261aaa19a2c0786f16736d0 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 8 Aug 2015 22:42:39 +0200
+Subject: [PATCH] Add missing header for musl compatibility
+
+<linux/ioctl.h> is needed to get the definition of _IOC_SIZEBITS and
+solve the following build failure:
+
+src/spi.c: In function 'spi_transfer':
+src/spi.c:100:24: error: '_IOC_SIZEBITS' undeclared (first use in this function)
+ if (ioctl(spi->fd, SPI_IOC_MESSAGE(1), &spi_xfer) < 1)
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/spi.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/spi.c b/src/spi.c
+index 52a8d3d..1a6b17c 100644
+--- a/src/spi.c
++++ b/src/spi.c
+@@ -16,6 +16,7 @@
+ #include <errno.h>
+
+ #include <sys/ioctl.h>
++#include <linux/ioctl.h>
+ #include <linux/spi/spidev.h>
+
+ #include "spi.h"
+--
+2.5.0
+
diff --git a/package/c-periphery/0002-Fix-build-on-SPARC.patch b/package/c-periphery/0002-Fix-build-on-SPARC.patch
new file mode 100644
index 0000000000..e491f6f728
--- /dev/null
+++ b/package/c-periphery/0002-Fix-build-on-SPARC.patch
@@ -0,0 +1,70 @@
+From 295316c3f44c3e779e85d7453424496a3bb4bc48 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 8 Aug 2015 22:56:09 +0200
+Subject: [PATCH] Fix build on SPARC
+
+On SPARC, the definitions of B2500000, B3000000, B3500000 and B4000000
+are not necessarily available, so use those values only if defined in
+the kernel headers.
+
+It fixes SPARC build failures such as:
+
+src/serial.c: In function '_serial_baudrate_to_bits':
+src/serial.c:73:30: error: 'B2500000' undeclared (first use in this function)
+ case 2500000: return B2500000;
+ ^
+src/serial.c:73:30: note: each undeclared identifier is reported only once for each function it appears in
+src/serial.c:74:30: error: 'B3000000' undeclared (first use in this function)
+ case 3000000: return B3000000;
+ ^
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/serial.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/src/serial.c b/src/serial.c
+index e385309..efd425e 100644
+--- a/src/serial.c
++++ b/src/serial.c
+@@ -70,10 +70,18 @@ static int _serial_baudrate_to_bits(uint32_t baudrate) {
+ case 1152000: return B1152000;
+ case 1500000: return B1500000;
+ case 2000000: return B2000000;
++#ifdef B2500000
+ case 2500000: return B2500000;
++#endif
++#ifdef B3000000
+ case 3000000: return B3000000;
++#endif
++#ifdef B3500000
+ case 3500000: return B3500000;
++#endif
++#ifdef B4000000
+ case 4000000: return B4000000;
++#endif
+ default: return -1;
+ }
+ }
+@@ -107,10 +115,18 @@ static int _serial_bits_to_baudrate(uint32_t bits) {
+ case B1152000: return 1152000;
+ case B1500000: return 1500000;
+ case B2000000: return 2000000;
++#ifdef B2500000
+ case B2500000: return 2500000;
++#endif
++#ifdef B3000000
+ case B3000000: return 3000000;
++#endif
++#ifdef B3500000
+ case B3500000: return 3500000;
++#endif
++#ifdef B4000000
+ case B4000000: return 4000000;
++#endif
+ default: return -1;
+ }
+ }
+--
+2.5.0
+
diff --git a/package/canfestival/canfestival.mk b/package/canfestival/canfestival.mk
index e929c5e0a4..61578d3162 100644
--- a/package/canfestival/canfestival.mk
+++ b/package/canfestival/canfestival.mk
@@ -36,13 +36,13 @@ define CANFESTIVAL_CONFIGURE_CMDS
endef
define CANFESTIVAL_BUILD_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) all \
+ $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) all \
PYTHON=$(HOST_DIR)/usr/bin/python2
endef
define CANFESTIVAL_INSTALL_TARGET_CMDS
for d in $(CANFESTIVAL_INSTALLED-y) ; do \
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$$d install \
+ $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/$$d install \
PYTHON=$(HOST_DIR)/usr/bin/python2 \
DESTDIR=$(TARGET_DIR) || exit 1 ; \
done
@@ -50,7 +50,7 @@ endef
define CANFESTIVAL_INSTALL_STAGING_CMDS
for d in $(CANFESTIVAL_INSTALLED-y) ; do \
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$$d install \
+ $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/$$d install \
PYTHON=$(HOST_DIR)/usr/bin/python2 \
DESTDIR=$(STAGING_DIR) || exit 1 ; \
done
diff --git a/package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch b/package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch
new file mode 100644
index 0000000000..2e0f6d52e3
--- /dev/null
+++ b/package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch
@@ -0,0 +1,47 @@
+From 9454ef47db30caa4359766c8730d9d92f65c64f7 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Sat, 8 Aug 2015 22:58:57 +0200
+Subject: [PATCH] define __THROW to avoid build issue with musl
+
+Fixes:
+http://autobuild.buildroot.net/results/d27/d2781e70b04a207e2e9397d888032294c7285034/build-end.log
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ genisoimage/sha256.h | 4 ++++
+ genisoimage/sha512.h | 4 ++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/genisoimage/sha256.h b/genisoimage/sha256.h
+index e7f4cb9..bcae7ef 100644
+--- a/genisoimage/sha256.h
++++ b/genisoimage/sha256.h
+@@ -29,6 +29,10 @@
+ #include <stdint.h>
+ #include <stdio.h>
+
++/* define __THROW to avoid build issue when it's not available from the libc */
++#ifndef __THROW
++# define __THROW
++#endif
+
+ /* Structure to save state of computation between the single steps. */
+ struct sha256_ctx
+diff --git a/genisoimage/sha512.h b/genisoimage/sha512.h
+index 7298355..8cee8b0 100644
+--- a/genisoimage/sha512.h
++++ b/genisoimage/sha512.h
+@@ -29,6 +29,10 @@
+ #include <stdint.h>
+ #include <stdio.h>
+
++/* define __THROW to avoid build issue when it's not available from the libc */
++#ifndef __THROW
++# define __THROW
++#endif
+
+ /* Structure to save state of computation between the single steps. */
+ struct sha512_ctx
+--
+2.4.3
+
diff --git a/package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch b/package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch
new file mode 100644
index 0000000000..8fbec11c38
--- /dev/null
+++ b/package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch
@@ -0,0 +1,31 @@
+From 6603cef0f06c450196a1bca06bb143d8fcda5651 Mon Sep 17 00:00:00 2001
+From: Felix Janda <felix.janda@posteo.de>
+Date: Fri, 5 Dec 2014 23:19:29 +0100
+Subject: [PATCH 1/1] mtab.c: include <paths.h> for _PATH_MOUNTED
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Backported from: 6603cef0f06c450196a1bca06bb143d8fcda5651
+
+Signed-off-by: Felix Janda <felix.janda@posteo.de>
+Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
+---
+ mtab.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/mtab.c b/mtab.c
+index 7b365b3..a662a3c 100644
+--- a/mtab.c
++++ b/mtab.c
+@@ -38,6 +38,7 @@
+ #include <mntent.h>
+ #include <stdlib.h>
+ #include <signal.h>
++#include <paths.h>
+ #include "mount.h"
+ #include "config.h"
+
+--
+2.5.0
+
diff --git a/package/clapack/0006-remove-uninit-f2c.patch b/package/clapack/0006-remove-uninit-f2c.patch
new file mode 100644
index 0000000000..83c2c5c75f
--- /dev/null
+++ b/package/clapack/0006-remove-uninit-f2c.patch
@@ -0,0 +1,24 @@
+uninit.c includes glibc-specific <fpu_control.h> not provided by musl.
+Somewhat portable replacement is <fenv.h>, which is available in musl
+but requires non-trivial changes to uninit.c.
+
+f2c uses _uninit_f2c() from uninit.c to implement its -trapuv option,
+pre-initializiing floating-point variables to NaN and asking FPU to send
+SIGFPE whenever NaN value is encountered.
+
+clapack source has already been run through f2c without -trapuv,
+so uninit.c code is not used anywhere and can be safely excluded.
+
+Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
+
+--- a/F2CLIBS/libf2c/CMakeLists.txt
++++ b/F2CLIBS/libf2c/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ set(MISC
+ f77vers.c i77vers.c main.c s_rnge.c abort_.c exit_.c getarg_.c iargc_.c
+ getenv_.c signal_.c s_stop.c s_paus.c system_.c cabs.c ctype.c
+- derf_.c derfc_.c erf_.c erfc_.c sig_die.c uninit.c)
++ derf_.c derfc_.c erf_.c erfc_.c sig_die.c)
+ set(POW pow_ci.c pow_dd.c pow_di.c pow_hh.c pow_ii.c pow_ri.c pow_zi.c pow_zz.c)
+ set(CX c_abs.c c_cos.c c_div.c c_exp.c c_log.c c_sin.c c_sqrt.c)
+ set(DCX z_abs.c z_cos.c z_div.c z_exp.c z_log.c z_sin.c z_sqrt.c)
diff --git a/package/clapack/0007-off64-t.patch b/package/clapack/0007-off64-t.patch
new file mode 100644
index 0000000000..bf66d3c95f
--- /dev/null
+++ b/package/clapack/0007-off64-t.patch
@@ -0,0 +1,16 @@
+musl only provides off64_t, not __off64_t.
+glibc and uclibc have both defined.
+
+Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
+
+--- a/F2CLIBS/libf2c/sysdep1.h
++++ b/F2CLIBS/libf2c/sysdep1.h
+@@ -10,7 +10,7 @@
+
+ #ifdef __linux__
+ #define USE_LARGEFILE
+-#define OFF_T __off64_t
++#define OFF_T off64_t
+ #endif
+
+ #ifdef _AIX43
diff --git a/package/cpio/Config.in b/package/cpio/Config.in
index df40faccf8..1210a0bde1 100644
--- a/package/cpio/Config.in
+++ b/package/cpio/Config.in
@@ -1,7 +1,7 @@
config BR2_PACKAGE_CPIO
bool "cpio"
# Need argp.h support
- select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC
+ select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
depends on BR2_USE_WCHAR
help
cpio archive utility for creation and extraction.
diff --git a/package/cpio/cpio.mk b/package/cpio/cpio.mk
index aa9daced17..c29305e6cc 100644
--- a/package/cpio/cpio.mk
+++ b/package/cpio/cpio.mk
@@ -15,10 +15,9 @@ CPIO_PATCH = \
https://projects.archlinux.org/svntogit/packages.git/plain/cpio/trunk/cpio-2.11-check_for_symlinks-CVE-2015-1197.patch \
https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-arch/cpio/files/cpio-2.11-stat.patch
-# cpio uses argp.h which is not provided by uclibc by default.
-# Use the argp-standalone package to provide this but make sure
-# the host package does not try to use the host version.
-ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
+# cpio uses argp.h which is not provided by uclibc or musl by default.
+# Use the argp-standalone package to provide this.
+ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y)
CPIO_DEPENDENCIES += argp-standalone
endif
diff --git a/package/cppcms/cppcms.hash b/package/cppcms/cppcms.hash
index 3b2fa28cd6..28e998c6c1 100644
--- a/package/cppcms/cppcms.hash
+++ b/package/cppcms/cppcms.hash
@@ -1,2 +1,5 @@
+# From http://sourceforge.net/projects/cppcms/files/cppcms/1.0.5/
+sha1 15f21897c14acfd4b0c74622e49d95857f2fe939 cppcms-1.0.5.tar.bz2
+md5 d668c201dd31fff8090380ebdc0bcc2b cppcms-1.0.5.tar.bz2
# Locally computed:
-sha256 7c76befc706f3a5f7435b5757eab56784d762db9dd3654467e02e85000caf700 cppcms-1.0.4.tar.bz2
+sha256 84b685977bca97c3e997497f227bd5906adb80555066d811a7046b01c2f51865 cppcms-1.0.5.tar.bz2
diff --git a/package/cppcms/cppcms.mk b/package/cppcms/cppcms.mk
index 7f9a452296..611020c588 100644
--- a/package/cppcms/cppcms.mk
+++ b/package/cppcms/cppcms.mk
@@ -4,7 +4,7 @@
#
################################################################################
-CPPCMS_VERSION = 1.0.4
+CPPCMS_VERSION = 1.0.5
CPPCMS_SOURCE = cppcms-$(CPPCMS_VERSION).tar.bz2
CPPCMS_LICENSE = LGPLv3
CPPCMS_LICENSE_FILES = COPYING.TXT
diff --git a/package/cramfs/0003-fix-missing-types.patch b/package/cramfs/0003-fix-missing-types.patch
new file mode 100644
index 0000000000..896110011e
--- /dev/null
+++ b/package/cramfs/0003-fix-missing-types.patch
@@ -0,0 +1,17 @@
+mkcramfs; loff_t is guarded by _GNU_SOURCE
+
+Although already properly done in cramfsck, it was missing in mkcramfs.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN cramfs-1.1.orig/mkcramfs.c cramfs-1.1/mkcramfs.c
+--- cramfs-1.1.orig/mkcramfs.c 2015-08-05 22:31:16.830543096 +0200
++++ cramfs-1.1/mkcramfs.c 2015-08-05 22:33:33.136289744 +0200
+@@ -22,6 +22,7 @@
+ * If you change the disk format of cramfs, please update fs/cramfs/README.
+ */
+
++#define _GNU_SOURCE
+ #include <sys/types.h>
+ #include <stdio.h>
+ #include <sys/stat.h>
diff --git a/package/curlftpfs/0004-fix-musl-build-off-t.patch b/package/curlftpfs/0004-fix-musl-build-off-t.patch
new file mode 100644
index 0000000000..9335230520
--- /dev/null
+++ b/package/curlftpfs/0004-fix-musl-build-off-t.patch
@@ -0,0 +1,39 @@
+Use off_t instead of __off_t
+
+__off_t is an internal C library type, which shouldn't be used by
+applications. It is not defined by the musl C library, so use the
+public off_t type instead.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/ftpfs.c
+===================================================================
+--- a/ftpfs.c
++++ b/ftpfs.c
+@@ -687,7 +687,7 @@
+ return ftpfs_getattr(path, &sbuf);
+ }
+
+-static __off_t test_size(const char* path)
++static off_t test_size(const char* path)
+ {
+ struct stat sbuf;
+ int err = ftpfs_getattr(path, &sbuf);
+@@ -950,7 +950,7 @@
+
+ /* fix openoffice problem, truncating exactly to file length */
+
+- __off_t size = (long long int)test_size(path);
++ off_t size = (long long int)test_size(path);
+ DEBUG(1, "ftpfs_truncate: %s check filesize=%lld\n", path, (long long int)size);
+
+ if (offset == size)
+@@ -978,7 +978,7 @@
+ }
+ /* fix openoffice problem, truncating exactly to file length */
+
+- __off_t size = test_size(path);
++ off_t size = test_size(path);
+ DEBUG(1, "ftpfs_ftruncate: %s check filesize=%lld\n", path, (long long int)size);
+
+ if (offset == size)
diff --git a/package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch b/package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch
deleted file mode 100644
index 556a8df97c..0000000000
--- a/package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch
+++ /dev/null
@@ -1,206 +0,0 @@
-From 23591404610b1eeffb69712d93c77c2327b9ef7a Mon Sep 17 00:00:00 2001
-From: Phillip Mienk <mienkphi@gmail.com>
-Date: Fri, 31 Oct 2014 00:55:35 -0700
-Subject: [PATCH] Simply configure.ac to prevent contradictory discovery of
- libzmq.
-
-[Romain: rebase on top of 3.0.0]
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- Makefile.am | 3 ++-
- addons/Makefile.am.supplement | 3 ++-
- configure.ac | 46 ++-----------------------------------------
- model/build-autoconf.gsl | 28 ++++++++++++++++++++++++++
- model/project.xml | 3 +++
- src/Makefile.am.supplement | 12 ++++++++++-
- 6 files changed, 48 insertions(+), 47 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 10f21fb..187c62b 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,7 +1,8 @@
- ACLOCAL_AMFLAGS = -I config
-
- AM_CPPFLAGS = \
-- -I$(srcdir)/include
-+ ${zmq_CFLAGS} \
-+ -I$(srcdir)/include
-
- EXTRA_DIST = \
- version.sh \
-diff --git a/addons/Makefile.am.supplement b/addons/Makefile.am.supplement
-index 8800db4..74f0c60 100644
---- a/addons/Makefile.am.supplement
-+++ b/addons/Makefile.am.supplement
-@@ -4,7 +4,8 @@ EXTRA_DIST += \
- bin_PROGRAMS += makecert
-
- makecert_LDADD = \
-- libczmq.la
-+ libczmq.la \
-+ ${zmq_LIBS}
-
- makecert_SOURCES = \
- addons/makecert.c
-diff --git a/configure.ac b/configure.ac
-index 1a4667e..1ccae06 100755
---- a/configure.ac
-+++ b/configure.ac
-@@ -74,50 +74,8 @@ if test "x${CZMQ_GCOV}" == "xyes"; then
- fi
- fi
-
--# Check for libzmq library
--libzmq_prefix=detect
--AC_ARG_WITH([libzmq],
-- [AS_HELP_STRING([--with-libzmq=PREFIX],
-- [build with ZeroMQ library installed in PREFIX [default=autodetect]])],
-- [case "x$withval" in
-- xno)
-- AC_MSG_ERROR([CZMQ requires the ZeroMQ library])
-- ;;
-- xyes|x)
-- ;;
-- *)
-- CPPFLAGS="$CPPFLAGS -I${withval}/include"
-- LDFLAGS="$LDFLAGS -L${withval}/lib"
-- zeromq_prefix=${withval}
-- ;;
-- esac ]
--)
--if test "x$libzmq_prefix" = "xdetect"; then
-- PKG_CHECK_MODULES(
-- [ZeroMQ], [libzmq], [libzmq_prefix=pkgconfig], [libzmq_prefix=])
-- if test "x$libzmq_prefix" = "xpkgconfig"; then
-- CPPFLAGS="$CPPFLAGS ${ZeroMQ_CFLAGS}"
-- LDFLAGS="$LDFLAGS ${ZeroMQ_LIBS}"
-- fi
--fi
--
--if test "x$czmq_search_libzmq" = "xyes"; then
-- if test -r "${with_libzmq}/include/zmq.h"; then
-- CFLAGS="-I${with_libzmq}/include ${CFLAGS}"
-- LDFLAGS="-L${with_libzmq}/lib ${LDFLAGS}"
-- fi
--fi
--
--AC_CHECK_HEADER([zmq.h], [], [AC_MSG_ERROR([cannot find zmq.h])])
--
--AC_CHECK_LIB(zmq, zmq_init, ,[AC_MSG_ERROR([cannot link with -lzmq, install libzmq.])])
--
--AC_MSG_CHECKING([whether libzmq installation works])
--AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <zmq.h>],
-- [zmq_init(1);])
-- ],
-- [AC_MSG_RESULT([yes])],
-- [AC_MSG_ERROR([no. Please specify libzmq installation prefix using --with-libzmq])])
-+# Check for libzmq
-+PKG_CHECK_MODULES([zmq], [libzmq])
-
- # Platform specific checks
- czmq_on_mingw32="no"
-diff --git a/model/build-autoconf.gsl b/model/build-autoconf.gsl
-index d012a3c..30aff14 100644
---- a/model/build-autoconf.gsl
-+++ b/model/build-autoconf.gsl
-@@ -46,12 +46,39 @@ lib$(project.name)_la_SOURCES = \\
-
- bin_PROGRAMS = $(project.name)_selftest
-
-+$(project.name)_selftest_CPPFLAGS = \\
-+.for package_dependency where defined (package_dependency.for_test)
-+ \${$(package_dependency.name)_CFLAGS} \\
-+.endfor
-+ \${lib$(project.name)_la_CFLAGS}
-+
- $(project.name)_selftest_LDADD = \\
-+.if count (package_dependency, defined (count.for_lib) | defined (count.for_test) | defined (count.for_all)) > 0
-+ lib$(project.name).la \\
-+.else
- lib$(project.name).la
-+.endif
-+.for package_dependency where defined (package_dependency.for_lib) | defined (package_dependency.for_test) | defined (package_dependency.for_all)
-+. if last()
-+ \${$(package_dependency.name)_LIBS}
-+. else
-+ \${$(package_dependency.name)_LIBS} \\
-+.endif
-+.endfor
-
- $(project.name)_selftest_SOURCES = \\
- src/$(project.name)_selftest.c
-
-+lib$(project.name)_la_CPPFLAGS = \\
-+.for package_dependency where defined (package_dependency.for_lib)
-+. if last()
-+ \${$(package_dependency.name)_CFLAGS}
-+. else
-+ \${$(package_dependency.name)_CFLAGS} \\
-+. endif
-+.endfor
-+ ${AM_CPPFLAGS}
-+
- lib$(project.name)_la_LDFLAGS = \\
- -version-info @LTVER@
-
-@@ -62,6 +89,7 @@ lib$(project.name)_la_LDFLAGS += \\
- endif
-
- TESTS = $(project.name)_selftest
-+
- .for model
- . if first ()
-
-diff --git a/model/project.xml b/model/project.xml
-index 91306cf..b7bab4a 100644
---- a/model/project.xml
-+++ b/model/project.xml
-@@ -2,6 +2,9 @@
- name = "czmq"
- script = "project.gsl"
- >
-+
-+ <package_dependency name="zmq" pkg_name="libzmq" for_all="1" />
-+
- <header name = "czmq" />
- <header name = "czmq_prelude" />
-
-diff --git a/src/Makefile.am.supplement b/src/Makefile.am.supplement
-index 91e5b62..929aa07 100644
---- a/src/Makefile.am.supplement
-+++ b/src/Makefile.am.supplement
-@@ -95,12 +95,19 @@ libczmq_la_SOURCES = \
-
- bin_PROGRAMS = czmq_selftest
-
-+czmq_selftest_CPPFLAGS = \
-+ ${src_libczmq_la_CFLAGS}
-+
- czmq_selftest_LDADD = \
-- libczmq.la
-+ libczmq.la \
-+ ${zmq_LIBS}
-
- czmq_selftest_SOURCES = \
- src/czmq_selftest.c
-
-+libczmq_la_CPPFLAGS = \
-+ ${AM_CPPFLAGS}
-+
- libczmq_la_LDFLAGS = \
- -version-info @LTVER@
-
-@@ -112,6 +119,9 @@ endif
-
- TESTS = czmq_selftest
-
-+# define custom target for all products of /src
-+src: src/libczmq.la src/czmq_selftest
-+
- # Produce generated models; do this manually in src directory
- code:
- gsl -q src/sockopts.xml
---
-1.9.3
-
diff --git a/package/czmq/czmq.mk b/package/czmq/czmq.mk
index 3d82095094..0060c8979f 100644
--- a/package/czmq/czmq.mk
+++ b/package/czmq/czmq.mk
@@ -4,7 +4,7 @@
#
################################################################################
-CZMQ_VERSION = v3.0.0
+CZMQ_VERSION = v3.0.2
CZMQ_SITE = $(call github,zeromq,czmq,$(CZMQ_VERSION))
# Autoreconf required as we use the git tree
diff --git a/package/dawgdic/Config.in b/package/dawgdic/Config.in
index ce0b46647d..b67342b194 100644
--- a/package/dawgdic/Config.in
+++ b/package/dawgdic/Config.in
@@ -1,6 +1,8 @@
config BR2_PACKAGE_DAWGDIC
bool "dawgdic"
depends on BR2_INSTALL_LIBSTDCPP
+ # needs std::strtoll
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
help
dawgdic provides a library for building and accessing
dictionaries implemented with directed acyclic word graphs
@@ -13,5 +15,5 @@ config BR2_PACKAGE_DAWGDIC
https://github.com/stil/dawgdic
-comment "dawgdic needs a toolchain w/ C++"
- depends on !BR2_INSTALL_LIBSTDCPP
+comment "dawgdic needs a toolchain w/ C++, gcc >= 4.6"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
diff --git a/package/dhcpdump/dhcpdump.mk b/package/dhcpdump/dhcpdump.mk
index 15fc02f845..6b677a674a 100644
--- a/package/dhcpdump/dhcpdump.mk
+++ b/package/dhcpdump/dhcpdump.mk
@@ -16,7 +16,8 @@ DHCPDUMP_LIBS += `$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`
endif
define DHCPDUMP_BUILD_CMDS
- $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS)" LIBS="$(DHCPDUMP_LIBS)"
+ $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS) -D_GNU_SOURCE" \
+ LIBS="$(DHCPDUMP_LIBS)"
endef
define DHCPDUMP_INSTALL_TARGET_CMDS
diff --git a/package/dnsmasq/dnsmasq.hash b/package/dnsmasq/dnsmasq.hash
index 370792f518..57dc4b175c 100644
--- a/package/dnsmasq/dnsmasq.hash
+++ b/package/dnsmasq/dnsmasq.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 9ed484b9879d63f7a0bc1010562f17d8aaadf4261e9a126299796cb9696d93ba dnsmasq-2.74.tar.xz
+sha256 640c4e1d4c298e42458419cd78cfc26acc549401b1a34d271cd3e0e4226941f1 dnsmasq-2.75.tar.xz
diff --git a/package/dnsmasq/dnsmasq.mk b/package/dnsmasq/dnsmasq.mk
index 0df33caffb..a0db81bb64 100644
--- a/package/dnsmasq/dnsmasq.mk
+++ b/package/dnsmasq/dnsmasq.mk
@@ -4,7 +4,7 @@
#
################################################################################
-DNSMASQ_VERSION = 2.74
+DNSMASQ_VERSION = 2.75
DNSMASQ_SOURCE = dnsmasq-$(DNSMASQ_VERSION).tar.xz
DNSMASQ_SITE = http://thekelleys.org.uk/dnsmasq
DNSMASQ_MAKE_ENV = $(TARGET_MAKE_ENV) CC="$(TARGET_CC)"
diff --git a/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch b/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch
new file mode 100644
index 0000000000..34ebc240b5
--- /dev/null
+++ b/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch
@@ -0,0 +1,45 @@
+From 7a589ef6dab52ad32a296939f0ed2acb4d76b2a7 Mon Sep 17 00:00:00 2001
+From: "Yann E. MORIN" <yann.morin.1998@free.fr>
+Date: Sun, 16 Aug 2015 15:55:43 +0200
+Subject: [PATCH] mkfs.fat: fix incorrect int type
+
+u_int32_t is not a stanard type, while uint32_t is. This fixes builds
+with the musl C library, which only defines so-called "clean" headers;
+build failures are like (back-quotes and elision manually added for
+readability):
+
+ http://autobuild.buildroot.org/results/a09/a0923d7f6d4dbae02eba4c5024bbdae3a52aa85a/build-end.log
+
+ /home/peko/autobuild/instance-1/output/host/usr/bin/x86_64-linux-gcc -D_LARGEFILE_SOURCE \
+ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -D_GNU_SOURCE -D_LARGEFILE_SOURCE \
+ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o mkfs.fat.o src/mkfs.fat.c
+ src/mkfs.fat.c: In function 'main':
+ src/mkfs.fat.c:1415:18: error: 'u_int32_t' undeclared (first use in this function)
+ volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); [...]
+ ^
+ src/mkfs.fat.c:1415:18: note: each undeclared identifier is reported only once for each
+ function it appears in
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+Upstream status: applied: https://github.com/dosfstools/dosfstools/pull/9
+---
+ src/mkfs.fat.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/mkfs.fat.c b/src/mkfs.fat.c
+index b38d116..dddbe24 100644
+--- a/src/mkfs.fat.c
++++ b/src/mkfs.fat.c
+@@ -1412,7 +1412,7 @@ int main(int argc, char **argv)
+
+ gettimeofday(&create_timeval, NULL);
+ create_time = create_timeval.tv_sec;
+- volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */
++ volume_id = (uint32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */
+ check_atari();
+
+ printf("mkfs.fat " VERSION " (" VERSION_DATE ")\n");
+--
+1.9.1
+
diff --git a/package/dropbear/S50dropbear b/package/dropbear/S50dropbear
index 8938789509..b4e3c5c685 100644
--- a/package/dropbear/S50dropbear
+++ b/package/dropbear/S50dropbear
@@ -9,24 +9,26 @@ test -r /etc/default/dropbear && . /etc/default/dropbear
start() {
DROPBEAR_ARGS="$DROPBEAR_ARGS -R"
- echo -n "Starting dropbear sshd: "
- umask 077
-
# If /etc/dropbear is a symlink to /var/run/dropbear, and
# - the filesystem is RO (i.e. we can not rm the symlink),
# create the directory pointed to by the symlink.
# - the filesystem is RW (i.e. we can rm the symlink),
# replace the symlink with an actual directory
if [ -L /etc/dropbear \
- -a "$(readlink -f /etc/dropbear)" = "/var/run/dropbear" ]
+ -a "$(readlink /etc/dropbear)" = "/var/run/dropbear" ]
then
- if rm -f /etc/dropbear; then
+ if rm -f /etc/dropbear >/dev/null 2>&1; then
mkdir -p /etc/dropbear
else
- mkdir -p $(readlink /etc/dropbear)
+ echo "No persistent location to store SSH host keys. New keys will be"
+ echo "generated at each boot. Are you sure this is what you want to do?"
+ mkdir -p "$(readlink /etc/dropbear)"
fi
fi
+ echo -n "Starting dropbear sshd: "
+ umask 077
+
start-stop-daemon -S -q -p /var/run/dropbear.pid \
--exec /usr/sbin/dropbear -- $DROPBEAR_ARGS
[ $? = 0 ] && echo "OK" || echo "FAIL"
diff --git a/package/dropbear/dropbear.mk b/package/dropbear/dropbear.mk
index 5bbe864500..aa3fd9d928 100644
--- a/package/dropbear/dropbear.mk
+++ b/package/dropbear/dropbear.mk
@@ -93,7 +93,7 @@ define DROPBEAR_INSTALL_TARGET_CMDS
for f in $(DROPBEAR_TARGET_BINS); do \
ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/$$f ; \
done
- ln -snf ../var/run/dropbear $(TARGET_DIR)/etc/dropbear
+ ln -snf /var/run/dropbear $(TARGET_DIR)/etc/dropbear
endef
$(eval $(autotools-package))
diff --git a/package/dropbear/dropbear.service b/package/dropbear/dropbear.service
index 52c77024f5..1eb42f9d09 100644
--- a/package/dropbear/dropbear.service
+++ b/package/dropbear/dropbear.service
@@ -10,11 +10,13 @@ After=syslog.target network.target auditd.service
# replace the symlink with an actual directory
ExecStartPre=/bin/sh -c '\
if [ -L /etc/dropbear \
- -a "$(readlink -f /etc/dropbear)" = "/var/run/dropbear" ]; then \
- if rm -f /etc/dropbear; then \
+ -a "$(readlink /etc/dropbear)" = "/var/run/dropbear" ]; then \
+ if rm -f /etc/dropbear >/dev/null 2>&1; then \
mkdir -p /etc/dropbear; \
else \
- mkdir -p $(readlink /etc/dropbear); \
+ echo "No persistent location to store SSH host keys. New keys will be"; \
+ echo "generated at each boot. Are you sure this is what you want to do?"; \
+ mkdir -p "$(readlink /etc/dropbear)"; \
fi; \
fi'
ExecStart=/usr/sbin/dropbear -F -R
diff --git a/package/elfutils/Config.in b/package/elfutils/Config.in
index 6c6856e3d7..ca93770bfb 100644
--- a/package/elfutils/Config.in
+++ b/package/elfutils/Config.in
@@ -1,6 +1,7 @@
-comment "elfutils needs a toolchain w/ wchar, dynamic library"
+comment "elfutils needs a uClibc or (e)glibc toolchain w/ wchar, dynamic library"
depends on !BR2_bfin
- depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS
+ depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
+ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
config BR2_PACKAGE_ELFUTILS
bool "elfutils"
@@ -8,6 +9,8 @@ config BR2_PACKAGE_ELFUTILS
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
depends on BR2_USE_WCHAR
depends on !BR2_STATIC_LIBS
+ # Only glibc and uClibc implement the myriad of required GNUisms
+ depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC
# build issue caused by the _ prefix used on blackfin for
# assembly symbols
depends on !BR2_bfin
diff --git a/package/empty/0002-fix-non-thread-build.patch b/package/empty/0002-fix-non-thread-build.patch
new file mode 100644
index 0000000000..a7e8d90a21
--- /dev/null
+++ b/package/empty/0002-fix-non-thread-build.patch
@@ -0,0 +1,49 @@
+empty uses SysV semaphores, so the ifdef is wrong here.
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+--- empty-0.6.19b.orig/empty.c 2012-09-19 13:24:05.000000000 +0200
++++ empty-0.6.19b/empty.c 2015-07-09 02:00:09.000000000 +0200
+@@ -179,25 +179,23 @@ int main (int argc, char *argv[]) {
+ 2 - unknown */
+
+ /* semaphores */
+-#ifdef _POSIX_SEMAPHORES
+- #if defined(__linux__) && defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED)
+- /* union semun is defined by including <sys/sem.h> */
+- #else
+- union semun {
+- int val;
+- struct semid_ds *buf;
+- #ifdef __SVR4
+- ushort_t *array;
+- #endif
+- #ifdef __hpux__
+- ushort *array;
+- #endif
+- #ifdef __linux__
+- unsigned short *array;
+- struct seminfo *__buf; /* buffer for IPC_INFO */
+- #endif
+- };
+- #endif
++#if defined(__linux__) && defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED)
++ /* union semun is defined by including <sys/sem.h> */
++#else
++ union semun {
++ int val;
++ struct semid_ds *buf;
++ #ifdef __SVR4
++ ushort_t *array;
++ #endif
++ #ifdef __hpux__
++ ushort *array;
++ #endif
++ #ifdef __linux__
++ unsigned short *array;
++ struct seminfo *__buf; /* buffer for IPC_INFO */
++ #endif
++ };
+ #endif
+ union semun semu;
+
diff --git a/package/erlang-p1-tls/Config.in b/package/erlang-p1-tls/Config.in
index 42c6a3e96c..0df334820d 100644
--- a/package/erlang-p1-tls/Config.in
+++ b/package/erlang-p1-tls/Config.in
@@ -1,5 +1,6 @@
config BR2_PACKAGE_ERLANG_P1_TLS
bool "erlang-p1-tls"
+ select BR2_PACKAGE_OPENSSL
help
Erlang interface to OpenSSL
diff --git a/package/erlang-p1-tls/erlang-p1-tls.mk b/package/erlang-p1-tls/erlang-p1-tls.mk
index d706797ad5..4f1fc48549 100644
--- a/package/erlang-p1-tls/erlang-p1-tls.mk
+++ b/package/erlang-p1-tls/erlang-p1-tls.mk
@@ -9,5 +9,6 @@ ERLANG_P1_TLS_SITE = $(call github,processone,tls,$(ERLANG_P1_TLS_VERSION))
ERLANG_P1_TLS_LICENSE = GPLv2+
ERLANG_P1_TLS_LICENSE_FILES = COPYING
ERLANG_P1_TLS_INSTALL_STAGING = YES
+ERLANG_P1_TLS_DEPENDENCIES = openssl
$(eval $(rebar-package))
diff --git a/package/eudev/0002-build-sys-check-for-mallinfo.patch b/package/eudev/0002-build-sys-check-for-mallinfo.patch
new file mode 100644
index 0000000000..c2fa2daf20
--- /dev/null
+++ b/package/eudev/0002-build-sys-check-for-mallinfo.patch
@@ -0,0 +1,93 @@
+From 1205e0b50067c5ebfa082f149f0996304aa04335 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Thu, 30 Jul 2015 16:55:45 +0200
+Subject: [PATCH] build-sys: check for mallinfo
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+mallinfo is not specified by POSIX or the C standards, therefore
+it's not available for all libc libraries (musl).
+
+Add the ability to disable mallinfo statistics.
+
+Fixes:
+selinux-util.c: In function ‘mac_selinux_init’:
+selinux-util.c:70:25: error: storage size of ‘before_mallinfo’ isn’t known
+ struct mallinfo before_mallinfo, after_mallinfo;
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ configure.ac | 3 +++
+ src/shared/selinux-util.c | 15 +++++++++++++++
+ 2 files changed, 18 insertions(+)
+
+diff --git a/configure.ac b/configure.ac
+index ec23ab5..4a293b2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -226,6 +226,9 @@ else
+ fi
+ AC_SUBST(sushell)
+
++# selinux-util.c uses struct mallinfo which is not available for all C libraries (musl).
++AC_CHECK_FUNCS([mallinfo])
++
+ # ------------------------------------------------------------------------------
+
+ AC_CHECK_DECL([unshare],
+diff --git a/src/shared/selinux-util.c b/src/shared/selinux-util.c
+index 756215e..4e0866b 100644
+--- a/src/shared/selinux-util.c
++++ b/src/shared/selinux-util.c
+@@ -67,7 +67,10 @@ int mac_selinux_init(const char *prefix) {
+
+ #ifdef HAVE_SELINUX
+ usec_t before_timestamp, after_timestamp;
++
++#ifdef HAVE_MALLINFO
+ struct mallinfo before_mallinfo, after_mallinfo;
++#endif
+
+ if (!mac_selinux_use())
+ return 0;
+@@ -75,7 +78,10 @@ int mac_selinux_init(const char *prefix) {
+ if (label_hnd)
+ return 0;
+
++#ifdef HAVE_MALLINFO
+ before_mallinfo = mallinfo();
++#endif
++
+ before_timestamp = now(CLOCK_MONOTONIC);
+
+ if (prefix) {
+@@ -92,9 +98,14 @@ int mac_selinux_init(const char *prefix) {
+ r = security_getenforce() == 1 ? -errno : 0;
+ } else {
+ char timespan[FORMAT_TIMESPAN_MAX];
++
++#ifdef HAVE_MALLINFO
+ int l;
++#endif
+
+ after_timestamp = now(CLOCK_MONOTONIC);
++
++#ifdef HAVE_MALLINFO
+ after_mallinfo = mallinfo();
+
+ l = after_mallinfo.uordblks > before_mallinfo.uordblks ? after_mallinfo.uordblks - before_mallinfo.uordblks : 0;
+@@ -102,6 +113,10 @@ int mac_selinux_init(const char *prefix) {
+ log_debug("Successfully loaded SELinux database in %s, size on heap is %iK.",
+ format_timespan(timespan, sizeof(timespan), after_timestamp - before_timestamp, 0),
+ (l+1023)/1024);
++#else
++ log_debug("Successfully loaded SELinux database in %s",
++ format_timespan(timespan, sizeof(timespan), after_timestamp - before_timestamp, 0));
++#endif
+ }
+ #endif
+
+--
+2.4.3
+
diff --git a/package/eudev/0003-build-sys-check-for-strndupa.patch b/package/eudev/0003-build-sys-check-for-strndupa.patch
new file mode 100644
index 0000000000..9cbd5850ae
--- /dev/null
+++ b/package/eudev/0003-build-sys-check-for-strndupa.patch
@@ -0,0 +1,69 @@
+From 0b04a8347981ceb1030768c3002ac3c2bc0a0bf1 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Thu, 30 Jul 2015 17:31:31 +0200
+Subject: [PATCH] build-sys: check for strndupa
+
+strndupa is a GNU extension, therefore it's not available
+for all libc libraries (musl).
+
+This patch is based on the one proposed by Emil Renner Berthing for
+systemd [1].
+
+[1] http://lists.freedesktop.org/archives/systemd-devel/2014-September/023190.html
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ configure.ac | 3 ++-
+ src/shared/missing.h | 11 +++++++++++
+ src/shared/selinux-util.c | 1 +
+ 3 files changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4a293b2..9c383c2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -66,8 +66,9 @@ AC_C_INLINE
+ AC_TYPE_MODE_T
+ AC_TYPE_PID_T
+ AC_CHECK_MEMBERS([struct stat.st_rdev])
+-AC_CHECK_DECLS([getrandom, gettid, name_to_handle_at, accept4, mkostemp], [], [], [[#include <sys/types.h>
++AC_CHECK_DECLS([getrandom, gettid, name_to_handle_at, accept4, mkostemp, strndupa], [], [], [[#include <sys/types.h>
+ #include <unistd.h>
++#include <string.h>
+ #include <sys/mount.h>
+ #include <fcntl.h>
+ #include <sys/socket.h>
+diff --git a/src/shared/missing.h b/src/shared/missing.h
+index 2dc9d84..9031119 100644
+--- a/src/shared/missing.h
++++ b/src/shared/missing.h
+@@ -158,3 +158,14 @@ static inline int name_to_handle_at(int fd, const char *name, struct file_handle
+ #ifndef AT_EMPTY_PATH
+ #define AT_EMPTY_PATH 0x1000
+ #endif
++
++#if !HAVE_DECL_STRNDUPA
++#define strndupa(s, n) \
++ ({ \
++ const char *__old = (s); \
++ size_t __len = strnlen(__old, (n)); \
++ char *__new = (char *)alloca(__len + 1); \
++ __new[__len] = '\0'; \
++ (char *)memcpy(__new, __old, __len); \
++ })
++#endif
+diff --git a/src/shared/selinux-util.c b/src/shared/selinux-util.c
+index 4e0866b..a18a5a7 100644
+--- a/src/shared/selinux-util.c
++++ b/src/shared/selinux-util.c
+@@ -31,6 +31,7 @@
+ #include "strv.h"
+ #include "path-util.h"
+ #include "selinux-util.h"
++#include "missing.h"
+
+ #ifdef HAVE_SELINUX
+ DEFINE_TRIVIAL_CLEANUP_FUNC(security_context_t, freecon);
+--
+2.4.3
+
diff --git a/package/eudev/eudev.mk b/package/eudev/eudev.mk
index f587acd759..b916acdc80 100644
--- a/package/eudev/eudev.mk
+++ b/package/eudev/eudev.mk
@@ -11,6 +11,11 @@ EUDEV_LICENSE = GPLv2+ (programs), LGPLv2.1+ (libraries)
EUDEV_LICENSE_FILES = COPYING
EUDEV_INSTALL_STAGING = YES
+# configure.ac is patched by:
+# 0002-build-sys-check-for-mallinfo.patch
+# 0003-build-sys-check-for-strndupa.patch
+EUDEV_AUTORECONF = YES
+
# mq_getattr is in librt
EUDEV_CONF_ENV += LIBS=-lrt
diff --git a/package/exfat/exfat.mk b/package/exfat/exfat.mk
index 097c3acbe6..5508ec3a5f 100644
--- a/package/exfat/exfat.mk
+++ b/package/exfat/exfat.mk
@@ -10,15 +10,24 @@ EXFAT_SOURCE = fuse-exfat-$(EXFAT_VERSION).tar.gz
EXFAT_DEPENDENCIES = host-scons libfuse
EXFAT_LICENSE = GPLv3+
EXFAT_LICENSE_FILES = COPYING
+EXFAT_CFLAGS = $(TARGET_CFLAGS) -std=c99
+
+# The endianness handling functions in platform.h are protected behind
+# ifdef __GLIBC__ which musl doesn't define even though it does
+# provide the endianness handling interface. Work around it by
+# ensuring __GLIBC__ is defined.
+ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
+EXFAT_CFLAGS += -D__GLIBC__
+endif
define EXFAT_BUILD_CMDS
(cd $(@D); \
- $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS))
+ $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(EXFAT_CFLAGS)" $(SCONS))
endef
define EXFAT_INSTALL_TARGET_CMDS
(cd $(@D); \
- $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS) \
+ $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(EXFAT_CFLAGS)" $(SCONS) \
DESTDIR=$(TARGET_DIR)/usr/sbin install)
endef
diff --git a/package/fan-ctrl/Config.in b/package/fan-ctrl/Config.in
index fa23aed694..869631683b 100644
--- a/package/fan-ctrl/Config.in
+++ b/package/fan-ctrl/Config.in
@@ -1,9 +1,6 @@
config BR2_PACKAGE_FAN_CTRL
bool "fan-ctrl"
depends on BR2_USE_MMU # fork()
- # SourceForge is down, not backup location, let's disable for
- # now.
- depends on BR2_BROKEN
help
Fan-ctrl is a little daemon that controls the speed of one
or more system or CPU fans. It does so by monitoring
diff --git a/package/filemq/filemq.mk b/package/filemq/filemq.mk
index d3dc6da9dc..a79e8f4965 100644
--- a/package/filemq/filemq.mk
+++ b/package/filemq/filemq.mk
@@ -4,7 +4,7 @@
#
################################################################################
-FILEMQ_VERSION = 482797b8aa30fcc9ea1377aabdf2b0769f9f698e
+FILEMQ_VERSION = acf6c0e003fee938994ad803aa7b78245dca57ba
FILEMQ_SITE = $(call github,zeromq,filemq,$(FILEMQ_VERSION))
FILEMQ_AUTORECONF = YES
diff --git a/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch b/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch
new file mode 100644
index 0000000000..df5372bb5a
--- /dev/null
+++ b/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch
@@ -0,0 +1,12 @@
+Upstream status: In progress
+
+--- a/libgcc/config/nios2/linux-atomic.c
++++ b/libgcc/config/nios2/linux-atomic.c
+@@ -20,7 +20,6 @@
+ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+-#include <asm/unistd.h>
+ #define EFAULT 14
+ #define EBUSY 16
+ #define ENOSYS 38
diff --git a/package/gnuradio/0002-types_t-is-need-for-mode_t.patch b/package/gnuradio/0002-types_t-is-need-for-mode_t.patch
new file mode 100644
index 0000000000..7730d2dfc6
--- /dev/null
+++ b/package/gnuradio/0002-types_t-is-need-for-mode_t.patch
@@ -0,0 +1,19 @@
+To avoid :
+error: 'mode_t' has not been declared
+sys/types.h must be included
+
+Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
+---
+Index: gnuradio-3.7.5/gnuradio-runtime/include/gnuradio/logger.h.in
+===================================================================
+--- gnuradio-3.7.5.orig/gnuradio-runtime/include/gnuradio/logger.h.in
++++ gnuradio-3.7.5/gnuradio-runtime/include/gnuradio/logger.h.in
+@@ -44,6 +44,8 @@
+
+ #ifdef _MSC_VER
+ typedef unsigned short mode_t;
++#else
++#include <sys/types.h>
+ #endif
+
+ #include <gnuradio/api.h>
diff --git a/package/gnutls/gnutls.hash b/package/gnutls/gnutls.hash
index 620caae944..4496a2be70 100644
--- a/package/gnutls/gnutls.hash
+++ b/package/gnutls/gnutls.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 80a471c723572a43ddbe75d7825a3275f640650cc99eae42963ab39b9d0b7552 gnutls-3.3.16.tar.xz
+sha256 b40f158030a92f450a07b20300a3996710ca19800848d9f6fd62493170c5bbb4 gnutls-3.3.17.1.tar.xz
diff --git a/package/gnutls/gnutls.mk b/package/gnutls/gnutls.mk
index 4593034efb..82d9d29816 100644
--- a/package/gnutls/gnutls.mk
+++ b/package/gnutls/gnutls.mk
@@ -5,7 +5,7 @@
################################################################################
GNUTLS_VERSION_MAJOR = 3.3
-GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).16
+GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).17.1
GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz
GNUTLS_SITE = ftp://ftp.gnutls.org/gcrypt/gnutls/v$(GNUTLS_VERSION_MAJOR)
GNUTLS_LICENSE = GPLv3+ LGPLv2.1+
diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in
index bc995277bc..d268fc6bf7 100644
--- a/package/gstreamer1/gst1-plugins-bad/Config.in
+++ b/package/gstreamer1/gst1-plugins-bad/Config.in
@@ -557,14 +557,24 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_NEON
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENCV
bool "opencv"
- depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
- depends on BROKEN # gst1-plugin-opencv does not (yet) support opencv >=3.x
+ depends on BR2_PACKAGE_OPENCV
+ # Remove the following opencv modules when gstreamer fixes the
+ # problem of including the old "cv.h" header
+ # bug: https://bugzilla.gnome.org/show_bug.cgi?id=725163
+ select BR2_PACKAGE_OPENCV_LIB_CALIB3D
+ select BR2_PACKAGE_OPENCV_LIB_CONTRIB
+ select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV_LIB_FLANN
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_LEGACY
+ select BR2_PACKAGE_OPENCV_LIB_ML
+ select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
+ select BR2_PACKAGE_OPENCV_LIB_VIDEO
help
GStreamer OpenCV Plugins
-comment "opencv plugin needs a toolchain w/ C++, NPTL"
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL
+comment "opencv plugin needs OpenCV-2.4"
+ depends on !BR2_PACKAGE_OPENCV
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPUS
bool "opus"
diff --git a/package/guile/guile.mk b/package/guile/guile.mk
index fed79a64f0..2bd719887c 100644
--- a/package/guile/guile.mk
+++ b/package/guile/guile.mk
@@ -28,6 +28,10 @@ GUILE_CFLAGS = \
-DHAVE_GC_GET_FREE_SPACE_DIVISOR \
-DHAVE_GC_SET_FINALIZE_ON_DEMAND
+ifeq ($(BR2_STATIC_LIBS),y)
+GUILE_CFLAGS += -DGC_NO_DLOPEN
+endif
+
GUILE_CONF_ENV += GUILE_FOR_BUILD=$(HOST_DIR)/usr/bin/guile \
CFLAGS="$(TARGET_CFLAGS) $(GUILE_CFLAGS)"
diff --git a/package/haveged/haveged.mk b/package/haveged/haveged.mk
index c68f76633c..66d69a6d7a 100644
--- a/package/haveged/haveged.mk
+++ b/package/haveged/haveged.mk
@@ -9,6 +9,10 @@ HAVEGED_SITE = http://www.issihosts.com/haveged
HAVEGED_LICENSE = GPLv3+
HAVEGED_LICENSE_FILES = COPYING
+ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y)
+HAVEGED_CONF_OPTS += --enable-clock_gettime=yes
+endif
+
define HAVEGED_INSTALL_INIT_SYSV
$(INSTALL) -m 755 -D package/haveged/S21haveged \
$(TARGET_DIR)/etc/init.d/S21haveged
diff --git a/package/imlib2/0007-fix-compilation-issues-with-musl.patch b/package/imlib2/0007-fix-compilation-issues-with-musl.patch
new file mode 100644
index 0000000000..50e88a230f
--- /dev/null
+++ b/package/imlib2/0007-fix-compilation-issues-with-musl.patch
@@ -0,0 +1,31 @@
+From bdfa1169c549122a8dc848b84469458101adeb20 Mon Sep 17 00:00:00 2001
+From: Brendan Heading <brendanheading@gmail.com>
+Date: Mon, 3 Aug 2015 12:44:55 +0100
+Subject: [PATCH 1/1] fix compilation issues with musl
+
+Using time_t strictly requires time.h to be included.
+
+NOTE I've stuck to the convention on this project where most of the
+files appear to pick up most of their headers by including "common.h".
+
+Upstream-status: pending
+Signed-off-by: Brendan Heading <brendanheading@gmail.com>
+---
+ src/lib/common.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/lib/common.h b/src/lib/common.h
+index 798965f..9053826 100644
+--- a/src/lib/common.h
++++ b/src/lib/common.h
+@@ -9,6 +9,7 @@
+ #include <config.h>
+ #include <string.h>
+ #include <math.h>
++#include <time.h>
+ #ifdef WITH_DMALLOC
+ #include <dmalloc.h>
+ #endif
+--
+2.4.3
+
diff --git a/package/ipkg/0001-fix-musl-build.patch b/package/ipkg/0001-fix-musl-build.patch
new file mode 100644
index 0000000000..fce3ec4afb
--- /dev/null
+++ b/package/ipkg/0001-fix-musl-build.patch
@@ -0,0 +1,50 @@
+Remove __P macro usage to fix musl build
+
+__P() is used for compatibility with old K&R C compilers. With ANSI C
+this macro has no effect.
+
+This fixes a compilation error with musl libc because of undeclared
+__P.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/md5.c
+===================================================================
+--- a/md5.c
++++ b/md5.c
+@@ -97,21 +97,21 @@
+
+ /* Initialize structure containing state of computation.
+ (RFC 1321, 3.3: Step 3) */
+-static void md5_init_ctx __P ((struct md5_ctx *ctx));
++static void md5_init_ctx (struct md5_ctx *ctx);
+
+ /* Starting with the result of former calls of this function (or the
+ initialization function update the context for the next LEN bytes
+ starting at BUFFER.
+ It is necessary that LEN is a multiple of 64!!! */
+-static void md5_process_block __P ((const void *buffer, size_t len,
+- struct md5_ctx *ctx));
++static void md5_process_block (const void *buffer, size_t len,
++ struct md5_ctx *ctx);
+
+ /* Starting with the result of former calls of this function (or the
+ initialization function update the context for the next LEN bytes
+ starting at BUFFER.
+ It is NOT required that LEN is a multiple of 64. */
+-static void md5_process_bytes __P ((const void *buffer, size_t len,
+- struct md5_ctx *ctx));
++static void md5_process_bytes (const void *buffer, size_t len,
++ struct md5_ctx *ctx);
+
+ /* Process the remaining bytes in the buffer and put result from CTX
+ in first 16 bytes following RESBUF. The result is always in little
+@@ -120,7 +120,7 @@
+
+ IMPORTANT: On some systems it is required that RESBUF is correctly
+ aligned for a 32 bits value. */
+-static void *md5_finish_ctx __P ((struct md5_ctx *ctx, void *resbuf));
++static void *md5_finish_ctx (struct md5_ctx *ctx, void *resbuf);
+
+ //----------------------------------------------------------------------------
+ //--------end of md5.h
diff --git a/package/kexec-lite/Config.in b/package/kexec-lite/Config.in
index 8417dac94f..ede5cba43c 100644
--- a/package/kexec-lite/Config.in
+++ b/package/kexec-lite/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_KEXEC_LITE
depends on BR2_powerpc || BR2_powerpc64
depends on !BR2_STATIC_LIBS # dtc, elfutils
depends on BR2_USE_WCHAR # elfutils
+ depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
select BR2_PACKAGE_ELFUTILS
select BR2_PACKAGE_DTC
select BR2_PACKAGE_DTC_PROGRAMS
@@ -13,6 +14,7 @@ config BR2_PACKAGE_KEXEC_LITE
This package is a tiny implementation of the kexec userspace
components, for devicetree-based platforms.
-comment "kexec-lite needs a toolchain w/ wchar, dynamic library"
+comment "kexec-lite needs a uClibc or (e)glibc toolchain w/ wchar, dynamic library"
depends on BR2_powerpc || BR2_powerpc64
- depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR
+ depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR \
+ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
diff --git a/package/kodi/Config.in b/package/kodi/Config.in
index c3b3183ebc..797f59d7c5 100644
--- a/package/kodi/Config.in
+++ b/package/kodi/Config.in
@@ -158,13 +158,15 @@ config BR2_PACKAGE_KODI_LIBCEC
bool "hdmi cec"
depends on !BR2_STATIC_LIBS # libcec
depends on BR2_PACKAGE_HAS_UDEV
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # libcec
select BR2_PACKAGE_LIBCEC
help
Enable CEC (Consumer Electronics Control) support.
Select this if you want Kodi to support HDMI CEC.
comment "hdmi cec support needs udev /dev management and a toolchain w/ dynamic library"
- depends on BR2_STATIC_LIBS || !BR2_PACKAGE_HAS_UDEV
+ depends on BR2_STATIC_LIBS || !BR2_PACKAGE_HAS_UDEV || \
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
config BR2_PACKAGE_KODI_LIRC
bool "lirc"
diff --git a/package/libcec/Config.in b/package/libcec/Config.in
index 2cf011da5d..2dddc53635 100644
--- a/package/libcec/Config.in
+++ b/package/libcec/Config.in
@@ -4,6 +4,7 @@ config BR2_PACKAGE_LIBCEC
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_WCHAR
depends on !BR2_STATIC_LIBS
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11
select BR2_PACKAGE_LIBPLATFORM
help
libcec allows you in combination with the right hardware to
@@ -12,6 +13,7 @@ config BR2_PACKAGE_LIBCEC
http://libcec.pulse-eight.com
-comment "libcec needs a toolchain w/ C++, wchar, threads, dynamic library"
+comment "libcec needs a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 4.7"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
- !BR2_USE_WCHAR || BR2_STATIC_LIBS
+ !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \
+ BR2_STATIC_LIBS
diff --git a/package/libev/0001-fix-sparcv8-condition.patch b/package/libev/0001-fix-sparcv8-condition.patch
new file mode 100644
index 0000000000..d411f834f5
--- /dev/null
+++ b/package/libev/0001-fix-sparcv8-condition.patch
@@ -0,0 +1,29 @@
+Fix SPARCv8 condition
+
+The define provided by the compiler on SPARCv8 is __sparc_v8__ and not
+__sparcv8. From a SPARCv8 gcc:
+
+$ sparc-linux-gcc --version
+sparc-linux-gcc (Buildroot 2015.08-git-00497-ge110081) 4.9.3
+[...]
+$ sparc-linux-gcc -dM -E - < /dev/null | grep sparc
+#define sparc 1
+#define __sparc__ 1
+#define __sparc 1
+#define __sparc_v8__ 1
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/ev.c
+===================================================================
+--- a/ev.c
++++ b/ev.c
+@@ -649,7 +649,7 @@
+ #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb" : : : "memory")
+ #elif __aarch64__
+ #define ECB_MEMORY_FENCE __asm__ __volatile__ ("dmb ish" : : : "memory")
+- #elif (__sparc || __sparc__) && !__sparcv8
++ #elif (__sparc || __sparc__) && !__sparc_v8__
+ #define ECB_MEMORY_FENCE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad | #StoreStore | #StoreLoad" : : : "memory")
+ #define ECB_MEMORY_FENCE_ACQUIRE __asm__ __volatile__ ("membar #LoadStore | #LoadLoad" : : : "memory")
+ #define ECB_MEMORY_FENCE_RELEASE __asm__ __volatile__ ("membar #LoadStore | #StoreStore")
diff --git a/package/libgpgme/libgpgme.mk b/package/libgpgme/libgpgme.mk
index ec64d37e8e..186809985c 100644
--- a/package/libgpgme/libgpgme.mk
+++ b/package/libgpgme/libgpgme.mk
@@ -22,7 +22,7 @@ LIBGPGME_CONF_OPTS = --with-gpg=/usr/bin/gpg \
--disable-gpg-test
# Handle argp-standalone or it errors out during build
-ifeq ($(BR2_PACKAGE_ARGP_STANDALONE)$(BR2_TOOLCHAIN_USES_UCLIBC),yy)
+ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y)
LIBGPGME_CONF_ENV += LIBS="-largp"
LIBGPGME_DEPENDENCIES += argp-standalone
endif
diff --git a/package/libgudev/Config.in b/package/libgudev/Config.in
new file mode 100644
index 0000000000..9b64ffc4f9
--- /dev/null
+++ b/package/libgudev/Config.in
@@ -0,0 +1,22 @@
+config BR2_PACKAGE_LIBGUDEV
+ bool "libgudev"
+ depends on BR2_INIT_SYSTEMD
+ depends on BR2_USE_WCHAR # gettext
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_USE_MMU # fork()
+ select BR2_PACKAGE_LIBGLIB2
+ help
+ This library provides GObject bindings for libudev. It was
+ originally part of udev-extras, then udev, then systemd.
+ It's now a project on its own. Required for building some
+ programs that use udev, when using systemd.
+
+ When systemd is not used, libgudev is directly provided by
+ eudev.
+
+ https://wiki.gnome.org/Projects/libgudev
+
+comment "libgudev needs a toolchain w/ wchar, threads"
+ depends on BR2_USE_MMU
+ depends on BR2_INIT_SYSTEMD
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/libgudev/libgudev.mk b/package/libgudev/libgudev.mk
new file mode 100644
index 0000000000..dce9cd8e71
--- /dev/null
+++ b/package/libgudev/libgudev.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# libgudev
+#
+################################################################################
+
+LIBGUDEV_VERSION = 230
+LIBGUDEV_SOURCE = libgudev-$(LIBGUDEV_VERSION).tar.xz
+LIBGUDEV_SITE = http://ftp.gnome.org/pub/GNOME/sources/libgudev/$(LIBGUDEV_VERSION)
+LIBGUDEV_INSTALL_STAGING = YES
+LIBGUDEV_DEPENDENCIES = host-pkgconf udev libglib2
+LIBGUDEV_LICENSE = LGPLv2.1+
+LIBGUDEV_LICENSE_FILES = COPYING
+
+$(eval $(autotools-package))
diff --git a/package/libiio/Config.in b/package/libiio/Config.in
index 21496ed7c5..99da4c1c10 100644
--- a/package/libiio/Config.in
+++ b/package/libiio/Config.in
@@ -37,9 +37,13 @@ config BR2_PACKAGE_LIBIIO_TESTS
bool "Install test programs"
select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND
select BR2_PACKAGE_LIBIIO_NETWORK_BACKEND
+ depends on BR2_TOOLCHAIN_HAS_THREADS
help
Install the test programs (iio_info, iio_genxml, iio_readdev).
+comment "IIO test programs need a toolchain w/ threads"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS
+
config BR2_PACKAGE_LIBIIO_BINDINGS_CSHARP
bool "Install C# bindings"
depends on BR2_PACKAGE_MONO
diff --git a/package/libmbim/Config.in b/package/libmbim/Config.in
index bd34dd4ba1..e79d51f3a9 100644
--- a/package/libmbim/Config.in
+++ b/package/libmbim/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_LIBMBIM
depends on BR2_USE_WCHAR # libglib2
depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
depends on BR2_PACKAGE_HAS_UDEV
+ select BR2_PACKAGE_LIBGUDEV if BR2_INIT_SYSTEMD
select BR2_PACKAGE_LIBGLIB2
help
libmbim is a glib-based library for talking to WWAN modems and
diff --git a/package/libmbim/libmbim.mk b/package/libmbim/libmbim.mk
index 8d49f281c6..cfba08e7e3 100644
--- a/package/libmbim/libmbim.mk
+++ b/package/libmbim/libmbim.mk
@@ -13,6 +13,10 @@ LIBMBIM_INSTALL_STAGING = YES
LIBMBIM_DEPENDENCIES = libglib2 udev
+ifeq ($(BR2_INIT_SYSTEMD),y)
+LIBMBIM_DEPENDENCIES += libgudev
+endif
+
# we don't want -Werror
LIBMBIM_CONF_OPTS = --enable-more-warnings=no
diff --git a/package/libnetfilter_queue/0002-musl.patch b/package/libnetfilter_queue/0002-musl.patch
new file mode 100644
index 0000000000..3765d58af3
--- /dev/null
+++ b/package/libnetfilter_queue/0002-musl.patch
@@ -0,0 +1,45 @@
+From 5348da83403383a60831f4c297841afb98692887 Mon Sep 17 00:00:00 2001
+From: Felix Janda <felix.janda@posteo.de>
+Date: Sat, 16 May 2015 14:45:46 +0200
+Subject: [PATCH] extra: Define _GNU_SOURCE to get members of tcphdr&ucphdr
+
+The source uses linux names for members of tcphdr. For example
+"source" instead of "th_sport", ... musl libc's headers need
+_GNU_SOURCE defined in order to expose these.
+
+Signed-off-by: Felix Janda <felix.janda@posteo.de>
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+[yann.morin.1998@free.fr: backported from upstream]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ src/extra/tcp.c | 1 +
+ src/extra/udp.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/extra/tcp.c b/src/extra/tcp.c
+index bf161aa..d1cd79d 100644
+--- a/src/extra/tcp.c
++++ b/src/extra/tcp.c
+@@ -15,6 +15,7 @@
+ #include <arpa/inet.h>
+ #include <netinet/ip.h>
+ #include <netinet/ip6.h>
++#define _GNU_SOURCE
+ #include <netinet/tcp.h>
+
+ #include <libnetfilter_queue/libnetfilter_queue.h>
+diff --git a/src/extra/udp.c b/src/extra/udp.c
+index 6e6baed..8c44a66 100644
+--- a/src/extra/udp.c
++++ b/src/extra/udp.c
+@@ -14,6 +14,7 @@
+ #include <arpa/inet.h>
+ #include <netinet/ip.h>
+ #include <netinet/ip6.h>
++#define _GNU_SOURCE
+ #include <netinet/udp.h>
+
+ #include <libnetfilter_queue/libnetfilter_queue.h>
+--
+1.9.1
+
diff --git a/package/libnfnetlink/0002-musl.patch b/package/libnfnetlink/0002-musl.patch
new file mode 100644
index 0000000000..bee7898aae
--- /dev/null
+++ b/package/libnfnetlink/0002-musl.patch
@@ -0,0 +1,32 @@
+Include <sys/types.h> to get the u_int* definitions
+
+This is needed to fix the build with the musl C library, and this
+patch comes from
+http://git.alpinelinux.org/cgit/aports/plain/main/libnfnetlink/musl-fix-includes.patch.
+
+It will no longer be needed with upcoming upstream releases of
+libnfnetlink, since they have switched to use the <stdint.h> types
+instead. However this change was too invasive to backport.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+--- libnfnetlink-1.0.1.orig/include/libnfnetlink/linux_nfnetlink.h
++++ libnfnetlink-1.0.1/include/libnfnetlink/linux_nfnetlink.h
+@@ -1,6 +1,6 @@
+ #ifndef _NFNETLINK_H
+ #define _NFNETLINK_H
+-#include <linux/types.h>
++#include <sys/types.h>
+ #include <libnfnetlink/linux_nfnetlink_compat.h>
+
+ enum nfnetlink_groups {
+--- libnfnetlink-1.0.1.orig/include/libnfnetlink/libnfnetlink.h
++++ libnfnetlink-1.0.1/include/libnfnetlink/libnfnetlink.h
+@@ -15,6 +15,7 @@
+ #define aligned_u64 unsigned long long __attribute__((aligned(8)))
+ #endif
+
++#include <sys/types.h>
+ #include <sys/socket.h> /* for sa_family_t */
+ #include <linux/netlink.h>
+ #include <libnfnetlink/linux_nfnetlink.h>
diff --git a/package/libpfm4/libpfm4.mk b/package/libpfm4/libpfm4.mk
index 982500296c..147be7c2b9 100644
--- a/package/libpfm4/libpfm4.mk
+++ b/package/libpfm4/libpfm4.mk
@@ -11,7 +11,10 @@ LIBPFM4_LICENSE = libpfm4 license
LIBPFM4_LICENSE_FILES = COPYING
LIBPFM4_INSTALL_STAGING = YES
-LIBPFM4_FLAGS = SYS=Linux ARCH=$(BR2_ARCH) CC="$(TARGET_CC)" LDCONFIG=true
+LIBPFM4_FLAGS = SYS=Linux ARCH=$(BR2_ARCH) \
+ CC="$(TARGET_CC)" LDCONFIG=true \
+ CONFIG_PFMLIB_SHARED=$(if $(BR2_STATIC_LIBS),n,y) \
+ DBG=
define LIBPFM4_BUILD_CMDS
$(MAKE) -C $(@D) $(LIBPFM4_FLAGS)
diff --git a/package/libpthsem/libpthsem.mk b/package/libpthsem/libpthsem.mk
index f9f6f71813..b8a3d7d561 100644
--- a/package/libpthsem/libpthsem.mk
+++ b/package/libpthsem/libpthsem.mk
@@ -13,6 +13,20 @@ LIBPTHSEM_AUTORECONF = YES
LIBPTHSEM_INSTALL_STAGING = YES
LIBPTHSEM_CONFIG_SCRIPTS = pthsem-config
+# Force the setjmp/longjmp detection, because the test being done in
+# the AC_CHECK_SJLJ macro is not cross-compilation safe: it checks the
+# running kernel with 'uname -r', and checks the C library version by
+# looking at /usr/include/features.h. In terms of kernel version, it
+# assumes any version later than 2.2.x is fine, except that it doesn't
+# recognize 4.x as a valid kernel version, recognizing such systems as
+# "braindead" and therefore falling back to the 'sjljlx' value for
+# ac_cv_check_sjlj. In terms of C library version, it wants
+# __GLIBC_MINOR to be at least 1. Since both conditions are true for
+# all Buildroot systems, we can simply force the setjmp/longjmp
+# detection to ssjlj.
+LIBPTHSEM_CONF_ENV += \
+ ac_cv_check_sjlj=ssjlj
+
ifeq ($(BR2_PACKAGE_LIBPTHSEM_COMPAT),y)
LIBPTHSEM_CONF_OPTS += --enable-compat
LIBPTHSEM_CONFIG_SCRIPTS += pth-config
diff --git a/package/librtas/Config.in b/package/librtas/Config.in
index e437fa12bf..2e6063f830 100644
--- a/package/librtas/Config.in
+++ b/package/librtas/Config.in
@@ -10,4 +10,5 @@ config BR2_PACKAGE_LIBRTAS
http://librtas.sourceforge.net/
comment "librtas needs an (e)glibc toolchain"
+ depends on BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
depends on !BR2_TOOLCHAIN_USES_GLIBC
diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in
index eb892e4a95..bc8298db4c 100644
--- a/package/libselinux/Config.in
+++ b/package/libselinux/Config.in
@@ -4,6 +4,8 @@ config BR2_PACKAGE_LIBSELINUX
select BR2_PACKAGE_PCRE
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on !BR2_STATIC_LIBS
+ # Toolchain issue: "fixup not contained within frag"
+ depends on !BR2_arc
help
libselinux is the runtime SELinux library that provides
interfaces (e.g. library functions for the SELinux kernel
@@ -16,4 +18,5 @@ config BR2_PACKAGE_LIBSELINUX
http://selinuxproject.org/page/Main_Page
comment "libselinux needs a toolchain w/ threads, dynamic library"
+ depends on !BR2_arc
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/libsemanage/Config.in b/package/libsemanage/Config.in
index 78b6315064..d9a83c0cf5 100644
--- a/package/libsemanage/Config.in
+++ b/package/libsemanage/Config.in
@@ -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_arc
help
libsemanage is the policy management library. It uses
libsepol for binary policy manipulation and libselinux for
@@ -17,4 +18,5 @@ config BR2_PACKAGE_LIBSEMANAGE
http://selinuxproject.org/page/Main_Page
comment "libsemanage needs a toolchain w/ threads, dynamic library"
+ depends on !BR2_arc
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/libsigsegv/Config.in b/package/libsigsegv/Config.in
index 35f6d67b6c..e5224da2ee 100644
--- a/package/libsigsegv/Config.in
+++ b/package/libsigsegv/Config.in
@@ -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
- depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC)
+ # No ucontext support in uclibc for powerpc and superh
+ depends on !((BR2_powerpc || BR2_sh) && 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_TOOLCHAIN_USES_UCLIBC
+ depends on (BR2_powerpc || BR2_sh) && BR2_TOOLCHAIN_USES_UCLIBC
diff --git a/package/libsodium/libsodium.mk b/package/libsodium/libsodium.mk
index c032863969..18035f3379 100644
--- a/package/libsodium/libsodium.mk
+++ b/package/libsodium/libsodium.mk
@@ -10,4 +10,8 @@ LIBSODIUM_LICENSE = ISC
LIBSODIUM_LICENSE_FILES = LICENSE
LIBSODIUM_INSTALL_STAGING = YES
+ifeq ($(BR2_arc),y)
+LIBSODIUM_CONF_OPTS += --disable-pie
+endif
+
$(eval $(autotools-package))
diff --git a/package/libv4l/Config.in b/package/libv4l/Config.in
index 0437ba1872..d137613b9b 100644
--- a/package/libv4l/Config.in
+++ b/package/libv4l/Config.in
@@ -5,14 +5,16 @@ config BR2_PACKAGE_LIBV4L
depends on !BR2_STATIC_LIBS # dlopen()
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # media headers
- select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC
+ # wait for libv4l 1.7+ for musl compatibility
+ depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC
+ select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
help
libv4l is a collection of libraries which adds a thin abstraction
layer on top of video4linux2 devices. libv4l consists of 3 different
libraries: libv4lconvert, libv4l1 and libv4l2.
- http://freshmeat.net/projects/libv4l
+ http://linuxtv.org/wiki/index.php/V4l-utils
if BR2_PACKAGE_LIBV4L
@@ -29,7 +31,8 @@ config BR2_PACKAGE_LIBV4L_UTILS
endif
-comment "libv4l needs a toolchain w/ threads, dynamic library, C++ and headers >= 3.0"
+comment "libv4l needs an uClibc or (e)glibc toolchain w/ threads, dynamic library, C++ and headers >= 3.0"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
- || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
+ || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \
+ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
diff --git a/package/libwebsock/0003-fix-incorrect-inline.patch b/package/libwebsock/0003-fix-incorrect-inline.patch
new file mode 100644
index 0000000000..043df45bd3
--- /dev/null
+++ b/package/libwebsock/0003-fix-incorrect-inline.patch
@@ -0,0 +1,66 @@
+utf: do not define decode() to be inline
+
+Currently, decode() is prototyped in utf.h, its body is in utf.c and it
+is called from util.c.
+
+However, decode() is defined to be inline, which can not work since,
+when compiling util.c, the body of decode() is out-of-scope for that
+compilation unit.
+
+Furthermore, decode() uses a utf8d, which is a static defined in utf.c .
+So utf8d is not visible when compiling util.c either.
+
+This means that the definition of decode() along with utf8d is basically
+wrong, and is now failing with gcc-5.x, with warnings like so:
+
+ libtool: compile: /home/ymorin/dev/buildroot/O/host/usr/bin/arm-linux-gcc -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wmissing-prototypes -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c utf.c -fPIC -DPIC -o .libs/libwebsock_la-utf.o
+ utf.c:36:12: warning: ‘utf8d’ is static but used in inline function ‘decode’ which is not static
+ *state = utf8d[256 + *state*16 + type];
+ ^
+ utf.c:30:19: warning: ‘utf8d’ is static but used in inline function ‘decode’ which is not static
+ uint32_t type = utf8d[byte];
+ ^
+ libtool: compile: /home/ymorin/dev/buildroot/O/host/usr/bin/arm-linux-gcc -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wmissing-prototypes -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c util.c -fPIC -DPIC -o .libs/libwebsock_la-util.o
+ In file included from websock.h:73:0,
+ from util.c:20:
+ utf.h:25:17: warning: inline function ‘decode’ declared but never defined
+ uint32_t inline decode(uint32_t *state, uint32_t *codep, uint32_t byte);
+ ^
+
+This results in decode() to be omitted from libwebsock.so, and thus link
+failures when another program wants to link with -lwebsock.
+
+The simplest solution is to not inline decode() at all.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Note: an alternative would be to move both decode() and utf8d into
+decode.h nad ditch decode.c if decode really must be inline. This is
+left as an execise for an interested party. But since upstream hasn't
+seen a single commit in more than a year now... :-(
+
+diff -durN a/src/utf.c b/src/utf.c
+--- a/src/utf.c 2014-07-15 01:43:20.000000000 +0200
++++ b/src/utf.c 2015-08-22 22:29:38.667393786 +0200
+@@ -24,7 +24,7 @@
+ 1,3,1,1,1,1,1,3,1,3,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // s7..s8
+ };
+
+-uint32_t inline
++uint32_t
+ decode(uint32_t* state, uint32_t* codep, uint32_t byte)
+ {
+ uint32_t type = utf8d[byte];
+diff -durN a/src/utf.h b/src/utf.h
+--- a/src/utf.h 2014-07-15 01:43:20.000000000 +0200
++++ b/src/utf.h 2015-08-22 22:29:10.439227396 +0200
+@@ -22,7 +22,7 @@
+
+ #include <stdint.h>
+
+-uint32_t inline decode(uint32_t *state, uint32_t *codep, uint32_t byte);
++uint32_t decode(uint32_t *state, uint32_t *codep, uint32_t byte);
+
+
+ #endif /* UTF_H_ */
diff --git a/package/lightning/Config.in b/package/lightning/Config.in
index 8caf39f402..6750114be2 100644
--- a/package/lightning/Config.in
+++ b/package/lightning/Config.in
@@ -1,7 +1,13 @@
+comment "lightning needs a toolchain w/ dynamic library"
+ depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || \
+ BR2_mipsel || BR2_arm || BR2_powerpc
+ depends on BR2_STATIC_LIBS
+
config BR2_PACKAGE_LIGHTNING
bool "lightning"
depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || \
BR2_mipsel || BR2_arm || BR2_powerpc
+ depends on !BR2_STATIC_LIBS
help
GNU lightning is a library that generates
assembly language code at run-time.
diff --git a/package/linux-pam/Config.in b/package/linux-pam/Config.in
index 6b92886cf1..f5088b967f 100644
--- a/package/linux-pam/Config.in
+++ b/package/linux-pam/Config.in
@@ -10,11 +10,12 @@ config BR2_PACKAGE_LINUX_PAM
# https://lists.fedorahosted.org/pipermail/linux-pam-commits/2012-February/000105.html
# for details.
depends on !BR2_STATIC_LIBS
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
help
A Security Framework that Provides Authentication for Applications
http://linux-pam.org
-comment "linux-pam needs a toolchain w/ wchar, locale, dynamic library"
+comment "linux-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
- || BR2_STATIC_LIBS
+ || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
diff --git a/package/lirc-tools/Config.in b/package/lirc-tools/Config.in
index 8ce83a0515..a0fbbb8304 100644
--- a/package/lirc-tools/Config.in
+++ b/package/lirc-tools/Config.in
@@ -2,6 +2,8 @@ config BR2_PACKAGE_LIRC_TOOLS
bool "lirc-tools"
depends on BR2_USE_MMU # fork()
depends on BR2_TOOLCHAIN_HAS_THREADS
+ # dlopen()
+ depends on !BR2_STATIC_LIBS
help
LIRC is a package that supports receiving and sending IR
signals of the most common IR remote controls. It contains a
@@ -15,6 +17,6 @@ config BR2_PACKAGE_LIRC_TOOLS
http://www.lirc.org/
-comment "lirc-tools needs a toolchain w/ threads"
+comment "lirc-tools needs a toolchain w/ threads, dynamic library"
depends on BR2_USE_MMU
- depends on !BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/lm-sensors/0003-musl-fix-includes.patch b/package/lm-sensors/0003-musl-fix-includes.patch
new file mode 100644
index 0000000000..69325abce0
--- /dev/null
+++ b/package/lm-sensors/0003-musl-fix-includes.patch
@@ -0,0 +1,100 @@
+From 6d85773537c9f277ed342f57500f784ccb2c4a3e Mon Sep 17 00:00:00 2001
+From: Brendan Heading <brendanheading@gmail.com>
+Date: Sun, 30 Aug 2015 22:26:39 +0100
+Subject: [PATCH 1/1] fix compilation under musl
+
+This patch removes conditional compilation elements that are designed to
+support glibc versions earlier than 2.0, which were causing the build
+to fail under musl.
+
+Based on the patch found here :
+
+http://git.alpinelinux.org/cgit/aports/plain/main/lm_sensors/musl-fix-includes.patch?id=fece1d19448dbd3a56fd8ac70443116187141848
+
+This patch has been accepted for integration upstream and should be
+present in the next release. See :
+
+http://www.lm-sensors.org/changeset/6314
+
+Signed-off-by: Brendan Heading <brendanheading@gmail.com>
+Upstream-Status: pending
+---
+ prog/dump/isadump.c | 6 ------
+ prog/dump/isaset.c | 6 ------
+ prog/dump/superio.c | 5 -----
+ prog/dump/util.c | 5 -----
+ 4 files changed, 22 deletions(-)
+
+diff --git a/prog/dump/isadump.c b/prog/dump/isadump.c
+index e031e47..88e4c3b 100644
+--- a/prog/dump/isadump.c
++++ b/prog/dump/isadump.c
+@@ -36,13 +36,7 @@
+ #include "util.h"
+ #include "superio.h"
+
+-
+-/* To keep glibc2 happy */
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
+ #include <sys/io.h>
+-#else
+-#include <asm/io.h>
+-#endif
+
+ #ifdef __powerpc__
+ unsigned long isa_io_base = 0; /* XXX for now */
+diff --git a/prog/dump/isaset.c b/prog/dump/isaset.c
+index 1d1bdad..a084c8a 100644
+--- a/prog/dump/isaset.c
++++ b/prog/dump/isaset.c
+@@ -32,13 +32,7 @@
+ #include <string.h>
+ #include "util.h"
+
+-
+-/* To keep glibc2 happy */
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
+ #include <sys/io.h>
+-#else
+-#include <asm/io.h>
+-#endif
+
+ #ifdef __powerpc__
+ unsigned long isa_io_base = 0; /* XXX for now */
+diff --git a/prog/dump/superio.c b/prog/dump/superio.c
+index 1af7358..31e0d78 100644
+--- a/prog/dump/superio.c
++++ b/prog/dump/superio.c
+@@ -20,12 +20,7 @@
+ */
+
+ #include <stdlib.h>
+-
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
+ #include <sys/io.h>
+-#else
+-#include <asm/io.h>
+-#endif
+
+ #include "superio.h"
+
+diff --git a/prog/dump/util.c b/prog/dump/util.c
+index 676c339..d8b0927 100644
+--- a/prog/dump/util.c
++++ b/prog/dump/util.c
+@@ -11,12 +11,7 @@
+ #include <stdio.h>
+ #include "util.h"
+
+-/* To keep glibc2 happy */
+-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0
+ #include <sys/io.h>
+-#else
+-#include <asm/io.h>
+-#endif
+
+ /* Return 1 if we should continue, 0 if we should abort */
+ int user_ack(int def)
+--
+2.4.3
+
diff --git a/package/lrzsz/Config.in b/package/lrzsz/Config.in
index 70f10cd0a7..1b5da14871 100644
--- a/package/lrzsz/Config.in
+++ b/package/lrzsz/Config.in
@@ -1,6 +1,16 @@
config BR2_PACKAGE_LRZSZ
bool "lrzsz"
+ # It could technically build in a static-only environment, but
+ # it unconditionally redefines the error() and error_at_line()
+ # functions, which clashes with the definition from
+ # uClibc. Since the autotools packaging dates back from 1998,
+ # lots of work is needed to fix it, and do some proper tests
+ # on the availability of such functions.
+ depends on !BR2_STATIC_LIBS
help
Portable and fast implementation of the X/Y/Zmodem protocols.
http://www.ohse.de/uwe/software/lrzsz.html
+
+comment "lrzsz needs a toolchain w/ dynamic library"
+ depends on BR2_STATIC_LIBS
diff --git a/package/ltrace/Config.in b/package/ltrace/Config.in
index 2b42a846e1..ff4d7bd3b0 100644
--- a/package/ltrace/Config.in
+++ b/package/ltrace/Config.in
@@ -9,6 +9,7 @@ config BR2_PACKAGE_LTRACE
select BR2_PACKAGE_ELFUTILS
depends on BR2_USE_WCHAR # elfutils
depends on !BR2_STATIC_LIBS # elfutils
+ depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
help
Debugging program which runs a specified command until it exits.
While the command is executing, ltrace intercepts and records
@@ -17,5 +18,6 @@ config BR2_PACKAGE_LTRACE
http://ltrace.org
-comment "ltrace needs toolchain w/ wchar, dynamic library"
- depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS
+comment "ltrace needs a uclibc or (e)glibc toolchain w/ wchar, dynamic library"
+ depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
+ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
diff --git a/package/ltrace/ltrace.mk b/package/ltrace/ltrace.mk
index 73ae28e964..eac42be328 100644
--- a/package/ltrace/ltrace.mk
+++ b/package/ltrace/ltrace.mk
@@ -19,8 +19,9 @@ LTRACE_POST_PATCH_HOOKS += LTRACE_CREATE_CONFIG_M4
# ltrace can use libunwind only if libc has backtrace() support
# We don't normally do so for uClibc and we can't know if it's external
+# Also ltrace with libunwind support is broken for MIPS so we disable it
ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
-ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),)
+ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC)$(BR2_mips)$(BR2_mipsel),)
# --with-elfutils only selects unwinding support backend. elfutils is a
# mandatory dependency regardless.
LTRACE_CONF_OPTS += --with-libunwind=yes --with-elfutils=no
diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in
index 93ae02aaf1..a658986593 100644
--- a/package/mesa3d/Config.in
+++ b/package/mesa3d/Config.in
@@ -10,6 +10,7 @@ menuconfig BR2_PACKAGE_MESA3D
select BR2_PACKAGE_XLIB_LIBXFIXES if BR2_PACKAGE_XORG7
select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_XORG7
depends on BR2_INSTALL_LIBSTDCPP
+ depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
# Triggers the _gp link issue in nios2
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305
@@ -76,10 +77,10 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST
This is a software opengl implementation using the Gallium3D
infrastructure.
-comment "DRI drivers needs X.Org and a toolchain w/ dynamic library"
- depends on BR2_STATIC_LIBS || !BR2_PACKAGE_XORG7
+comment "DRI drivers need X.Org"
+ depends on !BR2_PACKAGE_XORG7
-if !BR2_STATIC_LIBS && BR2_PACKAGE_XORG7
+if BR2_PACKAGE_XORG7
comment "DRI drivers"
@@ -114,7 +115,7 @@ config BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON
help
Legacy Radeon driver for R100 series GPUs.
-endif # !BR2_STATIC_LIBS && BR2_PACKAGE_XORG7
+endif # BR2_PACKAGE_XORG7
if BR2_PACKAGE_MESA3D_DRIVER
@@ -144,7 +145,8 @@ config BR2_PACKAGE_PROVIDES_LIBGLES
endif # BR2_PACKAGE_MESA3D
-comment "mesa3d needs a toolchain w/ C++, NPTL"
+comment "mesa3d needs a toolchain w/ C++, NPTL, dynamic library"
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
+ BR2_STATIC_LIBS
diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk
index f2a1ffdf41..3c5c9eb5f1 100644
--- a/package/mesa3d/mesa3d.mk
+++ b/package/mesa3d/mesa3d.mk
@@ -58,11 +58,6 @@ MESA3D_CONF_OPTS += \
--disable-xa
endif
-ifeq ($(BR2_STATIC_LIBS),)
-# fix for "configure: error: Cannot use static libraries for DRI drivers"
-MESA3D_CONF_OPTS += --disable-static
-endif
-
# Drivers
#Gallium Drivers
diff --git a/package/midori/Config.in b/package/midori/Config.in
index b3ab8a9e3a..11a280621d 100644
--- a/package/midori/Config.in
+++ b/package/midori/Config.in
@@ -1,7 +1,8 @@
-comment "midori needs libgtk2 and a toolchain w/ C++, wchar, NPTL"
+comment "midori needs libgtk2 and a toolchain w/ C++, wchar, NPTL, gcc >= 4.8"
depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
- !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_LIBGTK2
+ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_LIBGTK2 \
+ || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
config BR2_PACKAGE_MIDORI
bool "midori"
@@ -16,6 +17,7 @@ config BR2_PACKAGE_MIDORI
depends on BR2_INSTALL_LIBSTDCPP # webkitgtk24
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # webkitgtk24
depends on BR2_USE_WCHAR # webkitgtk24
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # webkitgtk24
depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS
help
Midori is a lightweight web browser based on WebKit
diff --git a/package/midori/midori.mk b/package/midori/midori.mk
index ed2cdd86cc..197f51ab66 100644
--- a/package/midori/midori.mk
+++ b/package/midori/midori.mk
@@ -37,7 +37,7 @@ ifeq ($(BR2_PACKAGE_MIDORI_HTTPS),y)
MIDORI_DEPENDENCIES += glib-networking
endif
-ifeq ($(BR2_PACKAGE_LIBGTK3),y)
+ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
MIDORI_CONF_OPTS += -DUSE_GTK3=ON -DHALF_BRO_INCOM_WEBKIT2=ON
MIDORI_DEPENDENCIES += libgtk3
else
diff --git a/package/mono/0004-fixing-initialization-of-have-vasprintf.patch b/package/mono/0004-fixing-initialization-of-have-vasprintf.patch
new file mode 100644
index 0000000000..55648593a5
--- /dev/null
+++ b/package/mono/0004-fixing-initialization-of-have-vasprintf.patch
@@ -0,0 +1,29 @@
+From 1c3d615d93b20d10c2729478d5104977dd9af23f Mon Sep 17 00:00:00 2001
+From: Angelo Compagnucci <angelo.compagnucci@gmail.com>
+Date: Wed, 5 Aug 2015 12:59:45 +0200
+Subject: [PATCH] Fixing initialization of have_vasprintf
+
+This patch initialize properly have_vasprintf in case vasprint function is found.
+Solves multiple definition of `vasprintf' error in case vasprint is not properly detected.
+
+Patch is upstream:
+
+ https://github.com/mono/mono/commit/40c171799b671718969ee28a02f92884d7fd181e
+
+Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
+---
+ eglib/configure.ac | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/eglib/configure.ac b/eglib/configure.ac
+index 5281419..4bf91e5 100644
+--- a/eglib/configure.ac
++++ b/eglib/configure.ac
+@@ -135,6 +135,7 @@ AC_CHECK_SIZEOF(void *)
+ AC_CHECK_SIZEOF(long)
+ AC_CHECK_SIZEOF(long long)
+ AC_CHECK_FUNCS(strlcpy stpcpy strtok_r rewinddir vasprintf)
++AC_CHECK_FUNC(vasprintf, have_vasprintf=yes)
+ AC_CHECK_FUNCS(getrlimit)
+
+ #
diff --git a/package/mono/Config.in b/package/mono/Config.in
index 0c7129b91a..0f57703ec9 100644
--- a/package/mono/Config.in
+++ b/package/mono/Config.in
@@ -7,6 +7,7 @@ config BR2_PACKAGE_MONO
bool "mono"
depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_STATIC_LIBS
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
help
An open source, cross-platform, implementation of C#
@@ -14,5 +15,6 @@ config BR2_PACKAGE_MONO
http://download.mono-project.com/sources/mono/
-comment "mono needs a toolchain w/ threads"
- depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "mono needs a toolchain w/ threads, dynamic library"
+ depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/mosh/Config.in b/package/mosh/Config.in
index 4ad7d61023..868b9ffcb3 100644
--- a/package/mosh/Config.in
+++ b/package/mosh/Config.in
@@ -1,11 +1,14 @@
-comment "mosh needs a toolchain w/ threads"
- depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "mosh needs a toolchain w/ C++, threads, dynamic library"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
+ || BR2_STATIC_LIBS
depends on !(BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64)
config BR2_PACKAGE_MOSH
bool "mosh"
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 # protobuf
- depends on BR2_TOOLCHAIN_HAS_THREADS #protobuf
+ depends on BR2_INSTALL_LIBSTDCPP # protobuf
+ depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf
+ depends on !BR2_STATIC_LIBS # protobuf
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" # protobuf
select BR2_PACKAGE_PROTOBUF
select BR2_PACKAGE_NCURSES
diff --git a/package/mpd/0002-musl-gcc5-fixes.patch b/package/mpd/0002-musl-gcc5-fixes.patch
new file mode 100644
index 0000000000..a4c65cceec
--- /dev/null
+++ b/package/mpd/0002-musl-gcc5-fixes.patch
@@ -0,0 +1,56 @@
+musl gcc5 fixes
+
+Fetch from:
+http://git.alpinelinux.org/cgit/aports/plain/main/mpd/musl-gcc5-fixes.patch
+
+Problem has been reported upstream and closed with WONTFIX:
+http://bugs.musicpd.org/view.php?id=4387
+http://bugs.musicpd.org/view.php?id=4110
+
+however...
+
+POSIX does not permit using PTHREAD_COND_INITIALIZER except for static
+initialization, and certainly does not permit using it as a value
+
+also POSIX does not specify the type of the object (it's opaque) so if
+there are any types for which their code would be invalid C++, then their
+code is invalid
+
+also, volatile in the type is necessary. without that, LTO can break the code.
+
+Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
+
+--- ./src/notify.hxx.orig
++++ ./src/notify.hxx
+@@ -28,7 +28,7 @@
+ Cond cond;
+ bool pending;
+
+-#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__)
++#if defined(__GLIBC__)
+ constexpr
+ #endif
+ notify():pending(false) {}
+--- ./src/thread/PosixCond.hxx.orig
++++ ./src/thread/PosixCond.hxx
+@@ -41,7 +41,7 @@
+ pthread_cond_t cond;
+
+ public:
+-#if defined(__NetBSD__) || defined(__BIONIC__)
++#if !defined(__GLIBC__)
+ /* NetBSD's PTHREAD_COND_INITIALIZER is not compatible with
+ "constexpr" */
+ PosixCond() {
+--- ./src/thread/PosixMutex.hxx.orig
++++ ./src/thread/PosixMutex.hxx
+@@ -41,7 +41,7 @@
+ pthread_mutex_t mutex;
+
+ public:
+-#if defined(__NetBSD__) || defined(__BIONIC__)
++#if !defined(__GLIBC__)
+ /* NetBSD's PTHREAD_MUTEX_INITIALIZER is not compatible with
+ "constexpr" */
+ PosixMutex() {
+
diff --git a/package/msmtp/msmtp.mk b/package/msmtp/msmtp.mk
index bff2620314..7c8261e704 100644
--- a/package/msmtp/msmtp.mk
+++ b/package/msmtp/msmtp.mk
@@ -10,6 +10,7 @@ MSMTP_SOURCE = msmtp-$(MSMTP_VERSION).tar.xz
MSMTP_DEPENDENCIES = host-pkgconf
MSMTP_CONF_OPTS = \
--without-libidn \
+ --disable-gai-idn \
--without-libgsasl
MSMTP_LICENSE = GPLv3+
MSMTP_LICENSE_FILES = COPYING
diff --git a/package/nbd/0001-avoid-name-clashing.patch b/package/nbd/0001-avoid-name-clashing.patch
new file mode 100644
index 0000000000..b3ea9c99c5
--- /dev/null
+++ b/package/nbd/0001-avoid-name-clashing.patch
@@ -0,0 +1,28 @@
+rename err() function to avoid clashing with err() form C library
+
+err() is a function available in the C library, so when static linking,
+there is a clash at link timebecause the function is provided both by
+nbd and the C library:
+ http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/build-end.log
+
+Fix that by renaming err() to nbd_err() and providing a small maco
+wrapper to avoid touching the many call sites.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Upstream status: hack, not submitted.
+
+diff -durN nbd-3.11.orig/cliserv.h nbd-3.11/cliserv.h
+--- nbd-3.11.orig/cliserv.h 2015-05-25 12:27:56.000000000 +0200
++++ nbd-3.11/cliserv.h 2015-08-13 19:28:21.609467505 +0200
+@@ -75,7 +75,8 @@
+ void setmysockopt(int sock);
+ void err_nonfatal(const char *s);
+
+-void err(const char *s) G_GNUC_NORETURN;
++void nbd_err(const char *s) G_GNUC_NORETURN;
++#define err(S) nbd_err(S)
+
+ void logging(const char* name);
+
diff --git a/package/netatalk/Config.in b/package/netatalk/Config.in
index cdb2039a40..ec6ec2c15d 100644
--- a/package/netatalk/Config.in
+++ b/package/netatalk/Config.in
@@ -2,6 +2,7 @@ config BR2_PACKAGE_NETATALK
bool "netatalk"
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # fork()
+ depends on !BR2_STATIC_LIBS
select BR2_PACKAGE_BERKELEYDB
select BR2_PACKAGE_OPENSSL
select BR2_PACKAGE_LIBEVENT
@@ -13,6 +14,6 @@ config BR2_PACKAGE_NETATALK
http://netatalk.sourceforge.net/
-comment "netatalk needs a toolchain w/ threads"
+comment "netatalk needs a toolchain w/ threads, dynamic library"
depends on BR2_USE_MMU
- depends on !BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
diff --git a/package/network-manager/Config.in b/package/network-manager/Config.in
index bcf8f90685..5a0e636c95 100644
--- a/package/network-manager/Config.in
+++ b/package/network-manager/Config.in
@@ -11,6 +11,7 @@ config BR2_PACKAGE_NETWORK_MANAGER
select BR2_PACKAGE_GNUTLS
select BR2_PACKAGE_LIBGCRYPT
select BR2_PACKAGE_LIBNL
+ select BR2_PACKAGE_LIBGUDEV if BR2_INIT_SYSTEMD
select BR2_PACKAGE_UTIL_LINUX
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
select BR2_PACKAGE_WIRELESS_TOOLS
diff --git a/package/network-manager/network-manager.mk b/package/network-manager/network-manager.mk
index 25ad2a29cc..03c7d63dd7 100644
--- a/package/network-manager/network-manager.mk
+++ b/package/network-manager/network-manager.mk
@@ -63,6 +63,10 @@ ifeq ($(BR2_PACKAGE_DHCPCD),y)
NETWORK_MANAGER_CONF_OPTS += --with-dhcpcd=/sbin/dhcpcd
endif
+ifeq ($(BR2_INIT_SYSTEMD),y)
+NETWORK_MANAGER_DEPENDENCIES += libgudev
+endif
+
# uClibc by default doesn't have backtrace support, so don't use it
ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
NETWORK_MANAGER_CONF_OPTS += --disable-crashtrace
diff --git a/package/nodejs/0.10.40/0005-fix-musl-USE-MISC-build-issue.patch b/package/nodejs/0.10.40/0005-fix-musl-USE-MISC-build-issue.patch
new file mode 100644
index 0000000000..128058df29
--- /dev/null
+++ b/package/nodejs/0.10.40/0005-fix-musl-USE-MISC-build-issue.patch
@@ -0,0 +1,47 @@
+From 0bc482abeb814573251ecafb5a1e045c885b13a2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
+Date: Mon, 25 May 2015 16:22:57 +0200
+Subject: [PATCH 1/1] Fix musl __USE_MISC issue
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The musl C library does not define __USE_MISC and so libuv (built-in dependency)
+does not use the correct struct stat definition for musl.
+
+The feature test macro __USE_MISC is defined by glibc if _BSD_SOURCE or
+_SVID_SOURCE is defined.
+
+The libuv build system enables the feature test macro _GNU_SOURCE for linux
+builds.
+
+Since glibc 2.19, defining _GNU_SOURCE also has the effect of implicitly
+defining _DEFAULT_SOURCE - the replacement for _BSD_SOURCE and _SVID_SOURCE.
+
+In glibc versions before 2.20, defining _GNU_SOURCE also had the effect of
+implicitly defining _BSD_SOURCE and _SVID_SOURCE. This is also true for uClibc.
+
+Alltogether, we can safely replace __USE_MISC by _GNU_SOURCE to support building
+nodejs 0.10.x with the musl C library.
+
+Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
+---
+ deps/uv/src/fs-poll.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/deps/uv/src/fs-poll.c b/deps/uv/src/fs-poll.c
+index ad27f18..094447e 100644
+--- a/deps/uv/src/fs-poll.c
++++ b/deps/uv/src/fs-poll.c
+@@ -198,7 +198,7 @@ static int statbuf_eq(const uv_statbuf_t* a, const uv_statbuf_t* b) {
+
+ /* Jump through a few hoops to get sub-second granularity on Linux. */
+ # if defined(__linux__)
+-# if defined(__USE_MISC) /* _BSD_SOURCE || _SVID_SOURCE */
++# if defined(_GNU_SOURCE) /* _BSD_SOURCE || _SVID_SOURCE */
+ if (a->st_ctim.tv_nsec != b->st_ctim.tv_nsec) return 0;
+ if (a->st_mtim.tv_nsec != b->st_mtim.tv_nsec) return 0;
+ # else
+--
+2.4.1
+
diff --git a/package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch b/package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch
new file mode 100644
index 0000000000..f2bf247c2e
--- /dev/null
+++ b/package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch
@@ -0,0 +1,26 @@
+From cd4f5d9d8a10c368584e8e714ebb0f9695267063 Mon Sep 17 00:00:00 2001
+From: Simon Marchi <simon.marchi@polymtl.ca>
+Date: Mon, 10 Aug 2015 15:01:42 -0400
+Subject: [PATCH] Remove -fvisibiliy-inlines-hidden
+
+Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
+---
+ Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 714e435..17a23e2 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -32,7 +32,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = --enable-python-libs
+ COMMON_CXXFLAGS_ONLY_WARNINGS = \
+ -I$(top_srcdir)/include \
+ -I$(top_builddir)/include \
+- -Wall -Wformat -W -fvisibility-inlines-hidden \
++ -Wall -Wformat -W \
+ $(libprotobuf_CFLAGS)
+
+ COMMON_CXXFLAGS = $(COMMON_CXXFLAGS_ONLY_WARNINGS)
+--
+2.5.0
+
diff --git a/package/ola/Config.in b/package/ola/Config.in
index f587db5ad0..fd693ded8c 100644
--- a/package/ola/Config.in
+++ b/package/ola/Config.in
@@ -1,5 +1,6 @@
-comment "ola needs a toolchain w/ C++, threads, wchar"
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+comment "ola needs a toolchain w/ C++, threads, wchar, dynamic library"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
+ || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64
config BR2_PACKAGE_OLA
@@ -8,6 +9,7 @@ config BR2_PACKAGE_OLA
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
select BR2_PACKAGE_UTIL_LINUX
depends on BR2_INSTALL_LIBSTDCPP # protobuf
+ depends on !BR2_STATIC_LIBS # protobuf
depends on BR2_USE_WCHAR # util-linux
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 # protobuf
diff --git a/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch b/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
new file mode 100644
index 0000000000..9e8c2e98eb
--- /dev/null
+++ b/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
@@ -0,0 +1,49 @@
+From ea50be0529c248961e1b66293f8a9e4b807294a6 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 12 Oct 2014 10:17:23 +0200
+Subject: [PATCH] core: fix x86 PIC code compilation
+
+This bug was triggered by Buildroot autobuilders [1,2], causing this
+kind of failures [3,4]:
+
+ [ 14%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o
+ /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp: In function '(static initializers for /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp)':
+ /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp:280:10: error: inconsistent operand constraints in an 'asm'
+ make[3]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1
+
+[1] http://buildroot.org/
+[2] http://autobuild.buildroot.org/
+[3] http://autobuild.buildroot.org/?reason=opencv-2.4.10
+[4] http://autobuild.buildroot.org/results/483/4838285b25d6293a5cf0bb9eadd5040a7c75d766/build-end.log
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ modules/core/src/system.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/modules/core/src/system.cpp b/modules/core/src/system.cpp
+index 5a970d5..e9ffdc7 100644
+--- a/modules/core/src/system.cpp
++++ b/modules/core/src/system.cpp
+@@ -267,14 +267,17 @@ struct HWFeatures
+ : "cc"
+ );
+ #else
++ // We need to preserve ebx since we are compiling PIC code.
++ // This means we cannot use "=b" for the 2nd output register.
+ asm volatile
+ (
+ "pushl %%ebx\n\t"
+ "movl $7,%%eax\n\t"
+ "movl $0,%%ecx\n\t"
+ "cpuid\n\t"
++ "movl %%ebx,%1\n\t"
+ "popl %%ebx\n\t"
+- : "=a"(cpuid_data[0]), "=b"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
++ : "=a"(cpuid_data[0]), "=r"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
+ :
+ : "cc"
+ );
+--
+2.1.2
+
diff --git a/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch b/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
new file mode 100644
index 0000000000..d71235d424
--- /dev/null
+++ b/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
@@ -0,0 +1,40 @@
+superres: Fix return value VideoFrameSource_GPU
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+
+From 2e393ab83362743ba1825ad4b31d4a2925c606b4 Mon Sep 17 00:00:00 2001
+From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+Date: Mon, 27 Oct 2014 13:39:35 +0000
+Subject: [PATCH] superres: Fix return value VideoFrameSource_GPU
+
+superres module fails to compile with the following error messages:
+
+[100%] Building CXX object modules/superres/CMakeFiles/opencv_superres.dir/src/super_resolution.cpp.o
+/opencv-2.4.10/modules/superres/src/frame_source.cpp: In function 'cv::Ptr<cv::superres::FrameSource> cv::superres::createFrameSource_Video_GPU(const string&)':
+/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected type-specifier before 'VideoFrameSource'
+/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: could not convert '(int*)operator new(4ul)' from 'int*' to 'cv::Ptr<cv::superres::FrameSource>'
+/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected ';' before 'VideoFrameSource'
+/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:41: error: 'VideoFrameSource' was not declared in this scope
+/opencv-2.4.10/modules/superres/src/frame_source.cpp:264:1: error: control reaches end of non-void function [-Werror=return-type]
+cc1plus: some warnings being treated as errors
+make[3]: *** [modules/superres/CMakeFiles/opencv_superres.dir/src/frame_source.cpp.o] Error 1
+make[3]: *** Waiting for unfinished jobs....
+
+This is caused because the return value of the createFrameSource_Video_GPU function should be a VideoFrameSource_GPU object.
+---
+ modules/superres/src/frame_source.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/superres/src/frame_source.cpp b/modules/superres/src/frame_source.cpp
+index 5f59a98..c5b2e76 100644
+--- a/modules/superres/src/frame_source.cpp
++++ b/modules/superres/src/frame_source.cpp
+@@ -260,7 +260,7 @@ namespace
+
+ Ptr<FrameSource> cv::superres::createFrameSource_Video_GPU(const string& fileName)
+ {
+- return new VideoFrameSource(fileName);
++ return new VideoFrameSource_GPU(fileName);
+ }
+
+ #endif // HAVE_OPENCV_GPU
diff --git a/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch b/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
new file mode 100644
index 0000000000..768f08d778
--- /dev/null
+++ b/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
@@ -0,0 +1,156 @@
+From eceada586bbf18fc267e437522ec4f1f23ddc656 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Fri, 3 Oct 2014 00:32:40 +0200
+Subject: [PATCH] cmake/OpenCVGenPkgconfig.cmake: rework opencv.pc generation
+
+Using absolute path to locate the components in the "Libs:" field of the
+*.pc can badly break cross-compilation, especially when building
+statically linked objects.
+
+Indeed, pkg-config automatically replaces the '-I...' and '-L...' paths
+when the PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR environment
+variables are set [1]. This feature is very helpful and common in
+cross-compilation framework like Buildroot [2,3].
+
+When there are absolute paths in the *.pc files, pkg-config won't be
+able to do the path substitions for these paths when the afromentioned
+environment variables are set.
+In such case, since the prefix is the target one, not the sysroot one,
+these libraries' abolute paths will point to:
+- in the best case: a non-existing file (i.e. these files do not exists
+ on the host system;
+- at worst: the host system's libraries. This will make the linking
+ failed because these host system's libraries will most likely not be
+ build for the target architecture [4].
+
+So, this patch replace the components' absolute paths by the form:
+ -L<libdir> -l<libname>
+
+This way, the linker will be able to resolve each dependency path,
+whatever the kind of objects/build (shared object or static build) it
+is dealing with.
+
+Note that for static link, the library order does matter [5]. The order
+of the opencv components has been carefully chosen to comply with this
+requirement.
+
+Fixes #3931
+
+[1] http://linux.die.net/man/1/pkg-config
+[2] http://buildroot.org/
+[3] http://git.buildroot.net/buildroot/tree/package/pkgconf/pkg-config.in
+[4] http://autobuild.buildroot.net/results/e8a/e8a859276db34aff87ef181b0cce98916b0afc90/build-end.log
+[5] http://stackoverflow.com/questions/45135/linker-order-gcc
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+---
+Note: this patch properly applies on top of the master branch, though it
+ has been written on top of the 2.4 branch.
+---
+ cmake/OpenCVGenPkgconfig.cmake | 64 +++++++++++++++++++++++++++---------------
+ 1 file changed, 42 insertions(+), 22 deletions(-)
+
+diff --git a/cmake/OpenCVGenPkgconfig.cmake b/cmake/OpenCVGenPkgconfig.cmake
+index fa57db9..183c56d 100644
+--- a/cmake/OpenCVGenPkgconfig.cmake
++++ b/cmake/OpenCVGenPkgconfig.cmake
+@@ -8,10 +8,6 @@
+ #
+ # ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install"
+ # -------------------------------------------------------------------------------------------
+-set(prefix "${CMAKE_INSTALL_PREFIX}")
+-set(exec_prefix "\${prefix}")
+-set(libdir "") #TODO: need link paths for OpenCV_EXTRA_COMPONENTS
+-set(includedir "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}")
+
+ if(CMAKE_BUILD_TYPE MATCHES "Release")
+ set(ocv_optkind OPT)
+@@ -35,42 +31,66 @@ ocv_list_reverse(OpenCV_LIB_COMPONENTS)
+ ocv_list_reverse(OpenCV_EXTRA_COMPONENTS)
+
+ #build the list of components
+-set(OpenCV_LIB_COMPONENTS_ "")
+-foreach(CVLib ${OpenCV_LIB_COMPONENTS})
+- get_target_property(libpath ${CVLib} LOCATION_${CMAKE_BUILD_TYPE})
+- get_filename_component(libname "${libpath}" NAME)
+
+- if(INSTALL_TO_MANGLED_PATHS)
+- set(libname "${libname}.${OPENCV_VERSION}")
+- endif()
++# Note:
++# when linking against static libraries, if libfoo depends on libbar, then
++# libfoo must come first in the linker flags.
++
++# world is a special target whose library should come first, especially for
++# static link.
++if(OpenCV_LIB_COMPONENTS MATCHES "opencv_world")
++ list(REMOVE_ITEM OpenCV_LIB_COMPONENTS "opencv_world")
++ list(INSERT OpenCV_LIB_COMPONENTS 0 "opencv_world")
++endif()
++
++set(OpenCV_LIB_COMPONENTS_)
++foreach(CVLib ${OpenCV_LIB_COMPONENTS})
+
+- #need better solution....
+- if(libpath MATCHES "3rdparty")
+- set(installDir "share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}")
++ get_target_property(libloc ${CVLib} LOCATION_${CMAKE_BUILD_TYPE})
++ if(libloc MATCHES "3rdparty")
++ set(libpath "\${exec_prefix}/share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}")
+ else()
+- set(installDir "${OPENCV_LIB_INSTALL_PATH}")
++ set(libpath "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}")
+ endif()
++ list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libpath}")
++
++ get_filename_component(libname ${CVLib} NAME_WE)
++ string(REGEX REPLACE "^lib" "" libname "${libname}")
++ list(APPEND OpenCV_LIB_COMPONENTS_ "-l${libname}")
+
+- set(OpenCV_LIB_COMPONENTS_ "${OpenCV_LIB_COMPONENTS_} \${exec_prefix}/${installDir}/${libname}")
+ endforeach()
+
+ # add extra dependencies required for OpenCV
+-set(OpenCV_LIB_COMPONENTS ${OpenCV_LIB_COMPONENTS_})
+ if(OpenCV_EXTRA_COMPONENTS)
+ foreach(extra_component ${OpenCV_EXTRA_COMPONENTS})
+
+- if(extra_component MATCHES "^-[lL]" OR extra_component MATCHES "[\\/]")
+- set(maybe_l_prefix "")
++ if(extra_component MATCHES "^-[lL]")
++ set(libprefix "")
++ set(libname "${extra_component}")
++ elseif(extra_component MATCHES "[\\/]")
++ get_filename_component(libdir "${extra_component}" PATH)
++ list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libdir}")
++ get_filename_component(libname "${extra_component}" NAME_WE)
++ string(REGEX REPLACE "^lib" "" libname "${libname}")
++ set(libprefix "-l")
+ else()
+- set(maybe_l_prefix "-l")
++ set(libprefix "-l")
++ set(libname "${extra_component}")
+ endif()
+-
+- set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} ${maybe_l_prefix}${extra_component}")
++ list(APPEND OpenCV_LIB_COMPONENTS_ "${libprefix}${libname}")
+
+ endforeach()
+ endif()
+
++list(REMOVE_DUPLICATES OpenCV_LIB_COMPONENTS_)
++string(REPLACE ";" " " OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS_}")
++
+ #generate the .pc file
++set(prefix "${CMAKE_INSTALL_PREFIX}")
++set(exec_prefix "\${prefix}")
++set(libdir "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}")
++set(includedir "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}")
++
+ if(INSTALL_TO_MANGLED_PATHS)
+ set(OPENCV_PC_FILE_NAME "opencv-${OPENCV_VERSION}.pc")
+ else()
+--
+2.4.1
+
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index 0b5d1acb66..aca5174079 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -1,18 +1,13 @@
menuconfig BR2_PACKAGE_OPENCV
- bool "opencv"
+ bool "opencv-2.4"
select BR2_PACKAGE_ZLIB
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
- depends on !BR2_STATIC_LIBS # include dlfcn.h
help
OpenCV (Open Source Computer Vision) is a library of programming
functions for real time computer vision.
- Note that the opencv_core module and the opencv_hal library
- are always built and installed, not matter which other
- modules are enabled below.
-
http://opencv.org/
if BR2_PACKAGE_OPENCV
@@ -21,216 +16,107 @@ comment "OpenCV modules"
config BR2_PACKAGE_OPENCV_LIB_CALIB3D
bool "calib3d"
- select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ default y
+ help
+ Include opencv_calib3d module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV_LIB_CONTRIB
+ bool "contrib"
+ default y
help
- Include opencv_calib3d (camera calibration and 3d reconstruction) module
- into the OpenCV build.
+ Include opencv_contrib module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_FEATURES2D
bool "features2d"
- select BR2_PACKAGE_OPENCV_LIB_FLANN
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_ML
+ default y
help
- Include opencv_features2d (2d features framework) module into the OpenCV
- build.
+ Include opencv_features2d module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_FLANN
bool "flann"
- # opencv_core dependency is already enabled
+ default y
help
- Include opencv_flann (clustering and search in multi-dimensional spaces)
- module into the OpenCV build.
+ Include opencv_flann module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
- bool "highgui"
- select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_VIDEOIO
+config BR2_PACKAGE_OPENCV_LIB_GPU
+ bool "gpu"
help
- Include opencv_highgui (high-level gui and media i/o) module into the
- OpenCV build.
-
-if BR2_PACKAGE_OPENCV_LIB_HIGHGUI
-
-choice
- prompt "gui toolkit"
- help
- GUI toolkit to be used by the opencv_highgui module.
-
-config BR2_PACKAGE_OPENCV_GUI_NONE
- bool "none"
-
-config BR2_PACKAGE_OPENCV_WITH_GTK
- bool "gtk2"
- depends on BR2_PACKAGE_LIBGTK2
-
-comment "gtk2 support needs libgtk2"
- depends on BR2_USE_MMU # libgtk2 -> glib2
- depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo
- depends on !BR2_PACKAGE_LIBGTK2
+ Include opencv_gpu module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_WITH_GTK3
- bool "gtk3"
- depends on BR2_PACKAGE_LIBGTK3
-
-comment "gtk3 support needs libgtk3"
- depends on BR2_USE_MMU # libgtk3 -> glib2
- depends on BR2_ARCH_HAS_ATOMICS # libgtk3 -> cairo
- depends on !BR2_PACKAGE_LIBGTK3
-
-config BR2_PACKAGE_OPENCV_WITH_QT
- bool "qt4"
- depends on BR2_PACKAGE_QT
- select BR2_PACKAGE_QT_STL
- select BR2_PACKAGE_QT_GUI_MODULE
- select BR2_PACKAGE_QT_TEST
+config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
+ bool "highgui"
+ default y
help
- Use Qt4 with QtTest and QtGui modules and STL support, as GUI toolkit.
+ Include opencv_highgui module into the OpenCV build.
-comment "qt4 support needs qt"
- depends on BR2_USE_MMU # qt
- depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
-
-config BR2_PACKAGE_OPENCV_WITH_QT5
- bool "qt5"
- depends on BR2_PACKAGE_QT5
- select BR2_PACKAGE_QT5BASE
- select BR2_PACKAGE_QT5BASE_CONCURRENT
- select BR2_PACKAGE_QT5BASE_GUI
- select BR2_PACKAGE_QT5BASE_WIDGETS
- help
- Use Qt5 with base, concurrent, test, gui and widgets components, as GUI
- toolkit.
-
-comment "qt5 support needs qt5"
- depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
-
-endchoice
-
-config BR2_PACKAGE_OPENCV_WITH_OPENGL
- bool "opengl support"
- # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5
- depends on BR2_PACKAGE_OPENCV_WITH_QT5
- # OpenGL support requires Qt5OpenGL with GL support, not GLES
- depends on BR2_PACKAGE_QT5_GL_AVAILABLE
- depends on BR2_PACKAGE_HAS_LIBGL
- select BR2_PACKAGE_QT5BASE_OPENGL
+config BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ bool "imgproc"
+ default y
help
- Enable OpenGL for UI.
-
-comment "opengl support needs an OpenGL provider"
- depends on BR2_PACKAGE_OPENCV_WITH_QT5
- depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \
- !BR2_PACKAGE_HAS_LIBGL
-
-endif # BR2_PACKAGE_OPENCV_LIB_HIGHGUI
-
+ Include opencv_imgproc module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_IMGCODECS
- bool "imgcodecs"
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+config BR2_PACKAGE_OPENCV_LIB_LEGACY
+ bool "legacy"
+ default y
help
- Include opencv_imgcodecs (image codecs) module into the OpenCV build.
+ Include opencv_legacy module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_IMGPROC
- bool "imgproc"
- # opencv_core dependency is already enabled
+config BR2_PACKAGE_OPENCV_LIB_ML
+ bool "ml (machine learning)"
+ default y
help
- Include opencv_imgproc (image processing) module into the OpenCV build.
+ Include opencv_ml module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_ML
- bool "ml"
- # opencv_core dependency is already enabled
+config BR2_PACKAGE_OPENCV_LIB_NONFREE
+ bool "nonfree"
help
- Include opencv_ml (machine learning) module into the OpenCV build.
+ Include opencv_nonfree module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
bool "objdetect"
- # opencv_core dependency is already enabled
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_ML
+ default y
help
- Include opencv_objdetect (object detection) module into the OpenCV build.
+ Include opencv_objdetect module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_PHOTO
bool "photo"
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ default y
help
- Include opencv_photo (computational photography) module into the OpenCV
- build.
+ Include opencv_photo module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_PYTHON
- bool "python"
- depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
- depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \
- || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 \
- || BR2_sh || BR2_x86_64 # python-numpy
- depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_i386 || BR2_x86_64 # python-numpy
- select BR2_PACKAGE_PYTHON_NUMPY
- help
- Include opencv_python module into the OpenCV build.
- No python example is installed.
-
-config BR2_PACKAGE_OPENCV_LIB_SHAPE
- bool "shape"
- # opencv_core dependency is already enabled
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_VIDEO
- help
- Include opencv_shape (shape descriptors and matchers) module into the
- OpenCV build.
+comment "opencv_python module requires numpy which is not yet available."
config BR2_PACKAGE_OPENCV_LIB_STITCHING
bool "stitching"
- select BR2_PACKAGE_OPENCV_LIB_CALIB3D
- select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
+ default y
help
- Include opencv_stitching (images stitching) module into the OpenCV build.
+ Include opencv_stitching module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_SUPERRES
bool "superres"
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_VIDEO
+ default y
help
- Include opencv_superres (super resolution) module into the OpenCV build.
+ Include opencv_superres "super resolution" - module into the OpenCV
+ build.
config BR2_PACKAGE_OPENCV_LIB_TS
- bool "ts"
- # opencv_core dependency is already enabled
+ bool "ts (touchscreen)"
select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
- select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_VIDEOIO
+ default y
help
- Include opencv_ts (test) module into the OpenCV build.
-
-config BR2_PACKAGE_OPENCV_LIB_VIDEOIO
- bool "videoio"
- select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- help
- Include opencv_videoio (media i/o) module into the OpenCV build.
+ Include opencv_ts module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEO
bool "video"
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ default y
help
- Include opencv_video (video analysis) module into the OpenCV build.
+ Include opencv_video module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB
bool "videostab"
- select BR2_PACKAGE_OPENCV_LIB_CALIB3D
- select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC
- select BR2_PACKAGE_OPENCV_LIB_PHOTO
- select BR2_PACKAGE_OPENCV_LIB_VIDEO
+ default y
help
- Include opencv_videostab (video stabilization) module into the OpenCV
- build.
+ Include opencv_videostab module into the OpenCV build.
comment "Test sets"
config BR2_PACKAGE_OPENCV_BUILD_TESTS
@@ -249,16 +135,8 @@ config BR2_PACKAGE_OPENCV_WITH_FFMPEG
help
Use ffmpeg from the target system.
-choice
- prompt "gstreamer support"
- help
- OpenCV prefers gstreamer-1 over gstreamer-0.10.
-
-config BR2_PACKAGE_OPENCV_WITHOUT_GSTREAMER
- bool "none"
-
config BR2_PACKAGE_OPENCV_WITH_GSTREAMER
- bool "gstreamer-0.10"
+ bool "gstreamer support"
depends on BR2_USE_MMU # gstreamer -> libglib2
depends on BR2_USE_WCHAR # gstreamer -> libglib2
depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2
@@ -266,24 +144,20 @@ config BR2_PACKAGE_OPENCV_WITH_GSTREAMER
select BR2_PACKAGE_GST_PLUGINS_BASE
select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP
-comment "gstreamer-0.10 support needs a toolchain w/ wchar, threads"
- depends on BR2_USE_MMU
- depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
-
-config BR2_PACKAGE_OPENCV_WITH_GSTREAMER1
- bool "gstreamer-1.x"
- depends on BR2_USE_MMU # gstreamer1 -> libglib2
- depends on BR2_USE_WCHAR # gstreamer1 -> libglib2
- depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2
- select BR2_PACKAGE_GSTREAMER1
- select BR2_PACKAGE_GST1_PLUGINS_BASE
- select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
-
-comment "gstreamer-1.x support needs a toolchain w/ wchar, threads"
+comment "gstreamer support needs a toolchain w/ wchar, threads"
depends on BR2_USE_MMU
depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
-endchoice
+config BR2_PACKAGE_OPENCV_WITH_GTK
+ bool "gtk support"
+ depends on BR2_PACKAGE_XORG7
+ depends on BR2_USE_WCHAR # libgtk2 -> libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> libglib2
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_USE_MMU # libgtk2 -> glib2
+ depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo
+ depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
+ select BR2_PACKAGE_LIBGTK2
config BR2_PACKAGE_OPENCV_WITH_JASPER
bool "jpeg2000 support"
@@ -307,6 +181,18 @@ config BR2_PACKAGE_OPENCV_WITH_PNG
help
Use shared libpng from the target system.
+config BR2_PACKAGE_OPENCV_WITH_QT
+ bool "qt backend support"
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_USE_MMU # qt
+ depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
+ select BR2_PACKAGE_QT
+ select BR2_PACKAGE_QT_STL
+ select BR2_PACKAGE_QT_GUI_MODULE
+ select BR2_PACKAGE_QT_TEST
+ help
+ Use Qt with QtTest module and STL support
+
config BR2_PACKAGE_OPENCV_WITH_TIFF
bool "tiff support"
select BR2_PACKAGE_TIFF
@@ -333,8 +219,5 @@ config BR2_PACKAGE_OPENCV_INSTALL_DATA
endif # BR2_PACKAGE_OPENCV
-comment "opencv needs a toolchain w/ C++, NPTL, wchar, dynamic library"
- depends on !BR2_INSTALL_LIBSTDCPP || \
- !BR2_USE_WCHAR || \
- !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
- BR2_STATIC_LIBS
+comment "opencv needs a toolchain w/ C++, NPTL, wchar"
+ depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS_NPTL)
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index bb1bcd85e9..ee1122064f 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -4,7 +4,7 @@
#
################################################################################
-OPENCV_VERSION = 3.0.0
+OPENCV_VERSION = 2.4.10
OPENCV_SITE = $(call github,itseez,opencv,$(OPENCV_VERSION))
OPENCV_INSTALL_STAGING = YES
OPENCV_LICENSE = BSD-3c
@@ -12,28 +12,19 @@ OPENCV_LICENSE_FILES = LICENSE
# OpenCV component options
OPENCV_CONF_OPTS += \
- -DBUILD_DOCS=OFF \
-DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),ON,OFF) \
-DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_TESTS),ON,OFF) \
-DBUILD_WITH_DEBUG_INFO=OFF
-ifeq ($(BR2_PACKAGE_OPENCV_BUILD_TESTS)$(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),)
-OPENCV_CONF_OPTS += -DINSTALL_TEST=OFF
-else
-OPENCV_CONF_OPTS += -DINSTALL_TEST=ON
-endif
-
# OpenCV build options
OPENCV_CONF_OPTS += \
-DBUILD_WITH_STATIC_CRT=OFF \
- -DENABLE_COVERAGE=OFF \
-DENABLE_FAST_MATH=ON \
- -DENABLE_IMPL_COLLECTION=OFF \
-DENABLE_NOISY_WARNINGS=OFF \
-DENABLE_OMIT_FRAME_POINTER=ON \
-DENABLE_PRECOMPILED_HEADERS=OFF \
-DENABLE_PROFILING=OFF \
- -DOPENCV_WARNINGS_ARE_ERRORS=OFF
+ -DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY=ON
# OpenCV link options
OPENCV_CONF_OPTS += \
@@ -48,59 +39,40 @@ OPENCV_CONF_OPTS += \
-DINSTALL_CREATE_DISTRIB=OFF
# OpenCV module selection
-# * Modules on:
-# - core: if not set, opencv does not build anything
-# - hal: core's dependency
-# * Modules off:
-# - android*: android stuff
-# - apps: programs for training classifiers
-# - java: java bindings
-# - viz: missing VTK dependency
-# - world: all-in-one module
-#
-# * Contrib modules from [1] are disabled:
-# - opencv_contrib package is not available in Buildroot;
-# - OPENCV_EXTRA_MODULES_PATH is not set.
-#
-# [1] https://github.com/Itseez/opencv_contrib
OPENCV_CONF_OPTS += \
-DBUILD_opencv_androidcamera=OFF \
-DBUILD_opencv_apps=OFF \
-DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
+ -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
-DBUILD_opencv_core=ON \
+ -DBUILD_opencv_dynamicuda=OFF \
-DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \
-DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
- -DBUILD_opencv_hal=ON \
+ -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
-DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
- -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGCODECS),ON,OFF) \
-DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
-DBUILD_opencv_java=OFF \
+ -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
-DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
+ -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
-DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
+ -DBUILD_opencv_ocl=OFF \
-DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
- -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \
+ -DBUILD_opencv_python=OFF \
-DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
-DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
-DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
-DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
- -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOIO),ON,OFF) \
-DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \
- -DBUILD_opencv_viz=OFF \
-DBUILD_opencv_world=OFF
# Hardware support options.
#
# * PowerPC support is turned off since its only effect is altering CFLAGS,
# adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
-# * fma3 and popcnt support is disabled because according to gcc manual [2], it
-# is only available on x86_64 haswell, broadwell and knl architecture.
-#
-# [2] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/x86-Options.html#x86-Options
OPENCV_CONF_OPTS += \
-DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
-DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
- -DENABLE_FMA3=OFF \
- -DENABLE_POPCNT=OFF \
-DENABLE_POWERPC=OFF \
-DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
-DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
@@ -111,19 +83,6 @@ OPENCV_CONF_OPTS += \
# Cuda stuff
OPENCV_CONF_OPTS += \
- -DBUILD_CUDA_STUBS=OFF \
- -DBUILD_opencv_cudaarithm=OFF \
- -DBUILD_opencv_cudabgsegm=OFF \
- -DBUILD_opencv_cudacodec=OFF \
- -DBUILD_opencv_cudafeatures2d=OFF \
- -DBUILD_opencv_cudafilters=OFF \
- -DBUILD_opencv_cudaimgproc=OFF \
- -DBUILD_opencv_cudalegacy=OFF \
- -DBUILD_opencv_cudaobjdetect=OFF \
- -DBUILD_opencv_cudaoptflow=OFF \
- -DBUILD_opencv_cudastereo=OFF \
- -DBUILD_opencv_cudawarping=OFF \
- -DBUILD_opencv_cudev=OFF \
-DWITH_CUBLAS=OFF \
-DWITH_CUDA=OFF \
-DWITH_CUFFT=OFF
@@ -138,10 +97,8 @@ OPENCV_CONF_OPTS += \
# Intel stuff
OPENCV_CONF_OPTS += \
- -DBUILD_WITH_DYNAMIC_IPP=OFF \
-DWITH_INTELPERC=OFF \
-DWITH_IPP=OFF \
- -DWITH_IPP_A=OFF \
-DWITH_TBB=OFF
# Smartek stuff
@@ -155,11 +112,10 @@ OPENCV_CONF_OPTS += -DWITH_XIMEA=OFF
# Non-Linux support (Android options) must remain OFF:
OPENCV_CONF_OPTS += \
- -DANDROID=OFF \
-DBUILD_ANDROID_CAMERA_WRAPPER=OFF \
-DBUILD_ANDROID_EXAMPLES=OFF \
- -DBUILD_ANDROID_SERVICE=OFF \
-DBUILD_FAT_JAVA_LIB=OFF \
+ -DBUILD_JAVA_SUPPORT=OFF \
-DINSTALL_ANDROID_EXAMPLES=OFF \
-DWITH_ANDROID_CAMERA=OFF
@@ -174,17 +130,15 @@ OPENCV_CONF_OPTS += \
-DWITH_CSTRIPES=OFF \
-DWITH_DSHOW=OFF \
-DWITH_MSMF=OFF \
- -DWITH_PTHREADS_PF=OFF \
-DWITH_VFW=OFF \
-DWITH_VIDEOINPUT=OFF \
-DWITH_WIN32UI=OFF
-# Software/3rd-party support options:
-# - disable all examples
+# Software/3rd-party support options.
OPENCV_CONF_OPTS += \
- -DBUILD_EXAMPLES=OFF \
-DBUILD_JASPER=OFF \
-DBUILD_JPEG=OFF \
+ -DBUILD_NEW_PYTHON_SUPPORT=OFF \
-DBUILD_OPENEXR=OFF \
-DBUILD_PNG=OFF \
-DBUILD_TIFF=OFF \
@@ -197,20 +151,14 @@ OPENCV_CONF_OPTS += \
# - eigen: OpenCV does not use it, not take any benefit from it.
OPENCV_CONF_OPTS += \
-DWITH_1394=OFF \
- -DWITH_CLP=OFF \
-DWITH_EIGEN=OFF \
- -DWITH_GDAL=OFF \
- -DWITH_GPHOTO2=OFF \
+ -DWITH_IMAGEIO=OFF \
-DWITH_OPENCL=OFF \
- -DWITH_OPENCL_SVM=OFF \
-DWITH_OPENEXR=OFF \
-DWITH_OPENGL=OFF \
-DWITH_OPENMP=OFF \
- -DWITH_OPENNI2=OFF \
-DWITH_OPENNI=OFF \
-DWITH_UNICAP=OFF \
- -DWITH_VTK=OFF \
- -DWITH_WEBP=OFF \
-DWITH_XINE=OFF
OPENCV_DEPENDENCIES += zlib
@@ -223,31 +171,17 @@ OPENCV_CONF_OPTS += -DWITH_FFMPEG=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_GSTREAMER),y)
-OPENCV_CONF_OPTS += -DWITH_GSTREAMER_0_10=ON
-OPENCV_DEPENDENCIES += gstreamer gst-plugins-base
-else
-OPENCV_CONF_OPTS += -DWITH_GSTREAMER_0_10=OFF
-endif
-
-ifeq ($(BR2_PACKAGE_OPENCV_WITH_GSTREAMER1),y)
OPENCV_CONF_OPTS += -DWITH_GSTREAMER=ON
-OPENCV_DEPENDENCIES += gstreamer1 gst1-plugins-base
+OPENCV_DEPENDENCIES += gstreamer gst-plugins-base
else
OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF
endif
-ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK)$(BR2_PACKAGE_OPENCV_WITH_GTK3),)
-OPENCV_CONF_OPTS += -DWITH_GTK=OFF -DWITH_GTK_2_X=OFF
-endif
-
ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK),y)
-OPENCV_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=ON
+OPENCV_CONF_OPTS += -DWITH_GTK=ON
OPENCV_DEPENDENCIES += libgtk2
-endif
-
-ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK3),y)
-OPENCV_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=OFF
-OPENCV_DEPENDENCIES += libgtk3
+else
+OPENCV_CONF_OPTS += -DWITH_GTK=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_JASPER),y)
@@ -264,15 +198,6 @@ else
OPENCV_CONF_OPTS += -DWITH_JPEG=OFF
endif
-ifeq ($(BR2_PACKAGE_OPENCV_WITH_OPENGL),y)
-OPENCV_CONF_OPTS += -DWITH_OPENGL=ON
-OPENCV_DEPENDENCIES += libgl
-else
-OPENCV_CONF_OPTS += -DWITH_OPENGL=OFF
-endif
-
-OPENCV_CONF_OPTS += -DWITH_OPENMP=$(if $(BR2_GCC_ENABLE_OPENMP),ON,OFF)
-
ifeq ($(BR2_PACKAGE_OPENCV_WITH_PNG),y)
OPENCV_CONF_OPTS += -DWITH_PNG=ON
OPENCV_DEPENDENCIES += libpng
@@ -280,18 +205,11 @@ else
OPENCV_CONF_OPTS += -DWITH_PNG=OFF
endif
-ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT)$(BR2_PACKAGE_OPENCV_WITH_QT5),)
-OPENCV_CONF_OPTS += -DWITH_QT=OFF
-endif
-
ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT),y)
OPENCV_CONF_OPTS += -DWITH_QT=4
OPENCV_DEPENDENCIES += qt
-endif
-
-ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT5),y)
-OPENCV_CONF_OPTS += -DWITH_QT=5
-OPENCV_DEPENDENCIES += qt5base
+else
+OPENCV_CONF_OPTS += -DWITH_QT=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_TIFF),y)
@@ -310,37 +228,6 @@ else
OPENCV_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF
endif
-ifeq ($(BR2_PACKAGE_OPENCV_LIB_PYTHON),y)
-ifeq ($(BR2_PACKAGE_PYTHON),y)
-OPENCV_CONF_OPTS += \
- -DBUILD_opencv_python2=ON \
- -DBUILD_opencv_python3=OFF \
- -DPYTHON2_EXECUTABLE=$(HOST_DIR)/usr/bin/python2 \
- -DPYTHON2_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) \
- -DPYTHON2_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON_VERSION_MAJOR).so \
- -DPYTHON2_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/numpy/core/include \
- -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \
- -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
-OPENCV_DEPENDENCIES += python
-else
-OPENCV_CONF_OPTS += \
- -DBUILD_opencv_python2=OFF \
- -DBUILD_opencv_python3=ON \
- -DPYTHON3_EXECUTABLE=$(HOST_DIR)/usr/bin/python3 \
- -DPYTHON3_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR)m \
- -DPYTHON3_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON3_VERSION_MAJOR)m.so \
- -DPYTHON3_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include \
- -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \
- -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
-OPENCV_DEPENDENCIES += python3
-endif
-OPENCV_DEPENDENCIES += python-numpy
-else
-OPENCV_CONF_OPTS += \
- -DBUILD_opencv_python2=OFF \
- -DBUILD_opencv_python3=OFF
-endif
-
# Installation hooks:
define OPENCV_CLEAN_INSTALL_DOC
$(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/doc
diff --git a/package/opencv/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch b/package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
index 2be8f33d76..2be8f33d76 100644
--- a/package/opencv/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
+++ b/package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch
diff --git a/package/opencv/0002-fix-support-for-pthreads-parallel_for.patch b/package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch
index 6eeb270eea..6eeb270eea 100644
--- a/package/opencv/0002-fix-support-for-pthreads-parallel_for.patch
+++ b/package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch
diff --git a/package/opencv3/Config.in b/package/opencv3/Config.in
new file mode 100644
index 0000000000..137a351301
--- /dev/null
+++ b/package/opencv3/Config.in
@@ -0,0 +1,344 @@
+menuconfig BR2_PACKAGE_OPENCV3
+ bool "opencv3"
+ select BR2_PACKAGE_ZLIB
+ depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_USE_WCHAR
+ depends on !BR2_STATIC_LIBS # include dlfcn.h
+ # Causes some toolchain failures on Xtensa
+ depends on !BR2_xtensa
+ depends on !BR2_PACKAGE_OPENCV
+ help
+ OpenCV (Open Source Computer Vision) is a library of programming
+ functions for real time computer vision.
+
+ Note that the opencv_core module and the opencv_hal library
+ are always built and installed, not matter which other
+ modules are enabled below.
+
+ http://opencv.org/
+
+if BR2_PACKAGE_OPENCV3
+
+comment "OpenCV modules"
+
+config BR2_PACKAGE_OPENCV3_LIB_CALIB3D
+ bool "calib3d"
+ select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ help
+ Include opencv_calib3d (camera calibration and 3d reconstruction) module
+ into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
+ bool "features2d"
+ select BR2_PACKAGE_OPENCV3_LIB_FLANN
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_ML
+ help
+ Include opencv_features2d (2d features framework) module into the OpenCV
+ build.
+
+config BR2_PACKAGE_OPENCV3_LIB_FLANN
+ bool "flann"
+ # opencv_core dependency is already enabled
+ help
+ Include opencv_flann (clustering and search in multi-dimensional spaces)
+ module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
+ bool "highgui"
+ select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
+ help
+ Include opencv_highgui (high-level gui and media i/o) module into the
+ OpenCV build.
+
+if BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
+
+choice
+ prompt "gui toolkit"
+ help
+ GUI toolkit to be used by the opencv_highgui module.
+
+config BR2_PACKAGE_OPENCV3_GUI_NONE
+ bool "none"
+
+config BR2_PACKAGE_OPENCV3_WITH_GTK
+ bool "gtk2"
+ depends on BR2_PACKAGE_LIBGTK2
+
+comment "gtk2 support needs libgtk2"
+ depends on BR2_USE_MMU # libgtk2 -> glib2
+ depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo
+ depends on !BR2_PACKAGE_LIBGTK2
+
+config BR2_PACKAGE_OPENCV3_WITH_GTK3
+ bool "gtk3"
+ depends on BR2_PACKAGE_LIBGTK3
+
+comment "gtk3 support needs libgtk3"
+ depends on BR2_USE_MMU # libgtk3 -> glib2
+ depends on BR2_ARCH_HAS_ATOMICS # libgtk3 -> cairo
+ depends on !BR2_PACKAGE_LIBGTK3
+
+config BR2_PACKAGE_OPENCV3_WITH_QT
+ bool "qt4"
+ depends on BR2_PACKAGE_QT
+ select BR2_PACKAGE_QT_STL
+ select BR2_PACKAGE_QT_GUI_MODULE
+ select BR2_PACKAGE_QT_TEST
+ help
+ Use Qt4 with QtTest and QtGui modules and STL support, as GUI toolkit.
+
+comment "qt4 support needs qt"
+ depends on BR2_USE_MMU # qt
+ depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
+
+config BR2_PACKAGE_OPENCV3_WITH_QT5
+ bool "qt5"
+ depends on BR2_PACKAGE_QT5
+ select BR2_PACKAGE_QT5BASE
+ select BR2_PACKAGE_QT5BASE_CONCURRENT
+ select BR2_PACKAGE_QT5BASE_GUI
+ select BR2_PACKAGE_QT5BASE_WIDGETS
+ help
+ Use Qt5 with base, concurrent, test, gui and widgets components, as GUI
+ toolkit.
+
+comment "qt5 support needs qt5"
+ depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
+
+endchoice
+
+config BR2_PACKAGE_OPENCV3_WITH_OPENGL
+ bool "opengl support"
+ # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5
+ depends on BR2_PACKAGE_OPENCV3_WITH_QT5
+ # OpenGL support requires Qt5OpenGL with GL support, not GLES
+ depends on BR2_PACKAGE_QT5_GL_AVAILABLE
+ depends on BR2_PACKAGE_HAS_LIBGL
+ select BR2_PACKAGE_QT5BASE_OPENGL
+ help
+ Enable OpenGL for UI.
+
+comment "opengl support needs an OpenGL provider"
+ depends on BR2_PACKAGE_OPENCV3_WITH_QT5
+ depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \
+ !BR2_PACKAGE_HAS_LIBGL
+
+endif # BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
+
+
+config BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
+ bool "imgcodecs"
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ help
+ Include opencv_imgcodecs (image codecs) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ bool "imgproc"
+ # opencv_core dependency is already enabled
+ help
+ Include opencv_imgproc (image processing) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_ML
+ bool "ml"
+ # opencv_core dependency is already enabled
+ help
+ Include opencv_ml (machine learning) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
+ bool "objdetect"
+ # opencv_core dependency is already enabled
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_ML
+ help
+ Include opencv_objdetect (object detection) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_PHOTO
+ bool "photo"
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ help
+ Include opencv_photo (computational photography) module into the OpenCV
+ build.
+
+config BR2_PACKAGE_OPENCV3_LIB_PYTHON
+ bool "python"
+ depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
+ depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \
+ || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 \
+ || BR2_sh || BR2_x86_64 # python-numpy
+ depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_i386 || BR2_x86_64 # python-numpy
+ select BR2_PACKAGE_PYTHON_NUMPY
+ help
+ Include opencv_python module into the OpenCV build.
+ No python example is installed.
+
+config BR2_PACKAGE_OPENCV3_LIB_SHAPE
+ bool "shape"
+ # opencv_core dependency is already enabled
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_VIDEO
+ help
+ Include opencv_shape (shape descriptors and matchers) module into the
+ OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_STITCHING
+ bool "stitching"
+ select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
+ select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
+ help
+ Include opencv_stitching (images stitching) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_SUPERRES
+ bool "superres"
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_VIDEO
+ help
+ Include opencv_superres (super resolution) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_TS
+ bool "ts"
+ # opencv_core dependency is already enabled
+ select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI
+ select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
+ help
+ Include opencv_ts (test) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_VIDEOIO
+ bool "videoio"
+ select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ help
+ Include opencv_videoio (media i/o) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_VIDEO
+ bool "video"
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ help
+ Include opencv_video (video analysis) module into the OpenCV build.
+
+config BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB
+ bool "videostab"
+ select BR2_PACKAGE_OPENCV3_LIB_CALIB3D
+ select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_PHOTO
+ select BR2_PACKAGE_OPENCV3_LIB_VIDEO
+ help
+ Include opencv_videostab (video stabilization) module into the OpenCV
+ build.
+
+comment "Test sets"
+config BR2_PACKAGE_OPENCV3_BUILD_TESTS
+ bool "build tests"
+
+config BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS
+ bool "build performance tests"
+
+comment "3rd party support"
+
+config BR2_PACKAGE_OPENCV3_WITH_FFMPEG
+ bool "ffmpeg support"
+ select BR2_PACKAGE_BZIP2
+ select BR2_PACKAGE_FFMPEG
+ select BR2_PACKAGE_FFMPEG_SWSCALE
+ help
+ Use ffmpeg from the target system.
+
+choice
+ prompt "gstreamer support"
+ help
+ OpenCV prefers gstreamer-1 over gstreamer-0.10.
+
+config BR2_PACKAGE_OPENCV3_WITHOUT_GSTREAMER
+ bool "none"
+
+config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER
+ bool "gstreamer-0.10"
+ depends on BR2_USE_MMU # gstreamer -> libglib2
+ depends on BR2_USE_WCHAR # gstreamer -> libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2
+ select BR2_PACKAGE_GSTREAMER
+ select BR2_PACKAGE_GST_PLUGINS_BASE
+ select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP
+
+comment "gstreamer-0.10 support needs a toolchain w/ wchar, threads"
+ depends on BR2_USE_MMU
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+
+config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER1
+ bool "gstreamer-1.x"
+ depends on BR2_USE_MMU # gstreamer1 -> libglib2
+ depends on BR2_USE_WCHAR # gstreamer1 -> libglib2
+ depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2
+ select BR2_PACKAGE_GSTREAMER1
+ select BR2_PACKAGE_GST1_PLUGINS_BASE
+ select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
+
+comment "gstreamer-1.x support needs a toolchain w/ wchar, threads"
+ depends on BR2_USE_MMU
+ depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+
+endchoice
+
+config BR2_PACKAGE_OPENCV3_WITH_JASPER
+ bool "jpeg2000 support"
+ select BR2_PACKAGE_JASPER
+ help
+ Enable jpeg2000 support.
+
+ Note: this does not use the libjasper bundled with opencv,
+ but uses the libjasper package installed system-wide by
+ Buildroot.
+
+config BR2_PACKAGE_OPENCV3_WITH_JPEG
+ bool "jpeg support"
+ select BR2_PACKAGE_JPEG
+ help
+ Use shared libjpeg from the target system.
+
+config BR2_PACKAGE_OPENCV3_WITH_PNG
+ bool "png support"
+ select BR2_PACKAGE_LIBPNG
+ help
+ Use shared libpng from the target system.
+
+config BR2_PACKAGE_OPENCV3_WITH_TIFF
+ bool "tiff support"
+ select BR2_PACKAGE_TIFF
+ help
+ Use shared libtiff from the target system.
+
+config BR2_PACKAGE_OPENCV3_WITH_V4L
+ bool "v4l support"
+ help
+ Enable Video 4 Linux support.
+
+ If the package libv4l is enabled, its support is automatically enabled.
+
+comment "Install options"
+
+config BR2_PACKAGE_OPENCV3_INSTALL_DATA
+ bool "install extra data"
+ help
+ Install various data that is used by cv libraries and/or demo
+ applications, specifically for haarcascades and lbpcascades
+ features.
+
+ For further information: see OpenCV documentation.
+
+endif # BR2_PACKAGE_OPENCV3
+
+comment "opencv3 needs a toolchain w/ C++, NPTL, wchar, dynamic library"
+ depends on !BR2_xtensa
+ depends on !BR2_INSTALL_LIBSTDCPP || \
+ !BR2_USE_WCHAR || \
+ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
+ BR2_STATIC_LIBS
diff --git a/package/opencv3/opencv3.mk b/package/opencv3/opencv3.mk
new file mode 100644
index 0000000000..3ce78b5c03
--- /dev/null
+++ b/package/opencv3/opencv3.mk
@@ -0,0 +1,363 @@
+################################################################################
+#
+# opencv3
+#
+################################################################################
+
+OPENCV3_VERSION = 3.0.0
+OPENCV3_SITE = $(call github,itseez,opencv,$(OPENCV3_VERSION))
+OPENCV3_INSTALL_STAGING = YES
+OPENCV3_LICENSE = BSD-3c
+OPENCV3_LICENSE_FILES = LICENSE
+
+# OpenCV component options
+OPENCV3_CONF_OPTS += \
+ -DBUILD_DOCS=OFF \
+ -DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),ON,OFF) \
+ -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_TESTS),ON,OFF) \
+ -DBUILD_WITH_DEBUG_INFO=OFF
+
+ifeq ($(BR2_PACKAGE_OPENCV3_BUILD_TESTS)$(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),)
+OPENCV3_CONF_OPTS += -DINSTALL_TEST=OFF
+else
+OPENCV3_CONF_OPTS += -DINSTALL_TEST=ON
+endif
+
+# OpenCV build options
+OPENCV3_CONF_OPTS += \
+ -DBUILD_WITH_STATIC_CRT=OFF \
+ -DENABLE_COVERAGE=OFF \
+ -DENABLE_FAST_MATH=ON \
+ -DENABLE_IMPL_COLLECTION=OFF \
+ -DENABLE_NOISY_WARNINGS=OFF \
+ -DENABLE_OMIT_FRAME_POINTER=ON \
+ -DENABLE_PRECOMPILED_HEADERS=OFF \
+ -DENABLE_PROFILING=OFF \
+ -DOPENCV3_WARNINGS_ARE_ERRORS=OFF
+
+# OpenCV link options
+OPENCV3_CONF_OPTS += \
+ -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \
+ -DCMAKE_SKIP_RPATH=OFF \
+ -DCMAKE_USE_RELATIVE_PATHS=OFF
+
+# OpenCV packaging options:
+OPENCV3_CONF_OPTS += \
+ -DBUILD_PACKAGE=OFF \
+ -DENABLE_SOLUTION_FOLDERS=OFF \
+ -DINSTALL_CREATE_DISTRIB=OFF
+
+# OpenCV module selection
+# * Modules on:
+# - core: if not set, opencv does not build anything
+# - hal: core's dependency
+# * Modules off:
+# - android*: android stuff
+# - apps: programs for training classifiers
+# - java: java bindings
+# - viz: missing VTK dependency
+# - world: all-in-one module
+#
+# * Contrib modules from [1] are disabled:
+# - opencv_contrib package is not available in Buildroot;
+# - OPENCV3_EXTRA_MODULES_PATH is not set.
+#
+# [1] https://github.com/Itseez/opencv_contrib
+OPENCV3_CONF_OPTS += \
+ -DBUILD_opencv_androidcamera=OFF \
+ -DBUILD_opencv_apps=OFF \
+ -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV3_LIB_CALIB3D),ON,OFF) \
+ -DBUILD_opencv_core=ON \
+ -DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV3_LIB_FEATURES2D),ON,OFF) \
+ -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV3_LIB_FLANN),ON,OFF) \
+ -DBUILD_opencv_hal=ON \
+ -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV3_LIB_HIGHGUI),ON,OFF) \
+ -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV3_LIB_IMGCODECS),ON,OFF) \
+ -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV3_LIB_IMGPROC),ON,OFF) \
+ -DBUILD_opencv_java=OFF \
+ -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV3_LIB_ML),ON,OFF) \
+ -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV3_LIB_OBJDETECT),ON,OFF) \
+ -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV3_LIB_PHOTO),ON,OFF) \
+ -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV3_LIB_SHAPE),ON,OFF) \
+ -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV3_LIB_STITCHING),ON,OFF) \
+ -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV3_LIB_SUPERRES),ON,OFF) \
+ -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV3_LIB_TS),ON,OFF) \
+ -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV3_LIB_VIDEO),ON,OFF) \
+ -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV3_LIB_VIDEOIO),ON,OFF) \
+ -DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB),ON,OFF) \
+ -DBUILD_opencv_viz=OFF \
+ -DBUILD_opencv_world=OFF
+
+# Hardware support options.
+#
+# * PowerPC support is turned off since its only effect is altering CFLAGS,
+# adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
+# * fma3 and popcnt support is disabled because according to gcc manual [2], it
+# is only available on x86_64 haswell, broadwell and knl architecture.
+#
+# [2] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/x86-Options.html#x86-Options
+OPENCV3_CONF_OPTS += \
+ -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
+ -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
+ -DENABLE_FMA3=OFF \
+ -DENABLE_POPCNT=OFF \
+ -DENABLE_POWERPC=OFF \
+ -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
+ -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
+ -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
+ -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
+ -DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
+ -DENABLE_SSSE3=$(if $(BR2_X86_CPU_HAS_SSSE3),ON,OFF)
+
+# Cuda stuff
+OPENCV3_CONF_OPTS += \
+ -DBUILD_CUDA_STUBS=OFF \
+ -DBUILD_opencv_cudaarithm=OFF \
+ -DBUILD_opencv_cudabgsegm=OFF \
+ -DBUILD_opencv_cudacodec=OFF \
+ -DBUILD_opencv_cudafeatures2d=OFF \
+ -DBUILD_opencv_cudafilters=OFF \
+ -DBUILD_opencv_cudaimgproc=OFF \
+ -DBUILD_opencv_cudalegacy=OFF \
+ -DBUILD_opencv_cudaobjdetect=OFF \
+ -DBUILD_opencv_cudaoptflow=OFF \
+ -DBUILD_opencv_cudastereo=OFF \
+ -DBUILD_opencv_cudawarping=OFF \
+ -DBUILD_opencv_cudev=OFF \
+ -DWITH_CUBLAS=OFF \
+ -DWITH_CUDA=OFF \
+ -DWITH_CUFFT=OFF
+
+# NVidia stuff
+OPENCV3_CONF_OPTS += -DWITH_NVCUVID=OFF
+
+# AMD stuff
+OPENCV3_CONF_OPTS += \
+ -DWITH_OPENCLAMDBLAS=OFF \
+ -DWITH_OPENCLAMDFFT=OFF
+
+# Intel stuff
+OPENCV3_CONF_OPTS += \
+ -DBUILD_WITH_DYNAMIC_IPP=OFF \
+ -DWITH_INTELPERC=OFF \
+ -DWITH_IPP=OFF \
+ -DWITH_IPP_A=OFF \
+ -DWITH_TBB=OFF
+
+# Smartek stuff
+OPENCV3_CONF_OPTS += -DWITH_GIGEAPI=OFF
+
+# Prosilica stuff
+OPENCV3_CONF_OPTS += -DWITH_PVAPI=OFF
+
+# Ximea stuff
+OPENCV3_CONF_OPTS += -DWITH_XIMEA=OFF
+
+# Non-Linux support (Android options) must remain OFF:
+OPENCV3_CONF_OPTS += \
+ -DANDROID=OFF \
+ -DBUILD_ANDROID_CAMERA_WRAPPER=OFF \
+ -DBUILD_ANDROID_EXAMPLES=OFF \
+ -DBUILD_ANDROID_SERVICE=OFF \
+ -DBUILD_FAT_JAVA_LIB=OFF \
+ -DINSTALL_ANDROID_EXAMPLES=OFF \
+ -DWITH_ANDROID_CAMERA=OFF
+
+# Non-Linux support (Mac OSX options) must remain OFF:
+OPENCV3_CONF_OPTS += \
+ -DWITH_AVFOUNDATION=OFF \
+ -DWITH_CARBON=OFF \
+ -DWITH_QUICKTIME=OFF
+
+# Non-Linux support (Windows options) must remain OFF:
+OPENCV3_CONF_OPTS += \
+ -DWITH_CSTRIPES=OFF \
+ -DWITH_DSHOW=OFF \
+ -DWITH_MSMF=OFF \
+ -DWITH_PTHREADS_PF=OFF \
+ -DWITH_VFW=OFF \
+ -DWITH_VIDEOINPUT=OFF \
+ -DWITH_WIN32UI=OFF
+
+# Software/3rd-party support options:
+# - disable all examples
+OPENCV3_CONF_OPTS += \
+ -DBUILD_EXAMPLES=OFF \
+ -DBUILD_JASPER=OFF \
+ -DBUILD_JPEG=OFF \
+ -DBUILD_OPENEXR=OFF \
+ -DBUILD_PNG=OFF \
+ -DBUILD_TIFF=OFF \
+ -DBUILD_ZLIB=OFF \
+ -DINSTALL_C_EXAMPLES=OFF \
+ -DINSTALL_PYTHON_EXAMPLES=OFF \
+ -DINSTALL_TO_MANGLED_PATHS=OFF
+
+# Disabled features (mostly because they are not available in Buildroot), but
+# - eigen: OpenCV does not use it, not take any benefit from it.
+OPENCV3_CONF_OPTS += \
+ -DWITH_1394=OFF \
+ -DWITH_CLP=OFF \
+ -DWITH_EIGEN=OFF \
+ -DWITH_GDAL=OFF \
+ -DWITH_GPHOTO2=OFF \
+ -DWITH_OPENCL=OFF \
+ -DWITH_OPENCL_SVM=OFF \
+ -DWITH_OPENEXR=OFF \
+ -DWITH_OPENGL=OFF \
+ -DWITH_OPENMP=OFF \
+ -DWITH_OPENNI2=OFF \
+ -DWITH_OPENNI=OFF \
+ -DWITH_UNICAP=OFF \
+ -DWITH_VTK=OFF \
+ -DWITH_WEBP=OFF \
+ -DWITH_XINE=OFF
+
+OPENCV3_DEPENDENCIES += zlib
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_FFMPEG),y)
+OPENCV3_CONF_OPTS += -DWITH_FFMPEG=ON
+OPENCV3_DEPENDENCIES += ffmpeg bzip2
+else
+OPENCV3_CONF_OPTS += -DWITH_FFMPEG=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GSTREAMER),y)
+OPENCV3_CONF_OPTS += -DWITH_GSTREAMER_0_10=ON
+OPENCV3_DEPENDENCIES += gstreamer gst-plugins-base
+else
+OPENCV3_CONF_OPTS += -DWITH_GSTREAMER_0_10=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GSTREAMER1),y)
+OPENCV3_CONF_OPTS += -DWITH_GSTREAMER=ON
+OPENCV3_DEPENDENCIES += gstreamer1 gst1-plugins-base
+else
+OPENCV3_CONF_OPTS += -DWITH_GSTREAMER=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GTK)$(BR2_PACKAGE_OPENCV3_WITH_GTK3),)
+OPENCV3_CONF_OPTS += -DWITH_GTK=OFF -DWITH_GTK_2_X=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GTK),y)
+OPENCV3_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=ON
+OPENCV3_DEPENDENCIES += libgtk2
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GTK3),y)
+OPENCV3_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=OFF
+OPENCV3_DEPENDENCIES += libgtk3
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_JASPER),y)
+OPENCV3_CONF_OPTS += -DWITH_JASPER=ON
+OPENCV3_DEPENDENCIES += jasper
+else
+OPENCV3_CONF_OPTS += -DWITH_JASPER=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_JPEG),y)
+OPENCV3_CONF_OPTS += -DWITH_JPEG=ON
+OPENCV3_DEPENDENCIES += jpeg
+else
+OPENCV3_CONF_OPTS += -DWITH_JPEG=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_OPENGL),y)
+OPENCV3_CONF_OPTS += -DWITH_OPENGL=ON
+OPENCV3_DEPENDENCIES += libgl
+else
+OPENCV3_CONF_OPTS += -DWITH_OPENGL=OFF
+endif
+
+OPENCV3_CONF_OPTS += -DWITH_OPENMP=$(if $(BR2_GCC_ENABLE_OPENMP),ON,OFF)
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_PNG),y)
+OPENCV3_CONF_OPTS += -DWITH_PNG=ON
+OPENCV3_DEPENDENCIES += libpng
+else
+OPENCV3_CONF_OPTS += -DWITH_PNG=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_QT)$(BR2_PACKAGE_OPENCV3_WITH_QT5),)
+OPENCV3_CONF_OPTS += -DWITH_QT=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_QT),y)
+OPENCV3_CONF_OPTS += -DWITH_QT=4
+OPENCV3_DEPENDENCIES += qt
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_QT5),y)
+OPENCV3_CONF_OPTS += -DWITH_QT=5
+OPENCV3_DEPENDENCIES += qt5base
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_TIFF),y)
+OPENCV3_CONF_OPTS += -DWITH_TIFF=ON
+OPENCV3_DEPENDENCIES += tiff
+else
+OPENCV3_CONF_OPTS += -DWITH_TIFF=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_WITH_V4L),y)
+OPENCV3_CONF_OPTS += \
+ -DWITH_LIBV4L=$(if $(BR2_PACKAGE_LIBV4L),ON,OFF) \
+ -DWITH_V4L=ON
+OPENCV3_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBV4L),libv4l)
+else
+OPENCV3_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_OPENCV3_LIB_PYTHON),y)
+ifeq ($(BR2_PACKAGE_PYTHON),y)
+OPENCV3_CONF_OPTS += \
+ -DBUILD_opencv_python2=ON \
+ -DBUILD_opencv_python3=OFF \
+ -DPYTHON2_EXECUTABLE=$(HOST_DIR)/usr/bin/python2 \
+ -DPYTHON2_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) \
+ -DPYTHON2_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON_VERSION_MAJOR).so \
+ -DPYTHON2_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/numpy/core/include \
+ -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \
+ -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
+OPENCV3_DEPENDENCIES += python
+else
+OPENCV3_CONF_OPTS += \
+ -DBUILD_opencv_python2=OFF \
+ -DBUILD_opencv_python3=ON \
+ -DPYTHON3_EXECUTABLE=$(HOST_DIR)/usr/bin/python3 \
+ -DPYTHON3_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR)m \
+ -DPYTHON3_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON3_VERSION_MAJOR)m.so \
+ -DPYTHON3_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include \
+ -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \
+ -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
+OPENCV3_DEPENDENCIES += python3
+endif
+OPENCV3_DEPENDENCIES += python-numpy
+else
+OPENCV3_CONF_OPTS += \
+ -DBUILD_opencv_python2=OFF \
+ -DBUILD_opencv_python3=OFF
+endif
+
+# Installation hooks:
+define OPENCV3_CLEAN_INSTALL_DOC
+ $(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/doc
+endef
+OPENCV3_POST_INSTALL_TARGET_HOOKS += OPENCV3_CLEAN_INSTALL_DOC
+
+define OPENCV3_CLEAN_INSTALL_CMAKE
+ $(RM) -f $(TARGET_DIR)/usr/share/OpenCV/OpenCVConfig*.cmake
+endef
+OPENCV3_POST_INSTALL_TARGET_HOOKS += OPENCV3_CLEAN_INSTALL_CMAKE
+
+ifneq ($(BR2_PACKAGE_OPENCV3_INSTALL_DATA),y)
+define OPENCV3_CLEAN_INSTALL_DATA
+ $(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/haarcascades \
+ $(TARGET_DIR)/usr/share/OpenCV/lbpcascades
+endef
+OPENCV3_POST_INSTALL_TARGET_HOOKS += OPENCV3_CLEAN_INSTALL_DATA
+endif
+
+$(eval $(cmake-package))
diff --git a/package/openssh/openssh.hash b/package/openssh/openssh.hash
index 76d0be85c9..84f06672cb 100644
--- a/package/openssh/openssh.hash
+++ b/package/openssh/openssh.hash
@@ -1,3 +1,4 @@
# Locally calculated after checking pgp signature
-# Also from http://www.openssh.com/txt/release-6.9 (sha256 is base64 encoded)
-sha256 6e074df538f357d440be6cf93dc581a21f22d39e236f217fcd8eacbb6c896cfe openssh-6.9p1.tar.gz
+# Also from http://www.openssh.com/txt/release-7.1 (sha256 is base64 encoded)
+# Decode with -> echo <encoded stuff>|base64 -d|hexdump -v -e '/1 "%02x"'
+sha256 fc0a6d2d1d063d5c66dffd952493d0cda256cad204f681de0f84ef85b2ad8428 openssh-7.1p1.tar.gz
diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk
index 5a7162ffda..fb5779e385 100644
--- a/package/openssh/openssh.mk
+++ b/package/openssh/openssh.mk
@@ -4,7 +4,7 @@
#
################################################################################
-OPENSSH_VERSION = 6.9p1
+OPENSSH_VERSION = 7.1p1
OPENSSH_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable
OPENSSH_LICENSE = BSD-3c BSD-2c Public Domain
OPENSSH_LICENSE_FILES = LICENCE
@@ -26,6 +26,10 @@ endef
ifeq ($(BR2_arc),y)
OPENSSH_CONF_OPTS += --without-pie
endif
+# PIE and static does not work on Linux
+ifeq ($(BR2_STATIC_LIBS),y)
+OPENSSH_CONF_OPTS += --without-pie
+endif
OPENSSH_DEPENDENCIES = zlib openssl
diff --git a/package/openvmtools/Config.in b/package/openvmtools/Config.in
index 8e22eff005..98cbeb9206 100644
--- a/package/openvmtools/Config.in
+++ b/package/openvmtools/Config.in
@@ -36,11 +36,12 @@ config BR2_PACKAGE_OPENVMTOOLS_PAM
# linux-pam needs locale and wchar, but we already have this
# dependency on the main symbol, above.
depends on !BR2_STATIC_LIBS
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
help
Support for PAM in openvmtools
-comment "PAM support needs a toolchain w/ dynamic library"
- depends on BR2_STATIC_LIBS
+comment "PAM support needs a uClibc or (e)glibc toolchain w/ dynamic library"
+ depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
endif
diff --git a/package/oprofile/oprofile.mk b/package/oprofile/oprofile.mk
index 5876307e48..ba366403d2 100644
--- a/package/oprofile/oprofile.mk
+++ b/package/oprofile/oprofile.mk
@@ -41,6 +41,12 @@ ifeq ($(BR2_PACKAGE_LIBPFM4),y)
OPROFILE_DEPENDENCIES += libpfm4
endif
+# When getext is enabled, popt links with -lintl, specifies it in its
+# popt.pc and has done so for the past 6+ years. But oprofile does not
+# use pkconfig to find popt, so misses -lintl, which is important for
+# a static build. We have to do the call to pkgconfig manually...
+OPROFILE_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs popt`"
+
define OPROFILE_INSTALL_TARGET_CMDS
$(INSTALL) -d -m 755 $(TARGET_DIR)/usr/bin
$(INSTALL) -d -m 755 $(TARGET_DIR)/usr/share/oprofile
diff --git a/package/perl-file-listing/perl-file-listing.mk b/package/perl-file-listing/perl-file-listing.mk
index a9d8cede72..c376c6199e 100644
--- a/package/perl-file-listing/perl-file-listing.mk
+++ b/package/perl-file-listing/perl-file-listing.mk
@@ -7,7 +7,7 @@
PERL_FILE_LISTING_VERSION = 6.04
PERL_FILE_LISTING_SOURCE = File-Listing-$(PERL_FILE_LISTING_VERSION).tar.gz
PERL_FILE_LISTING_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS
-PERL_FILE_LISTING_DEPENDENCIES = perl-http-date
+PERL_FILE_LISTING_DEPENDENCIES = perl perl-http-date
PERL_FILE_LISTING_LICENSE = Artistic or GPLv1+
PERL_FILE_LISTING_LICENSE_FILES = README
diff --git a/package/perl-http-cookies/Config.in b/package/perl-http-cookies/Config.in
index 4dd2fd9b4c..cb5a3c1fa9 100644
--- a/package/perl-http-cookies/Config.in
+++ b/package/perl-http-cookies/Config.in
@@ -1,5 +1,6 @@
config BR2_PACKAGE_PERL_HTTP_COOKIES
bool "perl-http-cookies"
+ select BR2_PACKAGE_PERL_HTTP_DATE
select BR2_PACKAGE_PERL_HTTP_MESSAGE
help
Objects that represent a "cookie jar"
diff --git a/package/perl-http-cookies/perl-http-cookies.mk b/package/perl-http-cookies/perl-http-cookies.mk
index b3bfa2c61c..fa3a15aca7 100644
--- a/package/perl-http-cookies/perl-http-cookies.mk
+++ b/package/perl-http-cookies/perl-http-cookies.mk
@@ -7,7 +7,7 @@
PERL_HTTP_COOKIES_VERSION = 6.01
PERL_HTTP_COOKIES_SOURCE = HTTP-Cookies-$(PERL_HTTP_COOKIES_VERSION).tar.gz
PERL_HTTP_COOKIES_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS
-PERL_HTTP_COOKIES_DEPENDENCIES = perl-http-message
+PERL_HTTP_COOKIES_DEPENDENCIES = perl perl-http-date perl-http-message
PERL_HTTP_COOKIES_LICENSE = Artistic or GPLv1+
PERL_HTTP_COOKIES_LICENSE_FILES = README
diff --git a/package/perl-http-daemon/Config.in b/package/perl-http-daemon/Config.in
index 3d69b8814e..e09328c963 100644
--- a/package/perl-http-daemon/Config.in
+++ b/package/perl-http-daemon/Config.in
@@ -1,6 +1,8 @@
config BR2_PACKAGE_PERL_HTTP_DAEMON
bool "perl-http-daemon"
+ select BR2_PACKAGE_PERL_HTTP_DATE
select BR2_PACKAGE_PERL_HTTP_MESSAGE
+ select BR2_PACKAGE_PERL_LWP_MEDIATYPES
help
Instances of the `HTTP::Daemon' class are HTTP/1.1 servers that listen
on a socket for incoming requests.
diff --git a/package/perl-http-daemon/perl-http-daemon.mk b/package/perl-http-daemon/perl-http-daemon.mk
index 42d2873925..6c009a3726 100644
--- a/package/perl-http-daemon/perl-http-daemon.mk
+++ b/package/perl-http-daemon/perl-http-daemon.mk
@@ -7,7 +7,7 @@
PERL_HTTP_DAEMON_VERSION = 6.01
PERL_HTTP_DAEMON_SOURCE = HTTP-Daemon-$(PERL_HTTP_DAEMON_VERSION).tar.gz
PERL_HTTP_DAEMON_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS
-PERL_HTTP_DAEMON_DEPENDENCIES = perl-http-message
+PERL_HTTP_DAEMON_DEPENDENCIES = perl perl-http-date perl-http-message perl-lwp-mediatypes
PERL_HTTP_DAEMON_LICENSE = Artistic or GPLv1+
PERL_HTTP_DAEMON_LICENSE_FILES = README
diff --git a/package/perl-http-negotiate/perl-http-negotiate.mk b/package/perl-http-negotiate/perl-http-negotiate.mk
index 569ed2b1f7..b26778541d 100644
--- a/package/perl-http-negotiate/perl-http-negotiate.mk
+++ b/package/perl-http-negotiate/perl-http-negotiate.mk
@@ -7,7 +7,7 @@
PERL_HTTP_NEGOTIATE_VERSION = 6.01
PERL_HTTP_NEGOTIATE_SOURCE = HTTP-Negotiate-$(PERL_HTTP_NEGOTIATE_VERSION).tar.gz
PERL_HTTP_NEGOTIATE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS
-PERL_HTTP_NEGOTIATE_DEPENDENCIES = perl-http-message
+PERL_HTTP_NEGOTIATE_DEPENDENCIES = perl perl-http-message
PERL_HTTP_NEGOTIATE_LICENSE = Artistic or GPLv1+
PERL_HTTP_NEGOTIATE_LICENSE_FILES = README
diff --git a/package/perl-www-robotrules/Config.in b/package/perl-www-robotrules/Config.in
index 83dbcfbbbe..e80f5a0d9d 100644
--- a/package/perl-www-robotrules/Config.in
+++ b/package/perl-www-robotrules/Config.in
@@ -1,6 +1,6 @@
config BR2_PACKAGE_PERL_WWW_ROBOTRULES
bool "perl-www-robotrules"
- select PERL_URI
+ select BR2_PACKAGE_PERL_URI
help
This module provides functions that deal the date formats used by the
HTTP protocol (and then some more)
diff --git a/package/perl-www-robotrules/perl-www-robotrules.mk b/package/perl-www-robotrules/perl-www-robotrules.mk
index 0c68b98a3a..e74baabbfd 100644
--- a/package/perl-www-robotrules/perl-www-robotrules.mk
+++ b/package/perl-www-robotrules/perl-www-robotrules.mk
@@ -7,7 +7,7 @@
PERL_WWW_ROBOTRULES_VERSION = 6.02
PERL_WWW_ROBOTRULES_SOURCE = WWW-RobotRules-$(PERL_WWW_ROBOTRULES_VERSION).tar.gz
PERL_WWW_ROBOTRULES_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS
-PERL_WWW_ROBOTRULES_DEPENDENCIES = perl-uri
+PERL_WWW_ROBOTRULES_DEPENDENCIES = perl perl-uri
PERL_WWW_ROBOTRULES_LICENSE = Artistic or GPLv1+
PERL_WWW_ROBOTRULES_LICENSE_FILES = README
diff --git a/package/php/php.hash b/package/php/php.hash
index ea12138f00..6afc166dd5 100644
--- a/package/php/php.hash
+++ b/package/php/php.hash
@@ -1,2 +1,2 @@
# From http://php.net/downloads.php
-sha256 3f97dbb1c646b90e1ef638defabe429ef036f903b5baa1c34769d3de4fe62bd4 php-5.6.11.tar.xz
+sha256 f8a8446866c0dc3f33319aa196ce87b64d71cab3dd96e39c8816adccc7e8ef33 php-5.6.12.tar.xz
diff --git a/package/php/php.mk b/package/php/php.mk
index 4b171cfca9..6f746c4c49 100644
--- a/package/php/php.mk
+++ b/package/php/php.mk
@@ -5,7 +5,7 @@
################################################################################
PHP_VERSION_MAJOR = 5.6
-PHP_VERSION = $(PHP_VERSION_MAJOR).11
+PHP_VERSION = $(PHP_VERSION_MAJOR).12
PHP_SITE = http://www.php.net/distributions
PHP_SOURCE = php-$(PHP_VERSION).tar.xz
PHP_INSTALL_STAGING = YES
diff --git a/package/pkg-kconfig.mk b/package/pkg-kconfig.mk
index 375607faf9..44c74a712a 100644
--- a/package/pkg-kconfig.mk
+++ b/package/pkg-kconfig.mk
@@ -96,6 +96,16 @@ $$(error Internal error: no value specified for $(2)_KCONFIG_FILE)
endif
endif
+# For the configurators, we do want to use the system-provided host
+# tools, not the ones we build. This is particularly true for
+# pkg-config; if we use our pkg-config (from host-pkgconf), then it
+# would not look for the .pc from the host, but we do need them,
+# especially to find ncurses, GTK+, Qt (resp. for menuconfig and
+# 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))
+
# Configuration editors (menuconfig, ...)
#
# We need to apply the configuration fixups right after a configuration
@@ -112,7 +122,7 @@ endif
#
$$(addprefix $(1)-,$$($(2)_KCONFIG_EDITORS)): $(1)-%: $$($(2)_DIR)/.kconfig_editor_%
$$($(2)_DIR)/.kconfig_editor_%: $$($(2)_DIR)/.stamp_kconfig_fixup_done
- $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \
+ $$($(2)_CONFIGURATOR_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \
$$($(2)_KCONFIG_OPTS) $$(*)
rm -f $$($(2)_DIR)/.stamp_{kconfig_fixup_done,configured,built}
rm -f $$($(2)_DIR)/.stamp_{target,staging,images}_installed
diff --git a/package/pkg-kernel-module.mk b/package/pkg-kernel-module.mk
index 5fb19be808..6fb7704e32 100644
--- a/package/pkg-kernel-module.mk
+++ b/package/pkg-kernel-module.mk
@@ -60,6 +60,10 @@ $(2)_MODULE_SUBDIRS ?= .
# includes and other support files (Booo!)
define $(2)_KERNEL_MODULES_BUILD
@$$(call MESSAGE,"Building kernel module(s)")
+ @if ! grep -Fqx 'CONFIG_MODULES=y' $(LINUX_DIR)/.config; then \
+ echo "ERROR: Kernel does not support loadable modules"; \
+ exit 1; \
+ fi
$$(foreach d,$$($(2)_MODULE_SUBDIRS), \
$$(LINUX_MAKE_ENV) $$($$(PKG)_MAKE) \
-C $$(LINUX_DIR) \
diff --git a/package/poco/Config.in b/package/poco/Config.in
index 155f098a30..dfdc8d17c3 100644
--- a/package/poco/Config.in
+++ b/package/poco/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_POCO
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_STATIC_LIBS # dlopen()
depends on !(BR2_arc || BR2_bfin || BR2_microblaze || BR2_mipsel \
|| BR2_xtensa)
select BR2_PACKAGE_ZLIB
@@ -60,8 +61,8 @@ config BR2_PACKAGE_POCO_DATA_MYSQL
endif # BR2_PACKAGE_POCO
-comment "poco needs a toolchain w/ wchar, threads, C++"
+comment "poco needs a toolchain w/ wchar, threads, C++, dynamic library"
depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \
- || !BR2_TOOLCHAIN_HAS_THREADS
+ || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
depends on !(BR2_arc || BR2_bfin || BR2_microblaze || BR2_mipsel \
|| BR2_xtensa)
diff --git a/package/postgresql/0002-fix-sparc-compile.patch b/package/postgresql/0002-fix-sparc-compile.patch
new file mode 100644
index 0000000000..9eec23ab5f
--- /dev/null
+++ b/package/postgresql/0002-fix-sparc-compile.patch
@@ -0,0 +1,38 @@
+The gcc predefines for Linux are __sparc_v8__/__sparc_v7__
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur postgresql-9.4.4.orig/src/include/storage/s_lock.h postgresql-9.4.4/src/include/storage/s_lock.h
+--- postgresql-9.4.4.orig/src/include/storage/s_lock.h 2015-06-09 21:29:38.000000000 +0200
++++ postgresql-9.4.4/src/include/storage/s_lock.h 2015-08-09 19:57:06.000000000 +0200
+@@ -420,12 +420,12 @@
+ : "=r"(_res), "+m"(*lock)
+ : "r"(lock)
+ : "memory");
+-#if defined(__sparcv7)
++#if defined(__sparcv7) || defined(__sparc_v7__)
+ /*
+ * No stbar or membar available, luckily no actually produced hardware
+ * requires a barrier.
+ */
+-#elif defined(__sparcv8)
++#elif defined(__sparcv8) || defined(__sparc_v8__)
+ /* stbar is available (and required for both PSO, RMO), membar isn't */
+ __asm__ __volatile__ ("stbar \n":::"memory");
+ #else
+@@ -438,13 +438,13 @@
+ return (int) _res;
+ }
+
+-#if defined(__sparcv7)
++#if defined(__sparcv7) || defined(__sparc_v7__)
+ /*
+ * No stbar or membar available, luckily no actually produced hardware
+ * requires a barrier.
+ */
+ #define S_UNLOCK(lock) (*((volatile slock_t *) (lock)) = 0)
+-#elif defined(__sparcv8)
++#elif defined(__sparcv8) || defined(__sparc_v8__)
+ /* stbar is available (and required for both PSO, RMO), membar isn't */
+ #define S_UNLOCK(lock) \
+ do \
diff --git a/package/powertop/0003-add-missing-sys-time.h-header.patch b/package/powertop/0003-add-missing-sys-time.h-header.patch
new file mode 100644
index 0000000000..7156e4256a
--- /dev/null
+++ b/package/powertop/0003-add-missing-sys-time.h-header.patch
@@ -0,0 +1,35 @@
+From 283cab667a9ac3ae3a675b5e5d1a42191188699f Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Sat, 8 Aug 2015 18:24:48 +0200
+Subject: [PATCH] add missing sys/time.h header
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+struct timeval is defined in sys/time.h with a musl toolchain.
+
+Fixes:
+In file included from devices/devfreq.cpp:35:0:
+devices/devfreq.h:35:18: error: field ‘stamp_before’ has incomplete type ‘timeval’
+ struct timeval stamp_before, stamp_after;
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ src/devices/devfreq.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/devices/devfreq.h b/src/devices/devfreq.h
+index 16a60fb..4a8983b 100644
+--- a/src/devices/devfreq.h
++++ b/src/devices/devfreq.h
+@@ -27,6 +27,7 @@
+
+ #include "device.h"
+ #include "../parameters/parameters.h"
++#include <sys/time.h>
+
+ struct frequency;
+
+--
+2.4.3
+
diff --git a/package/powertop/0004-add-missing-stdio.h-header.patch b/package/powertop/0004-add-missing-stdio.h-header.patch
new file mode 100644
index 0000000000..7619cca131
--- /dev/null
+++ b/package/powertop/0004-add-missing-stdio.h-header.patch
@@ -0,0 +1,35 @@
+From e6cfd977c81b335664db1d5d3d6b5488c245e30f Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Sat, 8 Aug 2015 18:26:15 +0200
+Subject: [PATCH] add missing stdio.h header
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+snprinf is defined in stdio.h.
+
+Fixes:
+perf/perf_bundle.cpp: In function ‘void parse_event_format(const char*)’:
+perf/perf_bundle.cpp:141:75: error: ‘sprintf’ was not declared in this scope
+ sprintf(file, "/sys/kernel/debug/tracing/events/%s/%s/format", sys, event);
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ src/perf/perf_bundle.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/perf/perf_bundle.cpp b/src/perf/perf_bundle.cpp
+index cf1ae11..3d216ff 100644
+--- a/src/perf/perf_bundle.cpp
++++ b/src/perf/perf_bundle.cpp
+@@ -31,6 +31,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <unistd.h>
++#include <stdio.h>
+
+ #include "perf_bundle.h"
+ #include "perf_event.h"
+--
+2.4.3
+
diff --git a/package/protobuf-c/Config.in b/package/protobuf-c/Config.in
index f9fab37a15..28555502f9 100644
--- a/package/protobuf-c/Config.in
+++ b/package/protobuf-c/Config.in
@@ -1,7 +1,7 @@
config BR2_PACKAGE_PROTOBUF_C
bool "protobuf-c"
depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf
+ depends on BR2_TOOLCHAIN_HAS_THREADS
# host-protobuf only builds on certain architectures
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
help
diff --git a/package/protobuf/Config.in b/package/protobuf/Config.in
index bbb927f269..9ee7e7df45 100644
--- a/package/protobuf/Config.in
+++ b/package/protobuf/Config.in
@@ -7,13 +7,15 @@ config BR2_PACKAGE_PROTOBUF
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64
# host-protobuf only builds on certain architectures
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+ depends on !BR2_STATIC_LIBS
help
Protocol buffers are Google's language-neutral, platform-neutral,
extensible mechanism for serializing structured data.
https://developers.google.com/protocol-buffers
-comment "protobuf needs a toolchain w/ C++, threads"
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
+comment "protobuf needs a toolchain w/ C++, threads, dynamic library"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \
+ || BR2_STATIC_LIBS
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
diff --git a/package/python-can/python-can.mk b/package/python-can/python-can.mk
index 8db5732ff6..53d5e0f694 100644
--- a/package/python-can/python-can.mk
+++ b/package/python-can/python-can.mk
@@ -9,7 +9,6 @@ PYTHON_CAN_SITE = https://bitbucket.org/hardbyte/python-can/get/
PYTHON_CAN_SOURCE = $(PYTHON_CAN_VERSION).tar.bz2
PYTHON_CAN_LICENSE = LGPLv3
PYTHON_CAN_LICENSE_FILES = LICENSE.txt
-PYTHON_CAN_DEPENDENCIES = python
PYTHON_CAN_SETUP_TYPE = setuptools
$(eval $(python-package))
diff --git a/package/python-pam/Config.in b/package/python-pam/Config.in
index 6c7bc63d76..b23a8e0172 100644
--- a/package/python-pam/Config.in
+++ b/package/python-pam/Config.in
@@ -1,6 +1,7 @@
-comment "python-pam needs a toolchain w/ wchar, locale, dynamic library"
+comment "python-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
depends on BR2_PACKAGE_PYTHON
- depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS
+ depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS || \
+ BR2_TOOLCHAIN_USES_MUSL
config BR2_PACKAGE_PYTHON_PAM
bool "python-pam"
@@ -8,6 +9,7 @@ config BR2_PACKAGE_PYTHON_PAM
depends on BR2_ENABLE_LOCALE # linux-pam
depends on BR2_USE_WCHAR # linux-pam
depends on !BR2_STATIC_LIBS # linux-pam
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
select BR2_PACKAGE_LINUX_PAM
help
PAM (Pluggable Authentication Module) bindings for Python.
diff --git a/package/qt5/Config.in b/package/qt5/Config.in
index 3fb65f7c34..22fd0c0809 100644
--- a/package/qt5/Config.in
+++ b/package/qt5/Config.in
@@ -11,15 +11,16 @@ config BR2_PACKAGE_QT5_JSCORE_AVAILABLE
depends on !BR2_ARM_CPU_ARMV4
default y
-comment "Qt5 needs a toolchain w/ wchar, NPTL, C++"
+comment "Qt5 needs a toolchain w/ wchar, NPTL, C++, dynamic library"
depends on !BR2_PACKAGE_QT
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
menuconfig BR2_PACKAGE_QT5
bool "Qt5"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on !BR2_STATIC_LIBS
depends on !BR2_PACKAGE_QT
select BR2_PACKAGE_QT5BASE
help
diff --git a/package/qt5/qt5base/0009-fix-build-with-ccache.patch b/package/qt5/qt5base/0009-fix-build-with-ccache.patch
new file mode 100644
index 0000000000..896c0efb06
--- /dev/null
+++ b/package/qt5/qt5base/0009-fix-build-with-ccache.patch
@@ -0,0 +1,49 @@
+Fix QMAKE_CXX/CROSS_COMPILE verification with ccache
+
+The use of ccache leads to QMAKE_CXX definitions of the form:
+
+ QMAKE_CXX = $${CCACHE} $${CROSS_COMPILE}g++
+
+The previous test required QMAKE_CXX to be a single valid (absolute or
+QMAKE_PATH_ENV-relative) path to an existing file, which was not
+compatible with definitions of QMAKE_CXX like the one above.
+
+Fix this by using only the first value in QMAKE_CXX, which usually
+points to the compiler executable, or to the ccache executable in the
+above case.
+
+Signed-off-by: Benoît Thébaudeau <benoit@wsystem.com>
+---
+ mkspecs/features/device_config.prf | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/mkspecs/features/device_config.prf b/mkspecs/features/device_config.prf
+index cd3a0cf..eee4ac6 100644
+--- a/mkspecs/features/device_config.prf
++++ b/mkspecs/features/device_config.prf
+@@ -19,10 +19,15 @@ defineTest(deviceSanityCheckCompiler) {
+ else: \
+ sfx =
+
++ # Build the compiler filename using the first value in QMAKE_CXX in order to
++ # support tools like ccache, which give QMAKE_CXX values of the form:
++ # ccache <path_to_compiler>
++ compiler = $$first(QMAKE_CXX)$$sfx
++
+ # Check if the binary exists with an absolute path. Do this check
+ # before the CROSS_COMPILE empty check below to allow the mkspec
+ # to derive the compiler path from other device options.
+- exists($$QMAKE_CXX$$sfx):return()
++ exists($$compiler):return()
+
+ # Check for possible reasons of failure
+ # check if CROSS_COMPILE device-option is set
+@@ -31,7 +36,7 @@ defineTest(deviceSanityCheckCompiler) {
+ # Check if QMAKE_CXX points to an executable.
+ ensurePathEnv()
+ for (dir, QMAKE_PATH_ENV) {
+- exists($$dir/$${QMAKE_CXX}$$sfx): \
++ exists($$dir/$${compiler}): \
+ return()
+ }
+
diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
index 753b0696f5..e783b4d42e 100644
--- a/package/qt5/qt5base/qt5base.mk
+++ b/package/qt5/qt5base/qt5base.mk
@@ -26,7 +26,8 @@ QT5BASE_CONFIGURE_OPTS += \
-no-iconv \
-system-zlib \
-system-pcre \
- -no-pch
+ -no-pch \
+ -shared
ifeq ($(BR2_ENABLE_DEBUG),y)
QT5BASE_CONFIGURE_OPTS += -debug
@@ -34,14 +35,6 @@ else
QT5BASE_CONFIGURE_OPTS += -release
endif
-ifeq ($(BR2_STATIC_LIBS),y)
-QT5BASE_CONFIGURE_OPTS += -static
-else
-# We apparently can't build both the shared and static variants of the
-# library.
-QT5BASE_CONFIGURE_OPTS += -shared
-endif
-
QT5BASE_CONFIGURE_OPTS += -largefile
ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
@@ -156,6 +149,7 @@ QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_EXAMPLES),-make,-nomake) ex
# Build the list of libraries to be installed on the target
QT5BASE_INSTALL_LIBS_y += Qt5Core
+QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XCB) += Qt5XcbQpa
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK) += Qt5Network
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_CONCURRENT) += Qt5Concurrent
QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL) += Qt5Sql
diff --git a/package/qt5/qt5multimedia/qt5multimedia.mk b/package/qt5/qt5multimedia/qt5multimedia.mk
index 763fc28603..50fdd57a7a 100644
--- a/package/qt5/qt5multimedia/qt5multimedia.mk
+++ b/package/qt5/qt5multimedia/qt5multimedia.mk
@@ -21,6 +21,9 @@ endif
ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE),y)
QT5MULTIMEDIA_DEPENDENCIES += gst-plugins-base
endif
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y)
+QT5MULTIMEDIA_DEPENDENCIES += gst1-plugins-base
+endif
ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y)
QT5MULTIMEDIA_DEPENDENCIES += qt5declarative
@@ -40,7 +43,7 @@ define QT5MULTIMEDIA_INSTALL_STAGING_CMDS
endef
ifeq ($(BR2_STATIC_LIBS),)
-ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE),y)
+ifneq ($(BR2_PACKAGE_GST_PLUGINS_BASE)$(BR2_PACKAGE_GST1_PLUGINS_BASE),)
define QT5MULTIMEDIA_INSTALL_TARGET_QGSTTOOLS_LIB
cp -dpf $(STAGING_DIR)/usr/lib/libqgsttools*.so.* $(TARGET_DIR)/usr/lib
endef
diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk
index 4aeca5b39a..a0b9215f7a 100644
--- a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk
+++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk
@@ -11,8 +11,8 @@ QT5QUICKCONTROLS_DEPENDENCIES = qt5base qt5declarative
QT5QUICKCONTROLS_INSTALL_STAGING = YES
ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y)
-QT5QUICKCONTROLS_LICENSE = LGPLv2.1 with exception or LGPLv3 or GPLv2
-QT5QUICKCONTROLS_LICENSE_FILES = LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.GPLv2
+QT5QUICKCONTROLS_LICENSE = LGPLv3, GPLv2, GFDLv1.3
+QT5QUICKCONTROLS_LICENSE_FILES = LICENSE.LGPLv3 LICENSE.GPLv2 LICENSE.FDL
else
QT5QUICKCONTROLS_LICENSE = Commercial license
QT5QUICKCONTROLS_REDISTRIBUTE = NO
diff --git a/package/racehound/Config.in b/package/racehound/Config.in
index 9fac802b75..b9c4f364c1 100644
--- a/package/racehound/Config.in
+++ b/package/racehound/Config.in
@@ -6,6 +6,7 @@ config BR2_PACKAGE_RACEHOUND
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR # elfutils
depends on !BR2_STATIC_LIBS # elfutils
+ depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
# only x86/x86_64 supported
depends on BR2_i386 || BR2_x86_64
help
@@ -28,6 +29,7 @@ comment "racehound needs an Linux kernel >= 3.14 to be built"
depends on !BR2_LINUX_KERNEL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14
depends on BR2_i386 || BR2_x86_64
-comment "racehound needs a toolchain w/ C++, wchar, dynamic library"
- depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS
+comment "racehound needs a uClibc or (e)glibc toolchain w/ C++, wchar, dynamic library"
depends on BR2_i386 || BR2_x86_64
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS \
+ || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
diff --git a/package/rapidjson/rapidjson.mk b/package/rapidjson/rapidjson.mk
index 1ad93147b6..5da407b79f 100644
--- a/package/rapidjson/rapidjson.mk
+++ b/package/rapidjson/rapidjson.mk
@@ -8,6 +8,8 @@ RAPIDJSON_VERSION = v1.0.2
RAPIDJSON_SITE = $(call github,miloyip,rapidjson,$(RAPIDJSON_VERSION))
RAPIDJSON_LICENSE = MIT
RAPIDJSON_LICENSE_FILES = license.txt
+
+# rapidjson is a header-only C++ library
RAPIDJSON_INSTALL_TARGET = NO
RAPIDJSON_INSTALL_STAGING = YES
diff --git a/package/rng-tools/Config.in b/package/rng-tools/Config.in
index 43c5a1c2e5..469b60e89b 100644
--- a/package/rng-tools/Config.in
+++ b/package/rng-tools/Config.in
@@ -1,6 +1,6 @@
config BR2_PACKAGE_RNG_TOOLS
bool "rng-tools"
- select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC
+ select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL
# For rdrand ligcrypt is required and it's not obvious to users
select BR2_PACKAGE_LIBGCRYPT if BR2_i386 || BR2_x86_64
help
diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk
index 8648c4f878..7e975e048e 100644
--- a/package/rng-tools/rng-tools.mk
+++ b/package/rng-tools/rng-tools.mk
@@ -9,8 +9,9 @@ RNG_TOOLS_SITE = http://downloads.sourceforge.net/project/gkernel/rng-tools/$(RN
RNG_TOOLS_LICENSE = GPLv2
RNG_TOOLS_LICENSE_FILES = COPYING
-# Work around for uClibc's lack of argp_*() functions
-ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
+# Work around for uClibc or musl toolchains which lack argp_*()
+# functions.
+ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y)
RNG_TOOLS_CONF_ENV += LIBS="-largp"
RNG_TOOLS_DEPENDENCIES += argp-standalone
endif
diff --git a/package/rpi-firmware/config.txt b/package/rpi-firmware/config.txt
index aa8d2ab5dd..58cc966a87 100644
--- a/package/rpi-firmware/config.txt
+++ b/package/rpi-firmware/config.txt
@@ -1,7 +1,7 @@
# Please note that this is only a sample, we recommend you to change it to fit
# your needs.
# You should override this file using a post-build script.
-# See http://buildroot.org/downloads/manual/manual.html#rootfs-custom
+# See http://buildroot.org/manual.html#rootfs-custom
# and http://elinux.org/RPiconfig for a description of config.txt syntax
kernel=zImage
diff --git a/package/rsh-redone/Config.in b/package/rsh-redone/Config.in
index 218b47ce4a..316ff7a1db 100644
--- a/package/rsh-redone/Config.in
+++ b/package/rsh-redone/Config.in
@@ -16,11 +16,12 @@ config BR2_PACKAGE_RSH_REDONE_RLOGIND
bool "rlogind"
depends on !BR2_STATIC_LIBS
depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
select BR2_PACKAGE_LINUX_PAM
-comment "rlogind needs a toolchain w/ wchar, locale, dynamic library"
+comment "rlogind needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
- || BR2_STATIC_LIBS
+ || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
config BR2_PACKAGE_RSH_REDONE_RSH
bool "rsh"
@@ -29,10 +30,11 @@ config BR2_PACKAGE_RSH_REDONE_RSHD
bool "rshd"
depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR
depends on !BR2_STATIC_LIBS
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
select BR2_PACKAGE_LINUX_PAM
-comment "rshd needs a toolchain w/ wchar, locale, dynamic library"
+comment "rshd needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
- || BR2_STATIC_LIBS
+ || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
endif
diff --git a/package/setools/Config.in b/package/setools/Config.in
index 981d64b09b..7bab789855 100644
--- a/package/setools/Config.in
+++ b/package/setools/Config.in
@@ -7,10 +7,12 @@ config BR2_PACKAGE_SETOOLS
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on !BR2_STATIC_LIBS
depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_USE_WCHAR
# bfin: infamous _ symbol prefix issue
# nios2: triggers some toolchain issue "No symbol version
# section for versioned symbol"
- depends on !BR2_nios2 && !BR2_bfin
+ # arc: libselinux not available
+ depends on !BR2_nios2 && !BR2_bfin && !BR2_arc
help
SETools is an open source project designed to facilitate
SELinux policy analysis. The primary tools are:
@@ -24,7 +26,7 @@ config BR2_PACKAGE_SETOOLS
* secmds - command-line tools to analyze and search SELinux
policy.
-comment "setools needs a toolchain w/ threads, C++, dynamic library"
+comment "setools needs a toolchain w/ threads, C++, wchar, dynamic library"
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
- || !BR2_INSTALL_LIBSTDCPP
- depends on !BR2_nios2 && !BR2_bfin
+ || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP
+ depends on !BR2_nios2 && !BR2_bfin && !BR2_arc
diff --git a/package/squid/squid.mk b/package/squid/squid.mk
index d345d15c37..e8fd0792c7 100644
--- a/package/squid/squid.mk
+++ b/package/squid/squid.mk
@@ -90,7 +90,7 @@ define SQUID_INSTALL_INIT_SYSV
endef
define SQUID_INSTALL_INIT_SYSTEMD
- $(INSTALL) -D -m 0644 $(@D)/tools/squid.service \
+ $(INSTALL) -D -m 0644 $(@D)/tools/systemd/squid.service \
$(TARGET_DIR)/usr/lib/systemd/system/squid.service
mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
ln -sf ../../../..//usr/lib/systemd/system/squid.service \
diff --git a/package/sysdig/Config.in b/package/sysdig/Config.in
index 36d35fb7ac..dc71d5f0c5 100644
--- a/package/sysdig/Config.in
+++ b/package/sysdig/Config.in
@@ -16,6 +16,6 @@ config BR2_PACKAGE_SYSDIG
http://sysdig.org
-comment "sysdig needs a toolchain w/ C++, dynamibc library and a Linux kernel to be built"
+comment "sysdig needs a toolchain w/ C++, dynamic library and a Linux kernel to be built"
depends on !BR2_LINUX_KERNEL || !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS
depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
diff --git a/package/sysstat/sysstat.mk b/package/sysstat/sysstat.mk
index b28c029a27..7568a4bac9 100644
--- a/package/sysstat/sysstat.mk
+++ b/package/sysstat/sysstat.mk
@@ -14,7 +14,7 @@ SYSSTAT_LICENSE_FILES = COPYING
ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
SYSSTAT_DEPENDENCIES += gettext
-SYSSTAT_MAKE_OPTS += CFLAGS="$(TARGET_CFLAGS) -lintl"
+SYSSTAT_MAKE_OPTS += LFLAGS="$(TARGET_LDFLAGS) -lintl"
endif
# The isag tool is a post processing script that depends on tcl/tk
diff --git a/package/systemd/Config.in b/package/systemd/Config.in
index 510baddae7..f7fc3bbfde 100644
--- a/package/systemd/Config.in
+++ b/package/systemd/Config.in
@@ -55,7 +55,6 @@ config BR2_PACKAGE_SYSTEMD
The selection of other packages will enable some features:
- - libglib2 package will add support for gudev.
- acl package will add support for multi-seat.
http://freedesktop.org/wiki/Software/systemd
diff --git a/package/sysvinit/Config.in b/package/sysvinit/Config.in
index d91c643f82..2dc3bb07bb 100644
--- a/package/sysvinit/Config.in
+++ b/package/sysvinit/Config.in
@@ -4,4 +4,4 @@ config BR2_PACKAGE_SYSVINIT
help
/sbin/init - parent of all processes
- http://freshmeat.net/projects/sysvinit/
+ http://savannah.nongnu.org/projects/sysvinit
diff --git a/package/tftpd/S80tftpd-hpa b/package/tftpd/S80tftpd-hpa
index 41c28d148d..08443a4c5f 100755
--- a/package/tftpd/S80tftpd-hpa
+++ b/package/tftpd/S80tftpd-hpa
@@ -4,9 +4,9 @@ OPTIONS="-c -l -s /var/lib/tftpboot"
set -e
-PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESC="HPA's tftpd"
-NAME=in.tftpd
+NAME=tftpd
DAEMON=/usr/sbin/$NAME
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/S80tftpd-hpa
diff --git a/package/tinc/tinc.mk b/package/tinc/tinc.mk
index b8d4ca77ef..f7edd79acd 100644
--- a/package/tinc/tinc.mk
+++ b/package/tinc/tinc.mk
@@ -11,4 +11,10 @@ TINC_LICENSE = GPLv2+ with OpenSSL exception
TINC_LICENSE_FILES = COPYING COPYING.README
TINC_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=c99"
+ifeq ($(BR2_arc),y)
+TINC_CONF_ENV += \
+ ax_cv_check_cflags___fPIE=no \
+ ax_cv_check_ldflags___pie=no
+endif
+
$(eval $(autotools-package))
diff --git a/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch b/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch
new file mode 100644
index 0000000000..4c8d48fd9e
--- /dev/null
+++ b/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch
@@ -0,0 +1,45 @@
+From 10d82df8d920ceec4be9028a4939f96d6f407e81 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Wed, 26 Aug 2015 09:20:13 +0200
+Subject: [PATCH] tinypcminfo: make function pcm_get_format_name() static
+
+When building tinyalsa with gcc 5.x, the following warnings appear:
+
+tinypcminfo.c:97:52: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static
+ return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL;
+ ^
+tinypcminfo.c:97:35: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static
+ return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL;
+
+And the build fails with:
+
+tinypcminfo.o: In function `main':
+tinypcminfo.c:(.text+0x2f0): undefined reference to `pcm_get_format_name'
+collect2: error: ld returned 1 exit status
+
+To fix this, this patch marks the pcm_get_format_name() as static,
+since it's anyway only used in tinypcminfo.c.
+
+Submitted upstream: https://github.com/tinyalsa/tinyalsa/pull/61
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ tinypcminfo.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tinypcminfo.c b/tinypcminfo.c
+index b2d11bc..99eec34 100644
+--- a/tinypcminfo.c
++++ b/tinypcminfo.c
+@@ -92,7 +92,7 @@ static const char *format_lookup[] = {
+ /* Returns a human readable name for the format associated with bit_index,
+ * NULL if bit_index is not known.
+ */
+-inline const char *pcm_get_format_name(unsigned bit_index)
++static inline const char *pcm_get_format_name(unsigned bit_index)
+ {
+ return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL;
+ }
+--
+2.5.0
+
diff --git a/package/tn5250/tn5250.mk b/package/tn5250/tn5250.mk
index 213f02cb68..bbaa686d86 100644
--- a/package/tn5250/tn5250.mk
+++ b/package/tn5250/tn5250.mk
@@ -13,7 +13,8 @@ TN5250_LICENSE_FILES = COPYING
ifeq ($(BR2_PACKAGE_OPENSSL),y)
TN5250_CONF_OPTS += --with-ssl-dir=$(STAGING_DIR)/usr
-TN5250_DEPENDENCIES += openssl
+TN5250_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs openssl`"
+TN5250_DEPENDENCIES += openssl host-pkgconf
else
TN5250_CONF_OPTS += --without-ssl
endif
diff --git a/package/tvheadend/Config.in b/package/tvheadend/Config.in
index 4edf014519..bfc156a5ff 100644
--- a/package/tvheadend/Config.in
+++ b/package/tvheadend/Config.in
@@ -1,8 +1,10 @@
-comment "tvheadend needs a toolchain w/ NPTL, headers >= 3.2"
- depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
+comment "tvheadend needs a toolchain w/ NPTL, headers >= 3.2, dynamic library"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
+ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 || BR2_STATIC_LIBS
config BR2_PACKAGE_TVHEADEND
bool "tvheadend"
+ depends on !BR2_STATIC_LIBS # dladdr()
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
select BR2_PACKAGE_DTV_SCAN_TABLES
diff --git a/package/tz/tz.mk b/package/tz/tz.mk
index 349d73f7f2..7a756eb5d8 100644
--- a/package/tz/tz.mk
+++ b/package/tz/tz.mk
@@ -14,7 +14,7 @@ define TZ_BUILD_CMDS
(cd $(HOST_DIR)/usr/share/zoneinfo/posix/; \
for i in $$(find . -type f); do \
mkdir -p $(@D)/output/$$(dirname $$i); \
- $(TZDUMP) -p . -q $${i#./} > $(@D)/output/$$i; \
+ $(TZDUMP) -p . -q $${i#./} | sed '1d' > $(@D)/output/$$i; \
done \
)
endef
diff --git a/package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch b/package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch
new file mode 100644
index 0000000000..3a0c42ab05
--- /dev/null
+++ b/package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch
@@ -0,0 +1,35 @@
+From 9ce534491aea9b7975cfee5064423d0b850d8002 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Sun, 9 Aug 2015 11:20:00 +0200
+Subject: [PATCH] vipw: Remove pre-ANSI compiler support
+
+__P() is used for compatibility with old K&R C compilers. With
+ANSI C this macro has no effect.
+
+This fixes a compilation error with musl libc because of undeclared
+__P.
+
+Ref:
+https://lists.samba.org/archive/samba-technical/2015-June/108042.html
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ login-utils/vipw.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/login-utils/vipw.c b/login-utils/vipw.c
+index 668f4d8..e4c803b 100644
+--- a/login-utils/vipw.c
++++ b/login-utils/vipw.c
+@@ -85,7 +85,7 @@ int program;
+ char orig_file[FILENAMELEN]; /* original file /etc/passwd or /etc/group */
+ char *tmp_file; /* tmp file */
+
+-void pw_error __P((char *, int, int));
++void pw_error (char *, int, int);
+
+ static void copyfile(int from, int to)
+ {
+--
+2.4.3
+
diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in
index 39df11cb38..cc6e9a500b 100644
--- a/package/util-linux/Config.in
+++ b/package/util-linux/Config.in
@@ -66,13 +66,14 @@ config BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH
bool "chfn/chsh"
depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
depends on !BR2_STATIC_LIBS
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
select BR2_PACKAGE_LINUX_PAM
help
Change login shell, real user name and information
-comment "chfn/chsh needs a toolchain w/ wchar, locale, dynamic library"
+comment "chfn/chsh needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
- || BR2_STATIC_LIBS
+ || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
config BR2_PACKAGE_UTIL_LINUX_CRAMFS
bool "cramfs utilities"
@@ -124,13 +125,14 @@ config BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS
bool "login utilities"
depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
depends on !BR2_STATIC_LIBS
+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
select BR2_PACKAGE_LINUX_PAM
help
Build login utilities (last, login, su, sulogin)
-comment "login utilities needs a toolchain w/ wchar, locale, dynamic library"
+comment "login utilities needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
- || BR2_STATIC_LIBS
+ || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
config BR2_PACKAGE_UTIL_LINUX_LOSETUP
bool "losetup"
diff --git a/package/vlc/Config.in b/package/vlc/Config.in
index 471f4a79da..71e4f34742 100644
--- a/package/vlc/Config.in
+++ b/package/vlc/Config.in
@@ -11,8 +11,8 @@ config BR2_PACKAGE_VLC
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS
- select BR2_PACKAGE_OPENCV_LIB_IMGPROC if BR2_PACKAGE_OPENCV
- select BR2_PACKAGE_OPENCV_LIB_OBJDETECT if BR2_PACKAGE_OPENCV
+ select BR2_PACKAGE_VLC_OPENCV_BACKEND if BR2_PACKAGE_OPENCV
+ select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3
help
VLC is a free and open source cross-platform multimedia player
and framework that plays most multimedia files as well as DVD,
@@ -20,6 +20,16 @@ config BR2_PACKAGE_VLC
http://www.videolan.org/vlc/
+config BR2_PACKAGE_VLC_OPENCV_BACKEND
+ bool
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
+
+config BR2_PACKAGE_VLC_OPENCV3_BACKEND
+ bool
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT
+
comment "vlc needs a uclibc snapshot, uclibc-ng or (e)glibc toolchain w/ C++, wchar, threads, headers >= 3.7"
depends on !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) \
|| !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk
index e40863548c..6f7fd58a05 100644
--- a/package/vlc/vlc.mk
+++ b/package/vlc/vlc.mk
@@ -153,10 +153,14 @@ else
VLC_CONF_OPTS += --disable-gles2
endif
-ifeq ($(BR2_PACKAGE_OPENCV),y)
+ifeq ($(BR2_PACKAGE_OPENCV)$(BR2_PACKAGE_OPENCV3),y)
VLC_CONF_OPTS += --enable-opencv
+ifeq ($(BR2_PACKAGE_OPENCV),y)
VLC_DEPENDENCIES += opencv
else
+VLC_DEPENDENCIES += opencv3
+endif
+else
VLC_CONF_OPTS += --disable-opencv
endif
diff --git a/package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch b/package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch
new file mode 100644
index 0000000000..d56dc58161
--- /dev/null
+++ b/package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch
@@ -0,0 +1,46 @@
+[WTF] Platform.h: use _ABI64 instead of _MIPS_SIM_ABI64 to determine MIPS N64
+
+Patch backported from upstream:
+
+http://trac.webkit.org/changeset/185863
+
+I tweaked this patch to remove the Changelog part in order to make it
+apply in Buildroot.
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+
+From 2c84c8d1c294037141473c10e0374df63a3cdea9 Mon Sep 17 00:00:00 2001
+From: ossy@webkit.org <ossy@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date: Tue, 23 Jun 2015 06:33:16 +0000
+Subject: [PATCH] [WTF] Platform.h: use _ABI64 instead of _MIPS_SIM_ABI64 to determine MIPS N64
+ https://bugs.webkit.org/show_bug.cgi?id=145113
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Patch by YunQiang Su <wzssyqa@gmail.com> on 2015-06-22
+Reviewed by Csaba Osztrogonác.
+
+* wtf/Platform.h:
+
+git-svn-id: http://svn.webkit.org/repository/webkit/trunk@185863 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+---
+ Source/WTF/wtf/Platform.h | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
+index c234f50..b5e9859 100644
+--- a/Source/WTF/wtf/Platform.h
++++ b/Source/WTF/wtf/Platform.h
+@@ -82,7 +82,7 @@
+
+ /* CPU(MIPS) - MIPS 32-bit and 64-bit */
+ #if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_) || defined(__mips64))
+-#if defined(_MIPS_SIM_ABI64) && (_MIPS_SIM == _MIPS_SIM_ABI64)
++#if defined(_ABI64) && (_MIPS_SIM == _ABI64)
+ #define WTF_CPU_MIPS64 1
+ #define WTF_MIPS_ARCH __mips64
+ #else
+--
+1.7.1
+
diff --git a/package/webkitgtk24/Config.in b/package/webkitgtk24/Config.in
index d8c5e93ded..0a30bac7ac 100644
--- a/package/webkitgtk24/Config.in
+++ b/package/webkitgtk24/Config.in
@@ -2,25 +2,19 @@ config BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS
bool
# ARM needs BLX, so v5t+, BE completely untested so disabled
default y if BR2_arm && !BR2_ARM_CPU_ARMV4
- # i386 / x86_64 external toolchains have issues and old gcc versions
- # https://bugs.webkit.org/show_bug.cgi?id=132231
- # https://stackoverflow.com/questions/9140019/yield-is-not-a-member-of-stdthis-thread
default y if BR2_i386 || BR2_x86_64
- depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209
- depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203
- depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109
# Disabled on MIPS big endian due to sigbus
default y if BR2_mipsel || BR2_mips64el
# Disabled on PowerPC pending runtime testing
# Disabled on SuperH because of segfault
depends on BR2_USE_MMU # libglib2
-comment "webkitgtk24 needs libgtk2 and a toolchain w/ C++, wchar, NPTL"
+comment "webkitgtk24 needs libgtk2 and a toolchain w/ C++, wchar, NPTL, gcc >=4.8"
depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS
depends on BR2_ARCH_HAS_ATOMICS
depends on !BR2_PACKAGE_LIBGTK2 || !BR2_PACKAGE_XORG7 || \
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP \
- || !BR2_USE_WCHAR
+ || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
depends on BR2_USE_MMU
config BR2_PACKAGE_WEBKITGTK24
@@ -28,6 +22,7 @@ config BR2_PACKAGE_WEBKITGTK24
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
depends on (BR2_PACKAGE_LIBGTK2 && BR2_PACKAGE_XORG7)
depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS
depends on BR2_ARCH_HAS_ATOMICS
diff --git a/package/weston/Config.in b/package/weston/Config.in
index 07773f0a7b..f530e22bf6 100644
--- a/package/weston/Config.in
+++ b/package/weston/Config.in
@@ -41,8 +41,12 @@ config BR2_PACKAGE_WESTON_HAS_COMPOSITOR
config BR2_PACKAGE_WESTON_FBDEV
bool "fbdev compositor"
+# RDP backend needs FreeRDP master, while we only have stable-1.1
+comment "RDP backend is broken"
+
config BR2_PACKAGE_WESTON_RDP
bool "RDP compositor"
+ depends on BROKEN # needs FreeRDP master
depends on BR2_USE_WCHAR # freerdp
select BR2_PACKAGE_FREERDP
select BR2_PACKAGE_WESTON_HAS_COMPOSITOR
@@ -60,6 +64,7 @@ config BR2_PACKAGE_WESTON_RDP
overlay.
comment "RDP compositor needs a toolchain w/ wchar"
+ depends on BROKEN # needs FreeRDP master
depends on !BR2_USE_WCHAR
# rpi-userland is an EGL/GLES provider, so we can't select it
diff --git a/package/wireshark/wireshark.hash b/package/wireshark/wireshark.hash
index b8368b39a1..ad1b043ec7 100644
--- a/package/wireshark/wireshark.hash
+++ b/package/wireshark/wireshark.hash
@@ -1,3 +1,3 @@
-# From https://www.wireshark.org/download/SIGNATURES-1.12.6.txt
-md5 25ad2bc1c2a21396827c238fcff51bf3 wireshark-1.12.6.tar.bz2
-sha1 5b592bd0389b76d3bdee6a7336e9492f8162c94d wireshark-1.12.6.tar.bz2
+# From https://www.wireshark.org/download/SIGNATURES-1.12.7.txt
+md5 c8ae53f648b1dcbf6e74495401a0f1ab wireshark-1.12.7.tar.bz2
+sha1 bed365bacfd0b5c653d8568ad25e52957659bd9f wireshark-1.12.7.tar.bz2
diff --git a/package/wireshark/wireshark.mk b/package/wireshark/wireshark.mk
index af3d67c562..a2b7d1dd57 100644
--- a/package/wireshark/wireshark.mk
+++ b/package/wireshark/wireshark.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WIRESHARK_VERSION = 1.12.6
+WIRESHARK_VERSION = 1.12.7
WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.bz2
WIRESHARK_SITE = http://www.wireshark.org/download/src/all-versions
WIRESHARK_LICENSE = wireshark license
diff --git a/package/wvdial/Config.in b/package/wvdial/Config.in
index 5d415b1c79..d5458700f2 100644
--- a/package/wvdial/Config.in
+++ b/package/wvdial/Config.in
@@ -3,12 +3,13 @@ config BR2_PACKAGE_WVDIAL
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_MMU # wvstreams
depends on !BR2_STATIC_LIBS # wvstreams
+ depends on !BR2_TOOLCHAIN_USES_MUSL # wvstreams
select BR2_PACKAGE_WVSTREAMS
help
wvdial is an intelligent Point-to-Point Protocol dialer
http://wvdial.googlecode.com/
-comment "wvdial needs a toolchain w/ C++, dynamic library"
+comment "wvdial needs a (e)glibc or uClibc toolchain w/ C++, dynamic library"
depends on BR2_USE_MMU
- depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS
+ depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
diff --git a/package/wvstreams/Config.in b/package/wvstreams/Config.in
index 0cbe60aff6..e2edd6d257 100644
--- a/package/wvstreams/Config.in
+++ b/package/wvstreams/Config.in
@@ -3,6 +3,8 @@ config BR2_PACKAGE_WVSTREAMS
depends on BR2_INSTALL_LIBSTDCPP
depends on !BR2_STATIC_LIBS
depends on BR2_USE_MMU # fork()
+ # musl not supported and no upstream activity since 2011.
+ depends on !BR2_TOOLCHAIN_USES_MUSL
select BR2_PACKAGE_OPENSSL
select BR2_PACKAGE_ZLIB
help
@@ -10,6 +12,6 @@ config BR2_PACKAGE_WVSTREAMS
http://wvstreams.googlecode.com/
-comment "wvstreams needs a toolchain w/ C++, dynamic library"
+comment "wvstreams needs a (e)glibc or uClibc toolchain w/ C++, dynamic library"
depends on BR2_USE_MMU
- depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS
+ depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
diff --git a/package/x11r7/libepoxy/Config.in b/package/x11r7/libepoxy/Config.in
index c4f5794d23..5628bf79da 100644
--- a/package/x11r7/libepoxy/Config.in
+++ b/package/x11r7/libepoxy/Config.in
@@ -1,7 +1,13 @@
config BR2_PACKAGE_LIBEPOXY
bool "epoxy"
- depends on BR2_PACKAGE_MESA3D
+ select BR2_PACKAGE_XLIB_LIBX11
+ select BR2_PACKAGE_XUTIL_UTIL_MACROS
+ depends on BR2_PACKAGE_HAS_LIBEGL
help
- Epoxy is a library for handling OpenGL function pointer management for you.
+ Epoxy is a library for handling OpenGL function pointer
+ management for you.
https://github.com/anholt/libepoxy
+
+comment "epoxy needs an OpenGL EGL backend"
+ depends on !BR2_PACKAGE_HAS_LIBEGL
diff --git a/package/x11r7/libepoxy/libepoxy.mk b/package/x11r7/libepoxy/libepoxy.mk
index d908893210..58b094afd2 100644
--- a/package/x11r7/libepoxy/libepoxy.mk
+++ b/package/x11r7/libepoxy/libepoxy.mk
@@ -8,8 +8,13 @@ LIBEPOXY_VERSION = v1.2
LIBEPOXY_SITE = $(call github,anholt,libepoxy,$(LIBEPOXY_VERSION))
LIBEPOXY_INSTALL_STAGING = YES
LIBEPOXY_AUTORECONF = YES
-LIBEPOXY_DEPENDENCIES = mesa3d
+LIBEPOXY_DEPENDENCIES = xlib_libX11 xutil_util-macros libegl \
+ $(if $(BR2_PACKAGE_HAS_LIBGL),libgl)
LIBEPOXY_LICENSE = MIT
LIBEPOXY_LICENSE_FILES = COPYING
+# needed for rpi-userland
+LIBEPOXY_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags egl`
+LIBEPOXY_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) $(LIBEPOXY_CFLAGS)"
+
$(eval $(autotools-package))
diff --git a/package/x11r7/xdriver_xf86-input-synaptics/Config.in b/package/x11r7/xdriver_xf86-input-synaptics/Config.in
index 6b5e5b6185..ffe1a2a448 100644
--- a/package/x11r7/xdriver_xf86-input-synaptics/Config.in
+++ b/package/x11r7/xdriver_xf86-input-synaptics/Config.in
@@ -1,5 +1,6 @@
config BR2_PACKAGE_XDRIVER_XF86_INPUT_SYNAPTICS
bool "xf86-input-synaptics"
+ select BR2_PACKAGE_LIBEVDEV
select BR2_PACKAGE_XPROTO_INPUTPROTO
select BR2_PACKAGE_XPROTO_RANDRPROTO
select BR2_PACKAGE_XPROTO_XPROTO
diff --git a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk
index f18040571f..28663d17be 100644
--- a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk
+++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk
@@ -9,6 +9,6 @@ XDRIVER_XF86_INPUT_SYNAPTICS_SOURCE = xf86-input-synaptics-$(XDRIVER_XF86_INPUT_
XDRIVER_XF86_INPUT_SYNAPTICS_SITE = http://xorg.freedesktop.org/releases/individual/driver
XDRIVER_XF86_INPUT_SYNAPTICS_LICENSE = MIT
XDRIVER_XF86_INPUT_SYNAPTICS_LICENSE_FILES = COPYING
-XDRIVER_XF86_INPUT_SYNAPTICS_DEPENDENCIES = xserver_xorg-server xproto_inputproto xproto_randrproto xproto_xproto mtdev
+XDRIVER_XF86_INPUT_SYNAPTICS_DEPENDENCIES = libevdev xserver_xorg-server xproto_inputproto xproto_randrproto xproto_xproto mtdev
$(eval $(autotools-package))
diff --git a/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch
new file mode 100644
index 0000000000..4ef95efc3e
--- /dev/null
+++ b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch
@@ -0,0 +1,19 @@
+Kernel modesettings support also depends on dri2, see
+http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/drivers/modesetting/Makefile.am#n46
+
+Patch sent upstream: https://bugs.freedesktop.org/show_bug.cgi?id=91584
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr xorg-server-1.17.2.org/configure.ac xorg-server-1.17.2/configure.ac
+--- xorg-server-1.17.2.org/configure.ac 2015-06-16 17:42:40.000000000 +0200
++++ xorg-server-1.17.2/configure.ac 2015-08-08 10:44:59.702382624 +0200
+@@ -2036,7 +2036,7 @@
+ XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS"
+ fi
+
+- if test "x$DRM" = xyes; then
++ if test "x$DRM" = xyes -a "x$DRI2" = xyes; then
+ dnl 2.4.46 is required for cursor hotspot support.
+ PKG_CHECK_EXISTS(libdrm >= 2.4.46)
+ XORG_DRIVER_MODESETTING=yes
diff --git a/package/x11r7/xserver_xorg-server/Config.in b/package/x11r7/xserver_xorg-server/Config.in
index f0ec598ff1..8b794b3d24 100644
--- a/package/x11r7/xserver_xorg-server/Config.in
+++ b/package/x11r7/xserver_xorg-server/Config.in
@@ -92,6 +92,8 @@ choice
config BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR
bool "Modular X.org"
+ select BR2_PACKAGE_LIBDRM if (BR2_PACKAGE_XPROTO_XF86DRIPROTO || \
+ BR2_PACKAGE_XPROTO_DRI2PROTO)
depends on BR2_INSTALL_LIBSTDCPP
help
This variant of the X.org server is the full-blown variant,
diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
index 79d663c6cc..3f6cda726d 100644
--- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
+++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
@@ -10,7 +10,10 @@ XSERVER_XORG_SERVER_SITE = http://xorg.freedesktop.org/releases/individual/xserv
XSERVER_XORG_SERVER_LICENSE = MIT
XSERVER_XORG_SERVER_LICENSE_FILES = COPYING
XSERVER_XORG_SERVER_INSTALL_STAGING = YES
+# xfont_font-util is needed only for autoreconf
+XSERVER_XORG_SERVER_AUTORECONF = YES
XSERVER_XORG_SERVER_DEPENDENCIES = \
+ xfont_font-util \
xutil_util-macros \
xlib_libXfont \
xlib_libX11 \
@@ -83,6 +86,12 @@ endif
ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y)
XSERVER_XORG_SERVER_CONF_OPTS += --enable-xorg
XSERVER_XORG_SERVER_DEPENDENCIES += libpciaccess
+ifeq ($(BR2_PACKAGE_LIBDRM),y)
+XSERVER_XORG_SERVER_DEPENDENCIES += libdrm
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-libdrm
+else
+XSERVER_XORG_SERVER_CONF_OPTS += --disable-libdrm
+endif
else
XSERVER_XORG_SERVER_CONF_OPTS += --disable-xorg
endif
@@ -121,11 +130,12 @@ else # modular
XSERVER_XORG_SERVER_CONF_OPTS += --disable-kdrive --disable-xfbdev
endif
-ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
-XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-libdrm --enable-glx
-XSERVER_XORG_SERVER_DEPENDENCIES += libdrm mesa3d xproto_xf86driproto
+# libdrm locking macros use armv6+ instructions on arm
+ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER)n$(BR2_ARM_CPU_ARMV4)$(BR2_ARM_CPU_ARMV5),yn)
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
+XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
else
-XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-libdrm --disable-glx
+XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
endif
ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX),y)
@@ -143,10 +153,9 @@ endif
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
XSERVER_XORG_SERVER_DEPENDENCIES += udev
XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev
-# udev kms support depends on libdrm
-ifeq ($(BR2_PACKAGE_LIBDRM),y)
-XSERVER_XORG_SERVER_DEPENDENCIES += libdrm
-XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms --enable-libdrm
+# udev kms support depends on libdrm and dri2
+ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_XPROTO_DRI2PROTO),yy)
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms
else
XSERVER_XORG_SERVER_CONF_OPTS += --disable-config-udev-kms
endif
@@ -195,7 +204,7 @@ endif
ifeq ($(BR2_PACKAGE_XPROTO_DRI3PROTO),y)
XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libxshmfence xproto_dri3proto
XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri3
-ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
+ifeq ($(BR2_PACKAGE_LIBEPOXY),y)
XSERVER_XORG_SERVER_DEPENDENCIES += libepoxy
XSERVER_XORG_SERVER_CONF_OPTS += --enable-glamor
endif
diff --git a/package/x264/x264.mk b/package/x264/x264.mk
index ace7f433b7..7e7e597965 100644
--- a/package/x264/x264.mk
+++ b/package/x264/x264.mk
@@ -4,7 +4,7 @@
#
################################################################################
-X264_VERSION = c8a773ebfca148ef04f5a60d42cbd7336af0baf6
+X264_VERSION = e86f3a1993234e8f26050c243aa253651200fa6b
X264_SITE = git://git.videolan.org/x264.git
X264_LICENSE = GPLv2+
X264_DEPENDENCIES = host-pkgconf
@@ -13,8 +13,10 @@ X264_INSTALL_STAGING = YES
X264_CONF_OPTS = --disable-avs
ifeq ($(BR2_i386)$(BR2_x86_64),y)
+# yasm needed for assembly files
X264_DEPENDENCIES += host-yasm
-else ifeq ($(BR2_ARM_CPU_ARMV7A),y)
+X264_CONF_ENV += AS="$(HOST_DIR)/usr/bin/yasm"
+else ifeq ($(BR2_ARM_CPU_ARMV7A)$(BR2_aarch64),y)
# We need to pass gcc as AS, because the ARM assembly files have to be
# preprocessed
X264_CONF_ENV += AS="$(TARGET_CC)"
diff --git a/package/zyre/zyre.mk b/package/zyre/zyre.mk
index 661dddc82c..b17dfd022d 100644
--- a/package/zyre/zyre.mk
+++ b/package/zyre/zyre.mk
@@ -4,12 +4,12 @@
#
################################################################################
-ZYRE_VERSION = v1.0.0
+ZYRE_VERSION = a351468b7d313fc90c446668122365851a9c60e4
ZYRE_SITE = $(call github,zeromq,zyre,$(ZYRE_VERSION))
ZYRE_LICENSE = LGPLv3+
ZYRE_LICENSE_FILES = COPYING COPYING.LESSER
ZYRE_INSTALL_STAGING = YES
-ZYRE_DEPENDENCIES = czmq zeromq
+ZYRE_DEPENDENCIES = czmq zeromq host-pkgconf
ZYRE_AUTORECONF = YES
define ZYRE_CREATE_CONFIG_DIR
diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk
index 018f3edb92..85a9407642 100644
--- a/toolchain/helpers.mk
+++ b/toolchain/helpers.mk
@@ -191,16 +191,16 @@ check_kernel_headers_version = \
# - eat all the remaining chars on the line
# - replace by the matched expression
#
-# - s/\.[[:digit:]]+$//
-# - eat a dot followed by as many digits as possible up to the end
-# of line
-# - replace with nothing
-#
check_gcc_version = \
expected_version="$(strip $2)" ; \
- real_version=`$(1) --version | sed -r -e '1!d; s/^[^)]+\) ([^[:space:]]+).*/\1/; s/\.[[:digit:]]+$$//;'` ; \
- if [ "$${real_version}" != "$${expected_version}" ] ; then \
- echo "Incorrect selection of gcc version: expected $${expected_version}, got $${real_version}" ; \
+ if [ -z "$${expected_version}" ]; then \
+ printf "Internal error, gcc version unknown (no GCC_AT_LEAST_X_Y selected)\n"; \
+ exit 1 ; \
+ fi; \
+ real_version=`$(1) --version | sed -r -e '1!d; s/^[^)]+\) ([^[:space:]]+).*/\1/;'` ; \
+ if [[ ! "$${real_version}" =~ ^$${expected_version}\. ]] ; then \
+ printf "Incorrect selection of gcc version: expected %s.x, got %s\n" \
+ "$${expected_version}" "$${real_version}" ; \
exit 1 ; \
fi
OpenPOWER on IntegriCloud