diff options
194 files changed, 3998 insertions, 797 deletions
@@ -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" @@ -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 |