diff --git a/Config.in b/Config.in index ccd777e8bb..bd8f0d1a10 100644 --- a/Config.in +++ b/Config.in @@ -158,6 +158,13 @@ config BR2_XZCAT Command to be used to extract a xz'ed file to stdout. Default is "xzcat" +config BR2_LZCAT + string "lzcat command" + default "lzip -d -c" + help + Command to be used to extract a lzip'ed file to stdout. + Default is "lzip -d -c" + config BR2_TAR_OPTIONS string "Tar options" default "" diff --git a/Makefile b/Makefile index f32da558a1..b3e71c5ef8 100644 --- a/Makefile +++ b/Makefile @@ -86,9 +86,9 @@ else # umask / $(CURDIR) / $(O) all: # Set and export the version string -export BR2_VERSION := 2017.02-rc1 +export BR2_VERSION := 2017.02 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1486825200 +BR2_VERSION_EPOCH = 1488315000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) @@ -402,6 +402,7 @@ unexport QMAKESPEC unexport TERMINFO unexport MACHINE unexport O +unexport GCC_COLORS GNU_HOST_NAME := $(shell support/gnuconfig/config.guess) @@ -431,6 +432,7 @@ KERNEL_ARCH := $(shell echo "$(ARCH)" | sed -e "s/-.*//" \ ZCAT := $(call qstrip,$(BR2_ZCAT)) BZCAT := $(call qstrip,$(BR2_BZCAT)) XZCAT := $(call qstrip,$(BR2_XZCAT)) +LZCAT := $(call qstrip,$(BR2_LZCAT)) TAR_OPTIONS = $(call qstrip,$(BR2_TAR_OPTIONS)) -xf # packages compiled for the host go here diff --git a/board/common/overlay/etc/init.d/S14postupgrade b/board/common/overlay/etc/init.d/S14postupgrade index ec7c3e1596..ed80d56575 100755 --- a/board/common/overlay/etc/init.d/S14postupgrade +++ b/board/common/overlay/etc/init.d/S14postupgrade @@ -5,6 +5,8 @@ test -n "$os_version" || source /etc/init.d/base sys_version_file="/etc/version" version_file="/data/etc/version" post_upgrade_dir="/usr/share/post-upgrade" +sys_os_conf="/etc/os.conf" +os_conf="/data/etc/os.conf" hash=$(md5sum $version_file 2>/dev/null | cut -d ' ' -f 1) sys_hash=$(md5sum $sys_version_file 2>/dev/null | cut -d ' ' -f 1) @@ -34,10 +36,23 @@ function run_post_upgrade() { done } +function update_os_conf() { + source $sys_os_conf + sys_vars=$(cat $sys_os_conf | cut -d '=' -f 1) + for var in $sys_vars; do + if ! grep "$var=" $os_conf &>/dev/null; then + msg_begin "Adding $var to os.conf" + echo "$var=\"${!var}\"" >> $os_conf + msg_done + fi + done +} + case "$1" in start) run_post_upgrade cp $sys_version_file $version_file + update_os_conf ;; stop) diff --git a/linux/Config.in b/linux/Config.in index 740dd391c9..1967dcca84 100644 --- a/linux/Config.in +++ b/linux/Config.in @@ -26,7 +26,7 @@ choice prompt "Kernel version" config BR2_LINUX_KERNEL_LATEST_VERSION - bool "Latest version (4.9.9)" + bool "Latest version (4.9.13)" config BR2_LINUX_KERNEL_CUSTOM_VERSION bool "Custom version" @@ -97,7 +97,7 @@ endif config BR2_LINUX_KERNEL_VERSION string - default "4.9.9" if BR2_LINUX_KERNEL_LATEST_VERSION + default "4.9.13" if BR2_LINUX_KERNEL_LATEST_VERSION default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \ if BR2_LINUX_KERNEL_CUSTOM_VERSION default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL diff --git a/package/Config.in b/package/Config.in index e3764f34be..29befe2520 100644 --- a/package/Config.in +++ b/package/Config.in @@ -449,7 +449,6 @@ endmenu source "package/read-edid/Config.in" source "package/rfkill/Config.in" source "package/rng-tools/Config.in" - source "package/rpi-armmem/Config.in" source "package/rpi-userland/Config.in" source "package/rs485conf/Config.in" source "package/rtl8188eu/Config.in" @@ -701,7 +700,6 @@ menu "External python modules" source "package/python-flask-jsonrpc/Config.in" source "package/python-flask-login/Config.in" source "package/python-flup/Config.in" - source "package/python-functools32/Config.in" source "package/python-futures/Config.in" source "package/python-gobject/Config.in" source "package/python-gunicorn/Config.in" @@ -763,7 +761,6 @@ menu "External python modules" source "package/python-pycli/Config.in" source "package/python-pycparser/Config.in" source "package/python-pycrypto/Config.in" - source "package/python-pycurl/Config.in" source "package/python-pydal/Config.in" source "package/python-pyelftools/Config.in" source "package/python-pyftpdlib/Config.in" @@ -772,7 +769,6 @@ menu "External python modules" source "package/python-pyicu/Config.in" source "package/python-pyinotify/Config.in" source "package/python-pylru/Config.in" - source "package/python-pymongo/Config.in" source "package/python-pymysql/Config.in" source "package/python-pynacl/Config.in" source "package/python-pyopenssl/Config.in" diff --git a/package/alsa-utils/Config.in b/package/alsa-utils/Config.in index b58e6583c3..adc0aabd8e 100644 --- a/package/alsa-utils/Config.in +++ b/package/alsa-utils/Config.in @@ -34,9 +34,6 @@ config BR2_PACKAGE_ALSA_UTILS_ALSALOOP config BR2_PACKAGE_ALSA_UTILS_ALSAMIXER bool "alsamixer" select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_NCURSES_TARGET_PANEL - select BR2_PACKAGE_NCURSES_TARGET_FORM - select BR2_PACKAGE_NCURSES_TARGET_MENU select BR2_PACKAGE_ALSA_LIB_MIXER depends on BR2_USE_WCHAR default y diff --git a/package/assimp/Config.in b/package/assimp/Config.in index 8fa6429da0..93020f7238 100644 --- a/package/assimp/Config.in +++ b/package/assimp/Config.in @@ -4,11 +4,6 @@ config BR2_PACKAGE_ASSIMP # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124, that # cause an infinite loop in gcc when building this package. depends on !BR2_microblaze - # The ADI Blackfin toolchain does not build assimp properly, - # fails with "internal compiler error: in simplify_subreg, at - # simplify-rtx.c:5001". It builds fine with a mainline gcc for - # Blackfin. - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_ZLIB help diff --git a/package/assimp/assimp.mk b/package/assimp/assimp.mk index 08893fff00..acd3701a38 100644 --- a/package/assimp/assimp.mk +++ b/package/assimp/assimp.mk @@ -16,6 +16,14 @@ ifeq ($(BR2_m68k),y) ASSIMP_CXXFLAGS += -mxgot endif +# workaround SuperH compiler failure when static linking (i.e -fPIC is +# not passed) in gcc versions 5.x or older. The -Os optimization level +# causes a "unable to find a register to spill in class +# ‘GENERAL_REGS’" error. -O2 works fine. +ifeq ($(BR2_sh):$(BR2_STATIC_LIBS):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:y:) +ASSIMP_CXXFLAGS += -O2 +endif + ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF \ -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) $(ASSIMP_CXXFLAGS)" diff --git a/package/bctoolbox/0001-Fix-Libs.private-flags-for-mbedtls.patch b/package/bctoolbox/0001-Fix-Libs.private-flags-for-mbedtls.patch new file mode 100644 index 0000000000..a70c7c633a --- /dev/null +++ b/package/bctoolbox/0001-Fix-Libs.private-flags-for-mbedtls.patch @@ -0,0 +1,49 @@ +From c0b3dbb43aa3a38c47311556c85eadc6072e2d68 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Tue, 14 Feb 2017 22:02:26 +0100 +Subject: [PATCH] Fix Libs.private flags for mbedtls +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Static linking with bctoolbox fails when using pkg-config as the +generated bctoolbox.pc file only consists of an '-L' string without any +search path or libraries flags. + +That's because of an typo in `mbedtls_library_path`. However, +`mbedtls_library_path` contains a string of the mbedtls libraries +concatenated by an ';' which cannot be parsed by pkg-config. + +Therefore, use `MBEDTLS_LIBRARY` instead of `MBEDTLS_LIBRARIES` to get +the library path. + +Furthermore, add the three mbedtls libraries *mbedtls*, *mbedcrypto*, and +*mbedx509* to `LIBS_PRIVATE` so these libraries are added to the +`Libs.private` field of bctoolbox.pc. + +Upstream status: Pending +https://github.com/BelledonneCommunications/bctoolbox/pull/4 + +Signed-off-by: Jörg Krause +--- + CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ed7aa00..4127f0e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -103,8 +103,8 @@ else() + endif() + + if(MBEDTLS_FOUND) +- get_filename_component(mbedtls_library_path "${MBEDTLS_LIBRARIES}" PATH) +- set(LIBS_PRIVATE "${LIBS_PRIVATE} -L${mbedlts_library_path}") ++ get_filename_component(mbedtls_library_path "${MBEDTLS_LIBRARY}" PATH) ++ set(LIBS_PRIVATE "${LIBS_PRIVATE} -L${mbedtls_library_path} -lmbedtls -lmbedcrypto -lmbedx509") + endif() + if(POLARSSL_FOUND) + get_filename_component(polarssl_library_path "${POLARSSL_LIBRARIES}" PATH) +-- +2.11.1 + diff --git a/package/bctoolbox/Config.in b/package/bctoolbox/Config.in index 834f6e2a6a..e9e69205f8 100644 --- a/package/bctoolbox/Config.in +++ b/package/bctoolbox/Config.in @@ -2,11 +2,13 @@ config BR2_PACKAGE_BCTOOLBOX bool "bctoolbox" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS - select BR2_PACKAGE_MBEDTLS # mbedtls is preferred over polarssl help Utilities library used by Belledonne Communications softwares like belle-sip, mediastreamer2 and linphone. + Select BR2_PACKAGE_MBEDTLS (preferred) or + BR2_PACKAGE_POLARSSL for crypto support. + https://github.com/BelledonneCommunications/bctoolbox comment "bctoolbox needs a toolchain w/ C++, threads" diff --git a/package/bctoolbox/bctoolbox.mk b/package/bctoolbox/bctoolbox.mk index 64c67792a7..78269751ef 100644 --- a/package/bctoolbox/bctoolbox.mk +++ b/package/bctoolbox/bctoolbox.mk @@ -8,14 +8,32 @@ BCTOOLBOX_VERSION = 0.4.0 BCTOOLBOX_SITE = $(call github,BelledonneCommunications,bctoolbox,$(BCTOOLBOX_VERSION)) BCTOOLBOX_LICENSE = GPLv2+ BCTOOLBOX_LICENSE_FILES = COPYING -BCTOOLBOX_DEPENDENCIES = mbedtls BCTOOLBOX_INSTALL_STAGING = YES +# Set CMAKE_SKIP_RPATH to prevent bctoolbox from adding the rpath to +# shared library. BCTOOLBOX_CONF_OPTS = \ -DENABLE_STRICT=OFF \ -DENABLE_TESTS_COMPONENT=OFF \ -DENABLE_TESTS=OFF \ - -DGIT_EXECUTABLE=OFF + -DGIT_EXECUTABLE=OFF \ + -DCMAKE_SKIP_RPATH=ON + +# bctoolbox can be build with mbedTLS or PolarSSL support. If both +# libraries are present, mbedTLS is preferred over PolarSSL. +ifeq ($(BR2_PACKAGE_MBEDTLS),y) +BCTOOLBOX_DEPENDENCIES += mbedtls +BCTOOLBOX_CONF_OPTS += -DENABLE_MBEDTLS=ON +else +BCTOOLBOX_CONF_OPTS += -DENABLE_MBEDTLS=OFF +endif + +ifeq ($(BR2_PACKAGE_POLARSSL),y) +BCTOOLBOX_DEPENDENCIES += polarssl +BCTOOLBOX_CONF_OPTS += -DENABLE_POLARSSL=ON +else +BCTOOLBOX_CONF_OPTS += -DENABLE_POLARSSL=OFF +endif ifeq ($(BR2_STATIC_LIBS),y) BCTOOLBOX_CONF_OPTS += -DENABLE_SHARED=OFF -DENABLE_STATIC=ON diff --git a/package/berkeleydb/berkeleydb.mk b/package/berkeleydb/berkeleydb.mk index e5c11bddcf..a315943ee6 100644 --- a/package/berkeleydb/berkeleydb.mk +++ b/package/berkeleydb/berkeleydb.mk @@ -20,11 +20,18 @@ BERKELEYDB_BINARIES = db_archive db_checkpoint db_deadlock db_dump \ db_hotbackup db_load db_log_verify db_printlog db_recover db_replicate \ db_stat db_tuner db_upgrade db_verify +# Internal error, aborting at dw2gencfi.c:214 in emit_expr_encoded +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79509 +ifeq ($(BR2_m68k_cf),y) +BERKELEYDB_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -fno-dwarf2-cfi-asm" +endif + # build directory can't be the directory where configure are there, so.. define BERKELEYDB_CONFIGURE_CMDS (cd $(@D)/build_unix; rm -rf config.cache; \ $(TARGET_CONFIGURE_OPTS) \ $(TARGET_CONFIGURE_ARGS) \ + $(BERKELEYDB_CONF_ENV) \ ../dist/configure $(QUIET) \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ diff --git a/package/bind/bind.hash b/package/bind/bind.hash index dc472b1216..780e43b9a0 100644 --- a/package/bind/bind.hash +++ b/package/bind/bind.hash @@ -1,2 +1,2 @@ -# Verified from http://ftp.isc.org/isc/bind9/9.11.0-P2/bind-9.11.0-P2.tar.gz.sha256.asc -sha256 d651f83ce1c08c83d6ac8201685c4f2b5fdb79794f3a4f93c3948e0ef439c1e5 bind-9.11.0-P2.tar.gz +# Verified from http://ftp.isc.org/isc/bind9/9.11.0-P3/bind-9.11.0-P3.tar.gz.sha256.asc +sha256 0feee0374bcbdee73a9d4277f3c5007622279572d520d7c27a4b64015d8ca9e9 bind-9.11.0-P3.tar.gz diff --git a/package/bind/bind.mk b/package/bind/bind.mk index 714308977a..860ee9d5e8 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -4,7 +4,7 @@ # ################################################################################ -BIND_VERSION = 9.11.0-P2 +BIND_VERSION = 9.11.0-P3 BIND_SITE = ftp://ftp.isc.org/isc/bind9/$(BIND_VERSION) # bind does not support parallel builds. BIND_MAKE = $(MAKE1) diff --git a/package/binutils/2.25.1/916-microblaze-pr21180.patch b/package/binutils/2.25.1/916-microblaze-pr21180.patch new file mode 100644 index 0000000000..2ffae49f62 --- /dev/null +++ b/package/binutils/2.25.1/916-microblaze-pr21180.patch @@ -0,0 +1,33 @@ +Fix ld segfault for microblaze when --gc-sections is used +Upstream: pending +https://sourceware.org/bugzilla/show_bug.cgi?id=21180 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.25.1.orig/bfd/elf32-microblaze.c binutils-2.25.1/bfd/elf32-microblaze.c +--- binutils-2.25.1.orig/bfd/elf32-microblaze.c 2015-07-21 10:20:58.000000000 +0200 ++++ binutils-2.25.1/bfd/elf32-microblaze.c 2017-02-23 19:43:24.560776208 +0100 +@@ -3297,13 +3297,20 @@ + && h->def_regular) + { + asection *sec = h->root.u.def.section; ++ bfd_vma value; ++ ++ value = h->root.u.def.value; ++ if (sec->output_section != NULL) ++ /* PR 21180: If the output section is NULL, then the symbol is no ++ longer needed, and in theory the GOT entry is redundant. But ++ it is too late to change our minds now... */ ++ value += sec->output_section->vma + sec->output_offset; ++ + microblaze_elf_output_dynamic_relocation (output_bfd, + srela, srela->reloc_count++, + /* symindex= */ 0, + R_MICROBLAZE_REL, offset, +- h->root.u.def.value +- + sec->output_section->vma +- + sec->output_offset); ++ value); + } + else + { diff --git a/package/binutils/2.26.1/0906-microblaze-pr21180.patch b/package/binutils/2.26.1/0906-microblaze-pr21180.patch new file mode 100644 index 0000000000..8104db3462 --- /dev/null +++ b/package/binutils/2.26.1/0906-microblaze-pr21180.patch @@ -0,0 +1,33 @@ +Fix ld segfault for microblaze when --gc-sections is used +Upstream: pending +https://sourceware.org/bugzilla/show_bug.cgi?id=21180 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.26.1.orig/bfd/elf32-microblaze.c binutils-2.26.1/bfd/elf32-microblaze.c +--- binutils-2.26.1.orig/bfd/elf32-microblaze.c 2015-11-13 09:27:40.000000000 +0100 ++++ binutils-2.26.1/bfd/elf32-microblaze.c 2017-02-23 19:43:18.536542964 +0100 +@@ -3300,13 +3300,20 @@ + && h->def_regular) + { + asection *sec = h->root.u.def.section; ++ bfd_vma value; ++ ++ value = h->root.u.def.value; ++ if (sec->output_section != NULL) ++ /* PR 21180: If the output section is NULL, then the symbol is no ++ longer needed, and in theory the GOT entry is redundant. But ++ it is too late to change our minds now... */ ++ value += sec->output_section->vma + sec->output_offset; ++ + microblaze_elf_output_dynamic_relocation (output_bfd, + srela, srela->reloc_count++, + /* symindex= */ 0, + R_MICROBLAZE_REL, offset, +- h->root.u.def.value +- + sec->output_section->vma +- + sec->output_offset); ++ value); + } + else + { diff --git a/package/binutils/2.27/0906-microblaze-pr21180.patch b/package/binutils/2.27/0906-microblaze-pr21180.patch new file mode 100644 index 0000000000..48e5e14b45 --- /dev/null +++ b/package/binutils/2.27/0906-microblaze-pr21180.patch @@ -0,0 +1,33 @@ +Fix ld segfault for microblaze when --gc-sections is used +Upstream: pending +https://sourceware.org/bugzilla/show_bug.cgi?id=21180 + +Signed-off-by: Waldemar Brodkorb + +diff -Nur binutils-2.27.orig/bfd/elf32-microblaze.c binutils-2.27/bfd/elf32-microblaze.c +--- binutils-2.27.orig/bfd/elf32-microblaze.c 2016-08-03 09:36:50.000000000 +0200 ++++ binutils-2.27/bfd/elf32-microblaze.c 2017-02-23 19:43:12.612313590 +0100 +@@ -3297,13 +3297,20 @@ + || h->dynindx == -1)) + { + asection *sec = h->root.u.def.section; ++ bfd_vma value; ++ ++ value = h->root.u.def.value; ++ if (sec->output_section != NULL) ++ /* PR 21180: If the output section is NULL, then the symbol is no ++ longer needed, and in theory the GOT entry is redundant. But ++ it is too late to change our minds now... */ ++ value += sec->output_section->vma + sec->output_offset; ++ + microblaze_elf_output_dynamic_relocation (output_bfd, + srela, srela->reloc_count++, + /* symindex= */ 0, + R_MICROBLAZE_REL, offset, +- h->root.u.def.value +- + sec->output_section->vma +- + sec->output_offset); ++ value); + } + else + { diff --git a/package/btrfs-progs/0002-kerncompat.h-define-BTRFS_DISABLE_BACKTRACE-when-bui.patch b/package/btrfs-progs/0002-kerncompat.h-define-BTRFS_DISABLE_BACKTRACE-when-bui.patch new file mode 100644 index 0000000000..9c1173b3fe --- /dev/null +++ b/package/btrfs-progs/0002-kerncompat.h-define-BTRFS_DISABLE_BACKTRACE-when-bui.patch @@ -0,0 +1,42 @@ +From 1fc5444f5620670bb9d293be4f92df59661e1810 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 20 Feb 2017 23:31:24 +0100 +Subject: [PATCH] kerncompat.h: define BTRFS_DISABLE_BACKTRACE when building + with uClibc + +uClibc does not provide backtrace() nor . When building +btrfs-progs, passing --disable-backtrace is enough to make it build with +uClibc. But once btrfs-progs is installed and another program/library +includes kerncompat.h, it fails to build with uClibc, because +BTRFS_DISABLE_BACKTRACE is not defined. + +The most correct fix for this would be to have kerncompat.h generated +from kerncompat.h.in during the btrfs-progs build process, and tuned +depending on autoconf/automake variables. But as a quick fix that +follows the current strategy, we simply tweak the existing __GLIBC__ +conditional. Indeed, uClibc pretends to be glibc and defines __GLIBC__, +but it does not replace it completely, hence the need to define +BTRFS_DISABLE_BACKTRACE when __GLIBC__ is not defined *or* when +__UCLIBC__ is defined. + +Signed-off-by: Thomas Petazzoni +--- + kerncompat.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/kerncompat.h b/kerncompat.h +index 0f207b7..e47d164 100644 +--- a/kerncompat.h ++++ b/kerncompat.h +@@ -32,7 +32,7 @@ + + #include + +-#ifndef __GLIBC__ ++#if !defined(__GLIBC__) || defined(__UCLIBC__) + #ifndef BTRFS_DISABLE_BACKTRACE + #define BTRFS_DISABLE_BACKTRACE + #endif +-- +2.7.4 + diff --git a/package/cannelloni/0001-Add-missing-cstdio-include.patch b/package/cannelloni/0001-Add-missing-cstdio-include.patch new file mode 100644 index 0000000000..1e4ad00396 --- /dev/null +++ b/package/cannelloni/0001-Add-missing-cstdio-include.patch @@ -0,0 +1,29 @@ +From d41f5ec6bb66654558757c3ef9cd2a158ee06ccc Mon Sep 17 00:00:00 2001 +From: Yegor Yefremov +Date: Wed, 15 Feb 2017 09:29:29 +0100 +Subject: [PATCH] Add missing include + +This header defines EOF macro. Some toolchains cannot +find this macro, if is missing. So include it +explicitly. + +Signed-off-by: Yegor Yefremov +--- + sctpthread.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sctpthread.cpp b/sctpthread.cpp +index 6c83fed..d83b472 100644 +--- a/sctpthread.cpp ++++ b/sctpthread.cpp +@@ -19,6 +19,7 @@ + */ + + #include ++#include + #include + + #include +-- +2.1.4 + diff --git a/package/cbootimage/Config.in b/package/cbootimage/Config.in index 1a7fef0b39..b798e5d988 100644 --- a/package/cbootimage/Config.in +++ b/package/cbootimage/Config.in @@ -1,9 +1,16 @@ config BR2_PACKAGE_CBOOTIMAGE bool "cbootimage" depends on BR2_arm || BR2_armeb + # uses non-standard u_intXX_t types + # https://github.com/NVIDIA/cbootimage/pull/7 + depends on !BR2_TOOLCHAIN_USES_MUSL help This project provides a tool which compiles BCT (Boot Configuration Table) images to place into the boot flash of a Tegra-based device. https://github.com/NVIDIA/cbootimage + +comment "cbootimage needs a glibc or uClibc toolchain" + depends on BR2_arm || BR2_armeb + depends on BR2_TOOLCHAIN_USES_MUSL diff --git a/package/classpath/Config.in b/package/classpath/Config.in index ce71160307..c49ff7a620 100644 --- a/package/classpath/Config.in +++ b/package/classpath/Config.in @@ -1,8 +1,15 @@ +config BR2_PACKAGE_CLASSPATH_ARCH_SUPPORTS + bool + default y if BR2_arm || BR2_armeb || BR2_i386 || BR2_m68k \ + || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el \ + || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le \ + || BR2_sh || BR2_x86_64 + config BR2_PACKAGE_CLASSPATH bool "classpath" select BR2_NEEDS_HOST_JAR select BR2_NEEDS_HOST_JAVAC - depends on BR2_PACKAGE_JAMVM + depends on BR2_PACKAGE_CLASSPATH_ARCH_SUPPORTS help GNU Classpath, Essential Libraries for Java, is a GNU project to create free core class libraries for use with diff --git a/package/cmake/Config.in b/package/cmake/Config.in index 2706db51fa..6f04a4ad39 100644 --- a/package/cmake/Config.in +++ b/package/cmake/Config.in @@ -20,14 +20,11 @@ config BR2_PACKAGE_CMAKE_CTEST select BR2_PACKAGE_EXPAT select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_XZ - select BR2_PACKAGE_LIBUV depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # from jsoncpp depends on BR2_USE_WCHAR # libarchive depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv - depends on BR2_USE_MMU # libuv help CTest is a testing tool distributed as a part of CMake. It can be used to automate updating (using CVS for example), @@ -37,9 +34,7 @@ config BR2_PACKAGE_CMAKE_CTEST http://www.cmake.org/ -comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.7, NPTL" +comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.7" depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS - depends on BR2_USE_MMU depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \ - !BR2_TOOLCHAIN_HAS_THREADS_NPTL + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/cmake/cmake.hash b/package/cmake/cmake.hash index 13c0237594..f846dc9541 100644 --- a/package/cmake/cmake.hash +++ b/package/cmake/cmake.hash @@ -1,2 +1,2 @@ -# From http://www.cmake.org/files/v3.7/cmake-3.7.2-SHA-256.txt -sha256 dc1246c4e6d168ea4d6e042cfba577c1acd65feea27e56f5ff37df920c30cae0 cmake-3.7.2.tar.gz +# From http://www.cmake.org/files/v3.6/cmake-3.6.3-SHA-256.txt +sha256 7d73ee4fae572eb2d7cd3feb48971aea903bb30a20ea5ae8b4da826d8ccad5fe cmake-3.6.3.tar.gz diff --git a/package/cmake/cmake.mk b/package/cmake/cmake.mk index 0fd71391fa..bc555092c2 100644 --- a/package/cmake/cmake.mk +++ b/package/cmake/cmake.mk @@ -4,8 +4,8 @@ # ################################################################################ -CMAKE_VERSION_MAJOR = 3.7 -CMAKE_VERSION = $(CMAKE_VERSION_MAJOR).2 +CMAKE_VERSION_MAJOR = 3.6 +CMAKE_VERSION = $(CMAKE_VERSION_MAJOR).3 CMAKE_SITE = https://cmake.org/files/v$(CMAKE_VERSION_MAJOR) CMAKE_LICENSE = BSD-3c CMAKE_LICENSE_FILES = Copyright.txt @@ -22,7 +22,7 @@ CMAKE_LICENSE_FILES = Copyright.txt # the system-wide libraries instead of rebuilding and statically # linking with the ones bundled into the CMake sources. -CMAKE_DEPENDENCIES = zlib jsoncpp libcurl libarchive expat bzip2 xz libuv +CMAKE_DEPENDENCIES = zlib jsoncpp libcurl libarchive expat bzip2 xz CMAKE_CONF_OPTS = \ -DKWSYS_LFS_WORKS=TRUE \ diff --git a/package/collectd/Config.in b/package/collectd/Config.in index 683141b120..47bfe95d98 100644 --- a/package/collectd/Config.in +++ b/package/collectd/Config.in @@ -526,6 +526,7 @@ config BR2_PACKAGE_COLLECTD_GRAPHITE config BR2_PACKAGE_COLLECTD_MQTT bool "mqtt" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mosquitto select BR2_PACKAGE_MOSQUITTO help Sends metrics to and/or receives metrics from an MQTT broker. diff --git a/package/cups/cups.mk b/package/cups/cups.mk index 05737767f8..ae3b9caae0 100644 --- a/package/cups/cups.mk +++ b/package/cups/cups.mk @@ -7,7 +7,7 @@ CUPS_VERSION = 2.2.2 CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.gz CUPS_SITE = https://github.com/apple/cups/releases/download/v$(CUPS_VERSION) -CUPS_LICENSE = GPLv2 LGPLv2 +CUPS_LICENSE = GPLv2, LGPLv2 CUPS_LICENSE_FILES = LICENSE.txt CUPS_INSTALL_STAGING = YES CUPS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) DSTROOT=$(STAGING_DIR) install @@ -28,6 +28,7 @@ CUPS_CONF_OPTS = \ CUPS_CONFIG_SCRIPTS = cups-config CUPS_DEPENDENCIES = \ host-autoconf \ + host-pkgconf \ $(if $(BR2_PACKAGE_ZLIB),zlib) ifeq ($(BR2_PACKAGE_SYSTEMD),y) diff --git a/package/dbus/dbus.hash b/package/dbus/dbus.hash index 14bee20455..af8143d315 100644 --- a/package/dbus/dbus.hash +++ b/package/dbus/dbus.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 23238f70353e38ce5ca183ebc9525c0d97ac00ef640ad29cf794782af6e6a083 dbus-1.10.14.tar.gz +sha256 a7b0ba6ea3e8d0e08afec5e3030d0245614268276620c536726f8fa6e5c43388 dbus-1.10.16.tar.gz diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk index c765e0ae26..2d1583e550 100644 --- a/package/dbus/dbus.mk +++ b/package/dbus/dbus.mk @@ -4,7 +4,7 @@ # ################################################################################ -DBUS_VERSION = 1.10.14 +DBUS_VERSION = 1.10.16 DBUS_SITE = http://dbus.freedesktop.org/releases/dbus DBUS_LICENSE = AFLv2.1 or GPLv2+ (library, tools), GPLv2+ (tools) DBUS_LICENSE_FILES = COPYING diff --git a/package/ddrescue/0001-io.cc-add-stdio.h-include.patch b/package/ddrescue/0001-io.cc-add-stdio.h-include.patch new file mode 100644 index 0000000000..e719c708e8 --- /dev/null +++ b/package/ddrescue/0001-io.cc-add-stdio.h-include.patch @@ -0,0 +1,36 @@ +From 0f72787b922c53c33d497b17300a959b911e621f Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Tue, 14 Feb 2017 20:12:05 +0100 +Subject: [PATCH] io.cc: add stdio.h include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes buildroot compile failure with uclibc [1]: + + In file included from io.cc:28:0: + block.h:219:22: error: ‘FILE’ has not been declared + int write_mapfile( FILE * f = 0, const bool timestamp = false, + +[1] http://autobuild.buildroot.net/results/4ac0754f1cc5ea934d6437e89d1f4906fb3fd0a8 + +Signed-off-by: Peter Seiderer +--- + io.cc | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/io.cc b/io.cc +index 36b8341..2d6a76e 100644 +--- a/io.cc ++++ b/io.cc +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + #include + + #include "block.h" +-- +2.11.0 + diff --git a/package/ddrescue/ddrescue.mk b/package/ddrescue/ddrescue.mk index 145d0520d6..4e244e6bda 100644 --- a/package/ddrescue/ddrescue.mk +++ b/package/ddrescue/ddrescue.mk @@ -9,12 +9,6 @@ DDRESCUE_SOURCE = ddrescue-$(DDRESCUE_VERSION).tar.lz DDRESCUE_SITE = http://download.savannah.gnu.org/releases/ddrescue DDRESCUE_LICENSE = GPLv2+ DDRESCUE_LICENSE_FILES = COPYING -DDRESCUE_DEPENDENCIES = host-lzip - -define DDRESCUE_EXTRACT_CMDS - $(HOST_DIR)/usr/bin/lzip -d -c $(DL_DIR)/$(DDRESCUE_SOURCE) | \ - tar --strip-components=1 -C $(@D) $(TAR_OPTIONS) - -endef define DDRESCUE_CONFIGURE_CMDS (cd $(@D); \ diff --git a/package/directfb/0006-fix-client-gfx_state-initialisation.patch b/package/directfb/0006-fix-client-gfx_state-initialisation.patch new file mode 100644 index 0000000000..5b7a202ca3 --- /dev/null +++ b/package/directfb/0006-fix-client-gfx_state-initialisation.patch @@ -0,0 +1,39 @@ +From 8e53c0b9cedb62b82e2b7680d793d433b647ae20 Mon Sep 17 00:00:00 2001 +From: Andre McCurdy +Date: Mon, 13 Jun 2016 13:32:44 -0700 +Subject: [PATCH] fix client->gfx_state initialisation + +Shortly before the DirectFB 1.7.7 release, an optimisation was added +to CoreGraphicsStateClient_Init() to avoid creating an extended +Graphics State object if it will not later be required: + + 4d422fb Client: Create extended Graphics State object when needed for later usage + +Unfortunately the client->gfx_state variable used to track the +extended Graphics State object is not initialised, which can lead to +crashes etc due to creation of the Graphics State object erroneously +being skipped. + +Upstream-Status: Pending + +Signed-off-by: Andre McCurdy +Signed-off-by: Philippe Reynes +--- + src/core/CoreGraphicsStateClient.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/core/CoreGraphicsStateClient.cpp b/src/core/CoreGraphicsStateClient.cpp +index 5d46f0e..5007755 100644 +--- a/src/core/CoreGraphicsStateClient.cpp ++++ b/src/core/CoreGraphicsStateClient.cpp +@@ -364,6 +364,7 @@ CoreGraphicsStateClient_Init( CoreGraphicsStateClient *client, + client->renderer = NULL; + client->requestor = NULL; + client->throttle = NULL; ++ client->gfx_state = NULL; + + if (dfb_config->task_manager) { + if (dfb_config->call_nodirect) { +-- +1.9.1 + diff --git a/package/directfb/Config.in b/package/directfb/Config.in index b552164777..6a3d71868f 100644 --- a/package/directfb/Config.in +++ b/package/directfb/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_DIRECTFB bool "directfb" + depends on !BR2_STATIC_LIBS # static link issues depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 @@ -161,7 +162,8 @@ config BR2_PACKAGE_DIRECTFB_TESTS endif # BR2_PACKAGE_DIRECTFB -comment "directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5" +comment "directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5, dynamic library" depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL || \ + BR2_STATIC_LIBS diff --git a/package/domoticz/Config.in b/package/domoticz/Config.in index f128e6f88c..c6550d2ad0 100644 --- a/package/domoticz/Config.in +++ b/package/domoticz/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_DOMOTICZ bool "domoticz" depends on BR2_USE_MMU # mosquitto + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # mosquitto depends on !BR2_STATIC_LIBS # mosquitto depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP @@ -28,6 +29,7 @@ config BR2_PACKAGE_DOMOTICZ comment "domoticz needs lua >= 5.2 and a toolchain w/ C++, threads, wchar, dynamic library" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_USE_WCHAR || BR2_STATIC_LIBS || \ diff --git a/package/duma/duma.mk b/package/duma/duma.mk index a8348b95a2..cd7f33edca 100644 --- a/package/duma/duma.mk +++ b/package/duma/duma.mk @@ -7,7 +7,7 @@ DUMA_VERSION = 2.5.15 DUMA_SOURCE = duma_$(subst .,_,$(DUMA_VERSION)).tar.gz DUMA_SITE = http://downloads.sourceforge.net/project/duma/duma/$(DUMA_VERSION) -DUMA_LICENSE = GPLv2+ LGPLv2.1+ +DUMA_LICENSE = GPLv2+, LGPLv2.1+ DUMA_LICENSE_FILES = COPYING-GPL COPYING-LGPL DUMA_INSTALL_STAGING = YES diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk index 0253510bf7..3829053d71 100644 --- a/package/e2fsprogs/e2fsprogs.mk +++ b/package/e2fsprogs/e2fsprogs.mk @@ -7,7 +7,7 @@ E2FSPROGS_VERSION = 1.43.3 E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VERSION).tar.xz E2FSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/tytso/e2fsprogs/v$(E2FSPROGS_VERSION) -E2FSPROGS_LICENSE = GPLv2, libuuid BSD-3c, libss and libet MIT-like with advertising clause +E2FSPROGS_LICENSE = GPLv2, BSD-3c (libuuid), MIT-like with advertising clause (libss and libet) E2FSPROGS_LICENSE_FILES = NOTICE lib/uuid/COPYING lib/ss/mit-sipb-copyright.h lib/et/internal.h E2FSPROGS_INSTALL_STAGING = YES E2FSPROGS_DEPENDENCIES = host-pkgconf util-linux diff --git a/package/ed/ed.mk b/package/ed/ed.mk index 50adeb4ec5..6b9f65ec52 100644 --- a/package/ed/ed.mk +++ b/package/ed/ed.mk @@ -10,15 +10,9 @@ ED_SOURCE = ed-$(ED_VERSION).tar.lz ED_CONF_OPTS = \ CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" -ED_DEPENDENCIES = host-lzip ED_LICENSE = GPLv3+ ED_LICENSE_FILES = COPYING -define ED_EXTRACT_CMDS - $(HOST_DIR)/usr/bin/lzip -d -c $(DL_DIR)/$(ED_SOURCE) | \ - tar --strip-components=1 -C $(@D) $(TAR_OPTIONS) - -endef - define ED_CONFIGURE_CMDS (cd $(@D); \ $(TARGET_MAKE_ENV) ./configure \ diff --git a/package/erlang/erlang.mk b/package/erlang/erlang.mk index 3200c388fd..364085c4dd 100644 --- a/package/erlang/erlang.mk +++ b/package/erlang/erlang.mk @@ -30,6 +30,12 @@ ERLANG_CONF_ENV += erl_xcomp_sysroot=$(STAGING_DIR) ERLANG_CONF_OPTS = --without-javac +# Force ERL_TOP to the downloaded source directory. This prevents +# Erlang's configure script from inadvertantly using files from +# a version of Erlang installed on the host. +ERLANG_CONF_ENV += ERL_TOP=$(@D) +HOST_ERLANG_CONF_ENV += ERL_TOP=$(@D) + # erlang uses openssl for all things crypto. Since the host tools (such as # rebar) uses crypto, we need to build host-erlang with support for openssl. HOST_ERLANG_DEPENDENCIES = host-openssl diff --git a/package/file/file.mk b/package/file/file.mk index 3309c95fa8..39d1781ff0 100644 --- a/package/file/file.mk +++ b/package/file/file.mk @@ -10,7 +10,7 @@ FILE_DEPENDENCIES = host-file zlib HOST_FILE_DEPENDENCIES = host-zlib FILE_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' FILE_INSTALL_STAGING = YES -FILE_LICENSE = BSD-2c, one file BSD-4c, one file BSD-3c +FILE_LICENSE = BSD-2c, BSD-4c (one file), BSD-3c (one file) FILE_LICENSE_FILES = COPYING src/mygetopt.h src/vasprintf.c $(eval $(autotools-package)) diff --git a/package/gcc/musl-5.4.0/100-uclibc-conf.patch b/package/gcc/musl-5.4.0/100-uclibc-conf.patch new file mode 100644 index 0000000000..73d1f0d3a9 --- /dev/null +++ b/package/gcc/musl-5.4.0/100-uclibc-conf.patch @@ -0,0 +1,15 @@ +Index: b/contrib/regression/objs-gcc.sh +=================================================================== +--- a/contrib/regression/objs-gcc.sh ++++ b/contrib/regression/objs-gcc.sh +@@ -106,6 +106,10 @@ + then + make all-gdb all-dejagnu all-ld || exit 1 + make install-gdb install-dejagnu install-ld || exit 1 ++elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] ++ then ++ make all-gdb all-dejagnu all-ld || exit 1 ++ make install-gdb install-dejagnu install-ld || exit 1 + elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then + make bootstrap || exit 1 + make install || exit 1 diff --git a/package/gcc/musl-5.4.0/301-missing-execinfo_h.patch b/package/gcc/musl-5.4.0/301-missing-execinfo_h.patch new file mode 100644 index 0000000000..2d0e7baa44 --- /dev/null +++ b/package/gcc/musl-5.4.0/301-missing-execinfo_h.patch @@ -0,0 +1,13 @@ +Index: b/boehm-gc/include/gc.h +=================================================================== +--- a/boehm-gc/include/gc.h ++++ b/boehm-gc/include/gc.h +@@ -503,7 +503,7 @@ + #if defined(__linux__) || defined(__GLIBC__) + # include + # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ +- && !defined(__ia64__) ++ && !defined(__ia64__) && !defined(__UCLIBC__) + # ifndef GC_HAVE_BUILTIN_BACKTRACE + # define GC_HAVE_BUILTIN_BACKTRACE + # endif diff --git a/package/gcc/musl-5.4.0/850-libstdcxx-uclibc-c99.patch b/package/gcc/musl-5.4.0/850-libstdcxx-uclibc-c99.patch new file mode 100644 index 0000000000..9e97d945d3 --- /dev/null +++ b/package/gcc/musl-5.4.0/850-libstdcxx-uclibc-c99.patch @@ -0,0 +1,273 @@ +Allow C99-depending features of libstdc++ with uClibc + +The libstdc++ code is fairly restrictive on how it checks for C99 +compatibility: it requires *complete* C99 support to enable certain +features. For example, uClibc provides a good number of C99 features, +but not C99 complex number support. For this reason, libstdc++ +completely disables many the standard C++ methods that can in fact +work because uClibc provides the necessary functions. + +This patch is similar and highly inspired from +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58393, but implemented in +a way that doesn't involve changing the configure.ac script, as +autoreconfiguring gcc is complicated. It simply relies on the fact +that uClibc defines the __UCLIBC__ definition. + +Signed-off-by: Thomas Petazzoni + +Index: b/libstdc++-v3/config/locale/generic/c_locale.h +=================================================================== +--- a/libstdc++-v3/config/locale/generic/c_locale.h ++++ b/libstdc++-v3/config/locale/generic/c_locale.h +@@ -70,7 +70,7 @@ + __builtin_va_list __args; + __builtin_va_start(__args, __fmt); + +-#ifdef _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args); + #else + const int __ret = __builtin_vsprintf(__out, __fmt, __args); +Index: b/libstdc++-v3/config/locale/gnu/c_locale.h +=================================================================== +--- a/libstdc++-v3/config/locale/gnu/c_locale.h ++++ b/libstdc++-v3/config/locale/gnu/c_locale.h +@@ -88,7 +88,7 @@ + __builtin_va_list __args; + __builtin_va_start(__args, __fmt); + +-#ifdef _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args); + #else + const int __ret = __builtin_vsprintf(__out, __fmt, __args); +Index: b/libstdc++-v3/include/bits/basic_string.h +=================================================================== +--- a/libstdc++-v3/include/bits/basic_string.h ++++ b/libstdc++-v3/include/bits/basic_string.h +@@ -5239,7 +5239,7 @@ + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99) ++#if __cplusplus >= 201103L && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)) + + #include + +Index: b/libstdc++-v3/include/bits/locale_facets.tcc +=================================================================== +--- a/libstdc++-v3/include/bits/locale_facets.tcc ++++ b/libstdc++-v3/include/bits/locale_facets.tcc +@@ -992,7 +992,7 @@ + char __fbuf[16]; + __num_base::_S_format_float(__io, __fbuf, __mod); + +-#ifdef _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + // Precision is always used except for hexfloat format. + const bool __use_prec = + (__io.flags() & ios_base::floatfield) != ios_base::floatfield; +Index: b/libstdc++-v3/include/bits/locale_facets_nonio.tcc +=================================================================== +--- a/libstdc++-v3/include/bits/locale_facets_nonio.tcc ++++ b/libstdc++-v3/include/bits/locale_facets_nonio.tcc +@@ -578,7 +578,7 @@ + { + const locale __loc = __io.getloc(); + const ctype<_CharT>& __ctype = use_facet >(__loc); +-#ifdef _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + // First try a buffer perhaps big enough. + int __cs_size = 64; + char* __cs = static_cast(__builtin_alloca(__cs_size)); +Index: b/libstdc++-v3/include/c_compatibility/math.h +=================================================================== +--- a/libstdc++-v3/include/c_compatibility/math.h ++++ b/libstdc++-v3/include/c_compatibility/math.h +@@ -56,7 +56,7 @@ + using std::floor; + using std::fmod; + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + using std::fpclassify; + using std::isfinite; + using std::isinf; +Index: b/libstdc++-v3/include/c_compatibility/wchar.h +=================================================================== +--- a/libstdc++-v3/include/c_compatibility/wchar.h ++++ b/libstdc++-v3/include/c_compatibility/wchar.h +@@ -103,7 +103,7 @@ + using std::wmemset; + using std::wcsftime; + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + using std::wcstold; + using std::wcstoll; + using std::wcstoull; +Index: b/libstdc++-v3/include/c_global/cstdlib +=================================================================== +--- a/libstdc++-v3/include/c_global/cstdlib ++++ b/libstdc++-v3/include/c_global/cstdlib +@@ -195,7 +195,7 @@ + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef _Exit + #undef llabs +Index: b/libstdc++-v3/include/c_global/cwchar +=================================================================== +--- a/libstdc++-v3/include/c_global/cwchar ++++ b/libstdc++-v3/include/c_global/cwchar +@@ -232,7 +232,7 @@ + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef wcstold + #undef wcstoll +@@ -289,7 +289,7 @@ + using std::vwscanf; + #endif + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + using std::wcstold; + using std::wcstoll; + using std::wcstoull; +Index: b/libstdc++-v3/include/c_std/cstdio +=================================================================== +--- a/libstdc++-v3/include/c_std/cstdio ++++ b/libstdc++-v3/include/c_std/cstdio +@@ -144,7 +144,7 @@ + using ::vsprintf; + } // namespace std + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef snprintf + #undef vfscanf +Index: b/libstdc++-v3/include/c_std/cstdlib +=================================================================== +--- a/libstdc++-v3/include/c_std/cstdlib ++++ b/libstdc++-v3/include/c_std/cstdlib +@@ -192,7 +192,7 @@ + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef _Exit + #undef llabs +Index: b/libstdc++-v3/include/c_std/cwchar +=================================================================== +--- a/libstdc++-v3/include/c_std/cwchar ++++ b/libstdc++-v3/include/c_std/cwchar +@@ -228,7 +228,7 @@ + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef wcstold + #undef wcstoll +Index: b/libstdc++-v3/include/ext/vstring.h +=================================================================== +--- a/libstdc++-v3/include/ext/vstring.h ++++ b/libstdc++-v3/include/ext/vstring.h +@@ -2680,7 +2680,7 @@ + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + +-#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99)) ++#if ((__cplusplus >= 201103L) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__))) + + #include + +Index: b/libstdc++-v3/include/tr1/cstdio +=================================================================== +--- a/libstdc++-v3/include/tr1/cstdio ++++ b/libstdc++-v3/include/tr1/cstdio +@@ -33,7 +33,7 @@ + + #include + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + namespace std _GLIBCXX_VISIBILITY(default) + { +Index: b/libstdc++-v3/include/tr1/cstdlib +=================================================================== +--- a/libstdc++-v3/include/tr1/cstdlib ++++ b/libstdc++-v3/include/tr1/cstdlib +@@ -35,7 +35,7 @@ + + #if _GLIBCXX_HOSTED + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + namespace std _GLIBCXX_VISIBILITY(default) + { +Index: b/libstdc++-v3/include/tr1/cwchar +=================================================================== +--- a/libstdc++-v3/include/tr1/cwchar ++++ b/libstdc++-v3/include/tr1/cwchar +@@ -52,7 +52,7 @@ + using std::vwscanf; + #endif + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + using std::wcstold; + using std::wcstoll; + using std::wcstoull; +Index: b/libstdc++-v3/include/tr1/stdlib.h +=================================================================== +--- a/libstdc++-v3/include/tr1/stdlib.h ++++ b/libstdc++-v3/include/tr1/stdlib.h +@@ -33,7 +33,7 @@ + + #if _GLIBCXX_HOSTED + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + using std::tr1::atoll; + using std::tr1::strtoll; +Index: b/libstdc++-v3/src/c++11/debug.cc +=================================================================== +--- a/libstdc++-v3/src/c++11/debug.cc ++++ b/libstdc++-v3/src/c++11/debug.cc +@@ -788,7 +788,7 @@ + int __n __attribute__ ((__unused__)), + const char* __fmt, _Tp __s) const throw () + { +-#ifdef _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + std::snprintf(__buf, __n, __fmt, __s); + #else + std::sprintf(__buf, __fmt, __s); +Index: b/libstdc++-v3/include/c_global/cstdio +=================================================================== +--- a/libstdc++-v3/include/c_global/cstdio ++++ b/libstdc++-v3/include/c_global/cstdio +@@ -146,7 +146,7 @@ + using ::vsprintf; + } // namespace + +-#if _GLIBCXX_USE_C99 ++#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__) + + #undef snprintf + #undef vfscanf diff --git a/package/gcc/musl-5.4.0/860-cilk-wchar.patch b/package/gcc/musl-5.4.0/860-cilk-wchar.patch new file mode 100644 index 0000000000..1d9916f554 --- /dev/null +++ b/package/gcc/musl-5.4.0/860-cilk-wchar.patch @@ -0,0 +1,56 @@ +[PATCH] cilk: fix build without wchar + +When building against uClibc with wchar support disabled, WCHAR_MIN and +WCHAR_MAX are not defined leading to compilation errors. + +Fix it by only including the wchar code if available. + +Signed-off-by: Peter Korsgaard +--- + libcilkrts/include/cilk/reducer_min_max.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +Index: b/libcilkrts/include/cilk/reducer_min_max.h +=================================================================== +--- a/libcilkrts/include/cilk/reducer_min_max.h ++++ b/libcilkrts/include/cilk/reducer_min_max.h +@@ -3154,7 +3154,9 @@ + CILK_C_REDUCER_MAX_INSTANCE(char, char, CHAR_MIN) + CILK_C_REDUCER_MAX_INSTANCE(unsigned char, uchar, 0) + CILK_C_REDUCER_MAX_INSTANCE(signed char, schar, SCHAR_MIN) ++#ifdef WCHAR_MIN + CILK_C_REDUCER_MAX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN) ++#endif + CILK_C_REDUCER_MAX_INSTANCE(short, short, SHRT_MIN) + CILK_C_REDUCER_MAX_INSTANCE(unsigned short, ushort, 0) + CILK_C_REDUCER_MAX_INSTANCE(int, int, INT_MIN) +@@ -3306,7 +3308,9 @@ + CILK_C_REDUCER_MAX_INDEX_INSTANCE(char, char, CHAR_MIN) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned char, uchar, 0) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(signed char, schar, SCHAR_MIN) ++#ifdef WCHAR_MIN + CILK_C_REDUCER_MAX_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN) ++#endif + CILK_C_REDUCER_MAX_INDEX_INSTANCE(short, short, SHRT_MIN) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned short, ushort, 0) + CILK_C_REDUCER_MAX_INDEX_INSTANCE(int, int, INT_MIN) +@@ -3432,7 +3436,9 @@ + CILK_C_REDUCER_MIN_INSTANCE(char, char, CHAR_MAX) + CILK_C_REDUCER_MIN_INSTANCE(unsigned char, uchar, CHAR_MAX) + CILK_C_REDUCER_MIN_INSTANCE(signed char, schar, SCHAR_MAX) ++#ifdef WCHAR_MAX + CILK_C_REDUCER_MIN_INSTANCE(wchar_t, wchar_t, WCHAR_MAX) ++#endif + CILK_C_REDUCER_MIN_INSTANCE(short, short, SHRT_MAX) + CILK_C_REDUCER_MIN_INSTANCE(unsigned short, ushort, USHRT_MAX) + CILK_C_REDUCER_MIN_INSTANCE(int, int, INT_MAX) +@@ -3584,7 +3590,9 @@ + CILK_C_REDUCER_MIN_INDEX_INSTANCE(char, char, CHAR_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned char, uchar, CHAR_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(signed char, schar, SCHAR_MAX) ++#ifdef WCHAR_MAX + CILK_C_REDUCER_MIN_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MAX) ++#endif + CILK_C_REDUCER_MIN_INDEX_INSTANCE(short, short, SHRT_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned short, ushort, USHRT_MAX) + CILK_C_REDUCER_MIN_INDEX_INSTANCE(int, int, INT_MAX) diff --git a/package/gcc/musl-5.4.0/930-libgcc-disable-split-stack-nothreads.patch b/package/gcc/musl-5.4.0/930-libgcc-disable-split-stack-nothreads.patch new file mode 100644 index 0000000000..07f9a7395b --- /dev/null +++ b/package/gcc/musl-5.4.0/930-libgcc-disable-split-stack-nothreads.patch @@ -0,0 +1,14 @@ +disable split-stack for non-thread builds + +Signed-off-by: Waldemar Brodkorb + +diff -Nur gcc-5.3.0.orig/libgcc/config/t-stack gcc-5.3.0/libgcc/config/t-stack +--- gcc-5.3.0.orig/libgcc/config/t-stack 2010-10-01 21:31:49.000000000 +0200 ++++ gcc-5.3.0/libgcc/config/t-stack 2016-03-07 03:25:32.000000000 +0100 +@@ -1,4 +1,6 @@ + # Makefile fragment to provide generic support for -fsplit-stack. + # This should be used in config.host for any host which supports + # -fsplit-stack. ++ifeq ($(enable_threads),yes) + LIB2ADD_ST += $(srcdir)/generic-morestack.c $(srcdir)/generic-morestack-thread.c ++endif diff --git a/package/gdb/7.11.1/0001-Revert-sim-unify-SIM_CPU-definition.patch b/package/gdb/7.11.1/0001-Revert-sim-unify-SIM_CPU-definition.patch deleted file mode 100644 index 8a8eece684..0000000000 --- a/package/gdb/7.11.1/0001-Revert-sim-unify-SIM_CPU-definition.patch +++ /dev/null @@ -1,355 +0,0 @@ -From 77080d5f7fd47dd567f22807d336bc9111f93d7b Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Thu, 4 Aug 2016 23:44:24 +0200 -Subject: [PATCH] Revert "sim: unify SIM_CPU definition" - -This reverts commit 20bca71d82598a015de0991196e45f0b5f7ead81. - -This change causes a redefinition of SIM_CPU on the Blackfin -architecture, as it is defined in both the common sim/common/sim-base.h -and the architecture specific sim/bfin/sim-main.h. - -Signed-off-by: Thomas Petazzoni ---- - sim/arm/sim-main.h | 3 +++ - sim/avr/sim-main.h | 2 ++ - sim/bfin/sim-main.h | 2 -- - sim/common/sim-base.h | 2 -- - sim/cr16/sim-main.h | 2 ++ - sim/cris/sim-main.h | 3 +++ - sim/d10v/sim-main.h | 2 ++ - sim/frv/sim-main.h | 3 +++ - sim/ft32/sim-main.h | 2 ++ - sim/h8300/sim-main.h | 3 +++ - sim/iq2000/sim-main.h | 3 +++ - sim/lm32/sim-main.h | 3 +++ - sim/m32r/sim-main.h | 3 +++ - sim/m68hc11/sim-main.h | 3 +++ - sim/mcore/sim-main.h | 2 ++ - sim/microblaze/sim-main.h | 3 +++ - sim/mips/sim-main.h | 3 +++ - sim/mn10300/sim-main.h | 2 ++ - sim/moxie/sim-main.h | 3 +++ - sim/msp430/sim-main.h | 3 +++ - sim/sh/sim-main.h | 3 +++ - sim/sh64/sim-main.h | 3 +++ - sim/v850/sim-main.h | 3 +++ - 23 files changed, 57 insertions(+), 4 deletions(-) - -diff --git a/sim/arm/sim-main.h b/sim/arm/sim-main.h -index 3620810..f644122 100644 ---- a/sim/arm/sim-main.h -+++ b/sim/arm/sim-main.h -@@ -20,6 +20,9 @@ - #define SIM_MAIN_H - - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - #include "bfd.h" - -diff --git a/sim/avr/sim-main.h b/sim/avr/sim-main.h -index 47155e3..cd41045 100644 ---- a/sim/avr/sim-main.h -+++ b/sim/avr/sim-main.h -@@ -21,6 +21,8 @@ along with this program. If not, see . */ - - #include "sim-basics.h" - -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - - struct _sim_cpu { -diff --git a/sim/bfin/sim-main.h b/sim/bfin/sim-main.h -index 51fb87e..cf1ed57 100644 ---- a/sim/bfin/sim-main.h -+++ b/sim/bfin/sim-main.h -@@ -24,8 +24,6 @@ - #include "sim-basics.h" - #include "sim-signal.h" - --/* TODO: Delete this. Need to convert bu32/etc... to common sim types -- and unwind the bfin-sim.h/machs.h include below first though. */ - typedef struct _sim_cpu SIM_CPU; - - #include "bfin-sim.h" -diff --git a/sim/common/sim-base.h b/sim/common/sim-base.h -index 350b352..1b849f4 100644 ---- a/sim/common/sim-base.h -+++ b/sim/common/sim-base.h -@@ -72,8 +72,6 @@ typedef address_word sim_cia; - #define INVALID_INSTRUCTION_ADDRESS ((address_word)0 - 1) - #endif - --/* TODO: Probably should just delete SIM_CPU. */ --typedef struct _sim_cpu SIM_CPU; - typedef struct _sim_cpu sim_cpu; - - #include "sim-module.h" -diff --git a/sim/cr16/sim-main.h b/sim/cr16/sim-main.h -index 208f917..78e3996 100644 ---- a/sim/cr16/sim-main.h -+++ b/sim/cr16/sim-main.h -@@ -24,6 +24,8 @@ - typedef long int word; - typedef unsigned long int uword; - -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - #include "bfd.h" - -diff --git a/sim/cris/sim-main.h b/sim/cris/sim-main.h -index 8aab970..0ff907f 100644 ---- a/sim/cris/sim-main.h -+++ b/sim/cris/sim-main.h -@@ -29,6 +29,9 @@ along with this program. If not, see . */ - one of -scache/-pbb. */ - #define WITH_SCACHE_PBB 1 - -+struct _sim_cpu; -+typedef struct _sim_cpu SIM_CPU; -+ - #include "symcat.h" - #include "sim-basics.h" - #include "cgen-types.h" -diff --git a/sim/d10v/sim-main.h b/sim/d10v/sim-main.h -index 76f06d8..fd5bd51 100644 ---- a/sim/d10v/sim-main.h -+++ b/sim/d10v/sim-main.h -@@ -24,6 +24,8 @@ - typedef long int word; - typedef unsigned long int uword; - -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - #include "bfd.h" - -diff --git a/sim/frv/sim-main.h b/sim/frv/sim-main.h -index f95c1cc..701e208 100644 ---- a/sim/frv/sim-main.h -+++ b/sim/frv/sim-main.h -@@ -19,6 +19,9 @@ along with this program. If not, see . */ - - /* Main header for the frv. */ - -+struct _sim_cpu; /* FIXME: should be in sim-basics.h */ -+typedef struct _sim_cpu SIM_CPU; -+ - /* sim-basics.h includes config.h but cgen-types.h must be included before - sim-basics.h and cgen-types.h needs config.h. */ - #include "config.h" -diff --git a/sim/ft32/sim-main.h b/sim/ft32/sim-main.h -index a15b247..eef0201 100644 ---- a/sim/ft32/sim-main.h -+++ b/sim/ft32/sim-main.h -@@ -25,6 +25,8 @@ - #include "sim-base.h" - #include "bfd.h" - -+typedef struct _sim_cpu SIM_CPU; -+ - #include "ft32-sim.h" - - struct _sim_cpu { -diff --git a/sim/h8300/sim-main.h b/sim/h8300/sim-main.h -index 6dbc1ac..e95c4d9 100644 ---- a/sim/h8300/sim-main.h -+++ b/sim/h8300/sim-main.h -@@ -87,6 +87,9 @@ enum h8_typecodes { - }; - - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - - /* Structure used to describe addressing */ -diff --git a/sim/iq2000/sim-main.h b/sim/iq2000/sim-main.h -index 829f9bb..a770dc5 100644 ---- a/sim/iq2000/sim-main.h -+++ b/sim/iq2000/sim-main.h -@@ -4,6 +4,9 @@ - #ifndef SIM_MAIN_H - #define SIM_MAIN_H - -+struct _sim_cpu; /* FIXME: should be in sim-basics.h */ -+typedef struct _sim_cpu SIM_CPU; -+ - /* sim-basics.h includes config.h but cgen-types.h must be included before - sim-basics.h and cgen-types.h needs config.h. */ - #include "config.h" -diff --git a/sim/lm32/sim-main.h b/sim/lm32/sim-main.h -index 20e2b71..eeffde3 100644 ---- a/sim/lm32/sim-main.h -+++ b/sim/lm32/sim-main.h -@@ -25,6 +25,9 @@ - - #define WITH_SCACHE_PBB 1 - -+struct _sim_cpu; /* FIXME: should be in sim-basics.h */ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "symcat.h" - #include "sim-basics.h" - #include "cgen-types.h" -diff --git a/sim/m32r/sim-main.h b/sim/m32r/sim-main.h -index 5b24ce8..39f7ecc 100644 ---- a/sim/m32r/sim-main.h -+++ b/sim/m32r/sim-main.h -@@ -8,6 +8,9 @@ - one of -scache/-pbb. */ - #define WITH_SCACHE_PBB 1 - -+struct _sim_cpu; /* FIXME: should be in sim-basics.h */ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "symcat.h" - #include "sim-basics.h" - #include "cgen-types.h" -diff --git a/sim/m68hc11/sim-main.h b/sim/m68hc11/sim-main.h -index b940df7..0aa096f 100644 ---- a/sim/m68hc11/sim-main.h -+++ b/sim/m68hc11/sim-main.h -@@ -21,6 +21,9 @@ along with this program. If not, see . */ - #define _SIM_MAIN_H - - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-signal.h" - #include "sim-base.h" - -diff --git a/sim/mcore/sim-main.h b/sim/mcore/sim-main.h -index fce26e8..fa7ee9f 100644 ---- a/sim/mcore/sim-main.h -+++ b/sim/mcore/sim-main.h -@@ -24,6 +24,8 @@ along with this program. If not, see . */ - typedef long int word; - typedef unsigned long int uword; - -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - #include "bfd.h" - -diff --git a/sim/microblaze/sim-main.h b/sim/microblaze/sim-main.h -index 3a7b088..9e6bf01 100644 ---- a/sim/microblaze/sim-main.h -+++ b/sim/microblaze/sim-main.h -@@ -20,6 +20,9 @@ - - #include "microblaze.h" - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - - /* The machine state. -diff --git a/sim/mips/sim-main.h b/sim/mips/sim-main.h -index 0ea1234..eedbfc9 100644 ---- a/sim/mips/sim-main.h -+++ b/sim/mips/sim-main.h -@@ -27,6 +27,9 @@ along with this program. If not, see . */ - mips_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), (TRANSFER), (ERROR)) - - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - #include "bfd.h" - -diff --git a/sim/mn10300/sim-main.h b/sim/mn10300/sim-main.h -index 7171c03..3a917e7 100644 ---- a/sim/mn10300/sim-main.h -+++ b/sim/mn10300/sim-main.h -@@ -38,6 +38,8 @@ - #include "itable.h" - #include "idecode.h" - -+typedef struct _sim_cpu SIM_CPU; -+ - #define SIM_CORE_SIGNAL(SD,CPU,CIA,MAP,NR_BYTES,ADDR,TRANSFER,ERROR) \ - mn10300_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), (TRANSFER), (ERROR)) - -diff --git a/sim/moxie/sim-main.h b/sim/moxie/sim-main.h -index 7091f21..b6b5ca3 100644 ---- a/sim/moxie/sim-main.h -+++ b/sim/moxie/sim-main.h -@@ -21,6 +21,9 @@ along with this program. If not, see . */ - #define SIM_MAIN_H - - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - #include "bfd.h" - -diff --git a/sim/msp430/sim-main.h b/sim/msp430/sim-main.h -index 4a2ab22..c7cdc5e 100644 ---- a/sim/msp430/sim-main.h -+++ b/sim/msp430/sim-main.h -@@ -23,6 +23,9 @@ - - #include "sim-basics.h" - #include "sim-signal.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "msp430-sim.h" - #include "sim-base.h" - -diff --git a/sim/sh/sim-main.h b/sim/sh/sim-main.h -index 4af7b03..6ab42a6 100644 ---- a/sim/sh/sim-main.h -+++ b/sim/sh/sim-main.h -@@ -20,6 +20,9 @@ along with this program. If not, see . */ - #define SIM_MAIN_H - - #include "sim-basics.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - - typedef struct -diff --git a/sim/sh64/sim-main.h b/sim/sh64/sim-main.h -index da8f516..5fd7095 100644 ---- a/sim/sh64/sim-main.h -+++ b/sim/sh64/sim-main.h -@@ -3,6 +3,9 @@ - #ifndef SIM_MAIN_H - #define SIM_MAIN_H - -+struct _sim_cpu; /* FIXME: should be in sim-basics.h */ -+typedef struct _sim_cpu SIM_CPU; -+ - /* sim-basics.h includes config.h but cgen-types.h must be included before - sim-basics.h and cgen-types.h needs config.h. */ - #include "config.h" -diff --git a/sim/v850/sim-main.h b/sim/v850/sim-main.h -index e7276a6..1a45f97 100644 ---- a/sim/v850/sim-main.h -+++ b/sim/v850/sim-main.h -@@ -9,6 +9,9 @@ - #include "sim-basics.h" - #include "sim-signal.h" - #include "sim-fpu.h" -+ -+typedef struct _sim_cpu SIM_CPU; -+ - #include "sim-base.h" - - #include "simops.h" --- -2.7.4 - diff --git a/package/gdb/7.11.1/0001-sim-bfin-split-out-common-mach-model-defines-into-ar.patch b/package/gdb/7.11.1/0001-sim-bfin-split-out-common-mach-model-defines-into-ar.patch new file mode 100644 index 0000000000..5841cfd4d1 --- /dev/null +++ b/package/gdb/7.11.1/0001-sim-bfin-split-out-common-mach-model-defines-into-ar.patch @@ -0,0 +1,155 @@ +From 7a09ed68e203a813d88fb7fc6eeb1e92209561a5 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Mon, 8 Aug 2016 13:06:49 +0800 +Subject: [PATCH] sim: bfin: split out common mach/model defines into arch.h + [PR sim/20438] + +The current machs.h mixes common enums with Blackfin-specific defines. +This causes us troubles with header inclusion order such that we can't +drop the old SIM_CPU typedef (which is duplicated in common code). By +splitting the two up, we can unwind this dependency chain, and drop the +old typedef. It also fixes building with older gcc versions. + +[Romain: backport from gdb 7.12] +Signed-off-by: Romain Naour + +--- + sim/bfin/ChangeLog | 9 +++++++++ + sim/bfin/arch.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ + sim/bfin/machs.h | 20 -------------------- + sim/bfin/sim-main.h | 8 ++------ + 4 files changed, 55 insertions(+), 26 deletions(-) + create mode 100644 sim/bfin/arch.h + +diff --git a/sim/bfin/ChangeLog b/sim/bfin/ChangeLog +index 3dea7c9..a995436 100644 +--- a/sim/bfin/ChangeLog ++++ b/sim/bfin/ChangeLog +@@ -1,3 +1,12 @@ ++2016-08-13 Mike Frysinger ++ ++ PR sim/20438 ++ * machs.h (MODEL_TYPE, MACH_ATTR, BFIN_INSN_*): Move ... ++ * arch.h: ... to this new header file. ++ * sim-main.h (SIM_CPU): Delete. ++ Include arch.h before sim-base.h, and move sim-base.h before ++ bfin-sim.h. ++ + 2016-01-10 Mike Frysinger + + * config.in, configure: Regenerate. +diff --git a/sim/bfin/arch.h b/sim/bfin/arch.h +new file mode 100644 +index 0000000..b86d3e9 +--- /dev/null ++++ b/sim/bfin/arch.h +@@ -0,0 +1,44 @@ ++/* Simulator for Analog Devices Blackfin processors. ++ ++ Copyright (C) 2005-2016 Free Software Foundation, Inc. ++ Contributed by Analog Devices, Inc. ++ ++ This file is part of simulators. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see . */ ++ ++#ifndef BFIN_ARCH_H ++#define BFIN_ARCH_H ++ ++typedef enum model_type { ++#define P(n) MODEL_BF##n, ++#include "proc_list.def" ++#undef P ++ MODEL_MAX ++} MODEL_TYPE; ++ ++typedef enum mach_attr { ++ MACH_BASE, ++ MACH_BFIN, ++ MACH_MAX ++} MACH_ATTR; ++ ++enum { ++#define I(insn) BFIN_INSN_##insn, ++#include "insn_list.def" ++#undef I ++ BFIN_INSN_MAX ++}; ++ ++#endif +diff --git a/sim/bfin/machs.h b/sim/bfin/machs.h +index 0372982..36819ae 100644 +--- a/sim/bfin/machs.h ++++ b/sim/bfin/machs.h +@@ -21,19 +21,6 @@ + #ifndef _BFIN_MACHS_H_ + #define _BFIN_MACHS_H_ + +-typedef enum model_type { +-#define P(n) MODEL_BF##n, +-#include "proc_list.def" +-#undef P +- MODEL_MAX +-} MODEL_TYPE; +- +-typedef enum mach_attr { +- MACH_BASE, +- MACH_BFIN, +- MACH_MAX +-} MACH_ATTR; +- + #define CPU_MODEL_NUM(cpu) MODEL_NUM (CPU_MODEL (cpu)) + + /* XXX: Some of this probably belongs in CPU_MODEL. */ +@@ -46,13 +33,6 @@ void bfin_model_cpu_init (SIM_DESC, SIM_CPU *); + bu32 bfin_model_get_chipid (SIM_DESC); + bu32 bfin_model_get_dspid (SIM_DESC); + +-enum { +-#define I(insn) BFIN_INSN_##insn, +-#include "insn_list.def" +-#undef I +- BFIN_INSN_MAX +-}; +- + #define BFIN_COREMMR_CEC_BASE 0xFFE02100 + #define BFIN_COREMMR_CEC_SIZE (4 * 5) + #define BFIN_COREMMR_CTIMER_BASE 0xFFE03000 +diff --git a/sim/bfin/sim-main.h b/sim/bfin/sim-main.h +index 51fb87e..34fd153 100644 +--- a/sim/bfin/sim-main.h ++++ b/sim/bfin/sim-main.h +@@ -23,17 +23,13 @@ + + #include "sim-basics.h" + #include "sim-signal.h" +- +-/* TODO: Delete this. Need to convert bu32/etc... to common sim types +- and unwind the bfin-sim.h/machs.h include below first though. */ +-typedef struct _sim_cpu SIM_CPU; ++#include "arch.h" ++#include "sim-base.h" + + #include "bfin-sim.h" + + #include "machs.h" + +-#include "sim-base.h" +- + struct _sim_cpu { + /* ... simulator specific members ... */ + struct bfin_cpu_state state; +-- +2.9.3 + diff --git a/package/genimage/Config.in.host b/package/genimage/Config.in.host index acf777c8bf..5c5a8a8a2c 100644 --- a/package/genimage/Config.in.host +++ b/package/genimage/Config.in.host @@ -5,7 +5,7 @@ config BR2_PACKAGE_HOST_GENIMAGE images from a given root filesystem tree. genimage is intended to be run in a fakeroot environment. - Configuration is done is a config file parsed by + Configuration is done in a config file parsed by libconfuse. Options like the path to tools can be given in environment variables, the config file or commandline switches. diff --git a/package/git/git.mk b/package/git/git.mk index 29e430d3e6..1c15740076 100644 --- a/package/git/git.mk +++ b/package/git/git.mk @@ -7,7 +7,7 @@ GIT_VERSION = 2.11.1 GIT_SOURCE = git-$(GIT_VERSION).tar.xz GIT_SITE = https://www.kernel.org/pub/software/scm/git -GIT_LICENSE = GPLv2 LGPLv2.1+ +GIT_LICENSE = GPLv2, LGPLv2.1+ GIT_LICENSE_FILES = COPYING LGPL-2.1 GIT_DEPENDENCIES = zlib host-gettext diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index c11f7cd867..ee5253968d 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -101,9 +101,9 @@ endef # GLIBC_LIBS_LIB = \ - ld*.so.* libc.so.* libcrypt.so.* libdl.so.* libgcc_s.so.* libm.so.* \ - libnsl.so.* libpthread.so.* libresolv.so.* librt.so.* libutil.so.* \ - libnss_files.so.* libnss_dns.so.* libmvec.so.* + ld*.so.* libanl.so.* libc.so.* libcrypt.so.* libdl.so.* libgcc_s.so.* \ + libm.so.* libnsl.so.* libpthread.so.* libresolv.so.* librt.so.* \ + libutil.so.* libnss_files.so.* libnss_dns.so.* libmvec.so.* ifeq ($(BR2_PACKAGE_GDB),y) GLIBC_LIBS_LIB += libthread_db.so.* diff --git a/package/glmark2/Config.in b/package/glmark2/Config.in index c8380b1d34..addd7a906e 100644 --- a/package/glmark2/Config.in +++ b/package/glmark2/Config.in @@ -10,11 +10,17 @@ config BR2_PACKAGE_GLMARK2_GL depends on BR2_PACKAGE_HAS_LIBGL depends on BR2_PACKAGE_MESA3D_DRI_DRIVER +comment "glmark2 needs a toolchain w/ C++, gcc >= 4.9" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + comment "glmark2 needs an OpenGL or an openGL ES and EGL backend provided by mesa3d" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 && BR2_INSTALL_LIBSTDCPP depends on !BR2_PACKAGE_GLMARK2_GL && !BR2_PACKAGE_GLMARK2_EGL_GLES config BR2_PACKAGE_GLMARK2 bool "glmark2" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14 depends on BR2_PACKAGE_GLMARK2_GL || BR2_PACKAGE_GLMARK2_EGL_GLES select BR2_PACKAGE_JPEG select BR2_PACKAGE_LIBPNG diff --git a/package/glmark2/glmark2.hash b/package/glmark2/glmark2.hash index 7868b37d9d..92c53e5410 100644 --- a/package/glmark2/glmark2.hash +++ b/package/glmark2/glmark2.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 421bdb87ed8c04a25f60816c7754d45e91a45136f5489df59d74001c159882b8 glmark2-fa71af2dfab711fac87b9504b6fc9862f44bf72a.tar.gz +sha256 ea59bd267a88e2c773423eec43f7cb90b0ca1c369762e836dec575ebdcdcc012 glmark2-7215c0f337dae0b232535549c37fca441747a891.tar.gz diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk index e35e36a4e6..c7cefeb16c 100644 --- a/package/glmark2/glmark2.mk +++ b/package/glmark2/glmark2.mk @@ -4,9 +4,9 @@ # ################################################################################ -GLMARK2_VERSION = fa71af2dfab711fac87b9504b6fc9862f44bf72a +GLMARK2_VERSION = 7215c0f337dae0b232535549c37fca441747a891 GLMARK2_SITE = $(call github,glmark2,glmark2,$(GLMARK2_VERSION)) -GLMARK2_LICENSE = GPLv3+ SGIv1 +GLMARK2_LICENSE = GPLv3+, SGIv1 GLMARK2_LICENSE_FILES = COPYING COPYING.SGI GLMARK2_DEPENDENCIES = host-pkgconf jpeg libpng \ $(if $(BR2_PACKAGE_HAS_LIBEGL),libegl) \ diff --git a/package/gstreamer/gstreamer/gstreamer.mk b/package/gstreamer/gstreamer/gstreamer.mk index f2bde30d29..cde7f8f62c 100644 --- a/package/gstreamer/gstreamer/gstreamer.mk +++ b/package/gstreamer/gstreamer/gstreamer.mk @@ -15,7 +15,7 @@ GSTREAMER_LICENSE_FILES = COPYING # Checking if unaligned memory access works correctly cannot be done when cross # compiling. For the following architectures there is no information available # in the configure script. -ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze)$(BR2_nios2),y) +ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze)$(BR2_nios2)$(BR2_or1k),y) GSTREAMER_CONF_ENV = as_cv_unaligned_access=no endif ifeq ($(BR2_aarch64),y) diff --git a/package/gstreamer1/gst-omx/gst-omx.hash b/package/gstreamer1/gst-omx/gst-omx.hash index be39ef764b..dff9840455 100644 --- a/package/gstreamer1/gst-omx/gst-omx.hash +++ b/package/gstreamer1/gst-omx/gst-omx.hash @@ -1,2 +1,2 @@ -# From https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-1.10.3.tar.xz.sha256sum -sha256 dd88451e175df7a6b6f619eff0f43a6078054ec7068787b19faf89af94cdb6e1 gst-omx-1.10.3.tar.xz +# From https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-1.10.4.tar.xz.sha256sum +sha256 45072925cf262f0fd528fab78f0de52734e46a5a88aa802fae51c67c09c81aa2 gst-omx-1.10.4.tar.xz diff --git a/package/gstreamer1/gst-omx/gst-omx.mk b/package/gstreamer1/gst-omx/gst-omx.mk index d55ef5fe6d..6ce7baad2f 100644 --- a/package/gstreamer1/gst-omx/gst-omx.mk +++ b/package/gstreamer1/gst-omx/gst-omx.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST_OMX_VERSION = 1.10.3 +GST_OMX_VERSION = 1.10.4 GST_OMX_SOURCE = gst-omx-$(GST_OMX_VERSION).tar.xz GST_OMX_SITE = https://gstreamer.freedesktop.org/src/gst-omx diff --git a/package/gstreamer1/gst1-libav/gst1-libav.hash b/package/gstreamer1/gst1-libav/gst1-libav.hash index 9c846308e5..cc83429f6a 100644 --- a/package/gstreamer1/gst1-libav/gst1-libav.hash +++ b/package/gstreamer1/gst1-libav/gst1-libav.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.10.3.tar.xz.sha256sum -sha256 9a6bc165b1862b18b98d9f1755c43806e4839a80f69ec7ea9a2dab61b65752a9 gst-libav-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.10.4.tar.xz.sha256sum +sha256 6ca0feca75e3d48315e07f20ec37cf6260ed1e9dde58df355febd5016246268b gst-libav-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-libav/gst1-libav.mk b/package/gstreamer1/gst1-libav/gst1-libav.mk index ec84b770c0..5726bb5d61 100644 --- a/package/gstreamer1/gst1-libav/gst1-libav.mk +++ b/package/gstreamer1/gst1-libav/gst1-libav.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_LIBAV_VERSION = 1.10.3 +GST1_LIBAV_VERSION = 1.10.4 GST1_LIBAV_SOURCE = gst-libav-$(GST1_LIBAV_VERSION).tar.xz GST1_LIBAV_SITE = https://gstreamer.freedesktop.org/src/gst-libav GST1_LIBAV_CONF_OPTS = --with-system-libav diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash index 2d0f91348c..441afa2c52 100644 --- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash +++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.10.3.tar.xz.sha256sum -sha256 24099351fb6984c9e7560de06e072ff2e33d0b2db38b8fcc7afefb536e5094e7 gst-plugins-bad-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.10.4.tar.xz.sha256sum +sha256 23ddae506b3a223b94869a0d3eea3e9a12e847f94d2d0e0b97102ce13ecd6966 gst-plugins-bad-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk index 062849497e..00add02af9 100644 --- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk +++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk @@ -4,14 +4,14 @@ # ################################################################################ -GST1_PLUGINS_BAD_VERSION = 1.10.3 +GST1_PLUGINS_BAD_VERSION = 1.10.4 GST1_PLUGINS_BAD_SOURCE = gst-plugins-bad-$(GST1_PLUGINS_BAD_VERSION).tar.xz GST1_PLUGINS_BAD_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-bad GST1_PLUGINS_BAD_INSTALL_STAGING = YES GST1_PLUGINS_BAD_LICENSE_FILES = COPYING COPYING.LIB # Unknown and GPL licensed plugins will append to GST1_PLUGINS_BAD_LICENSE if # enabled. -GST1_PLUGINS_BAD_LICENSE = LGPLv2+ LGPLv2.1+ +GST1_PLUGINS_BAD_LICENSE = LGPLv2+, LGPLv2.1+ GST1_PLUGINS_BAD_CONF_OPTS = \ --disable-examples \ diff --git a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash index 86116f00dc..b526b1454b 100644 --- a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash +++ b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.10.3.tar.xz.sha256sum -sha256 e6299617d705a0cbfb535107c1d3a8fc0f0967f14193a8c5c7583f46a88b1710 gst-plugins-base-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.10.4.tar.xz.sha256sum +sha256 f6d245b6b3d4cb733f81ebb021074c525ece83db0c10e932794b339b8d935eb7 gst-plugins-base-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk index 76602cc3d4..6ab63a3512 100644 --- a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk +++ b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_PLUGINS_BASE_VERSION = 1.10.3 +GST1_PLUGINS_BASE_VERSION = 1.10.4 GST1_PLUGINS_BASE_SOURCE = gst-plugins-base-$(GST1_PLUGINS_BASE_VERSION).tar.xz GST1_PLUGINS_BASE_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-base GST1_PLUGINS_BASE_INSTALL_STAGING = YES diff --git a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash index 90578a2ac1..21ee18d15f 100644 --- a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash +++ b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.10.3.tar.xz.sha256sum -sha256 4e07e93e34d4b93208f1579c21e7d91a236577b36f128a5332ffee85b4465955 gst-plugins-good-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.10.4.tar.xz.sha256sum +sha256 8a86c61434a8c44665365bd0b3557a040937d1f44bf69caee4e9ea816ce74d7e gst-plugins-good-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk index 6fe92217ae..e25149a846 100644 --- a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk +++ b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_PLUGINS_GOOD_VERSION = 1.10.3 +GST1_PLUGINS_GOOD_VERSION = 1.10.4 GST1_PLUGINS_GOOD_SOURCE = gst-plugins-good-$(GST1_PLUGINS_GOOD_VERSION).tar.xz GST1_PLUGINS_GOOD_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-good GST1_PLUGINS_GOOD_LICENSE_FILES = COPYING diff --git a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash index 6b4f0c7590..9567d9ca0c 100644 --- a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash +++ b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.10.3.tar.xz.sha256sum -sha256 c91597d03abff9df435ad4892eae44df1ee14159c7cc7317ac9d2766ff446bd2 gst-plugins-ugly-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.10.4.tar.xz.sha256sum +sha256 6386c77ca8459cba431ed0b63da780c7062c7cc48055d222024d8eaf198ffa59 gst-plugins-ugly-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk index 2f68145ca6..d503555cf4 100644 --- a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk +++ b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_PLUGINS_UGLY_VERSION = 1.10.3 +GST1_PLUGINS_UGLY_VERSION = 1.10.4 GST1_PLUGINS_UGLY_SOURCE = gst-plugins-ugly-$(GST1_PLUGINS_UGLY_VERSION).tar.xz GST1_PLUGINS_UGLY_SITE = https://gstreamer.freedesktop.org/src/gst-plugins-ugly GST1_PLUGINS_UGLY_LICENSE_FILES = COPYING diff --git a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash index 21d4ba564a..d4c540d690 100644 --- a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash @@ -1,2 +1,2 @@ -# From https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.10.3.tar.xz.sha256sum -sha256 baf9f7d229711cb3d823a447a930132f809b3321eab3535491bb01c8a21566fe gst-rtsp-server-1.10.3.tar.xz +# From https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.10.4.tar.xz.sha256sum +sha256 2f6e12fd4e3568ee190dc24e57e4c3a878971c3a3fb6904a9674404fac256de6 gst-rtsp-server-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk index a2e8eec7b3..bfdd4c433a 100644 --- a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_RTSP_SERVER_VERSION = 1.10.3 +GST1_RTSP_SERVER_VERSION = 1.10.4 GST1_RTSP_SERVER_SOURCE = gst-rtsp-server-$(GST1_RTSP_SERVER_VERSION).tar.xz GST1_RTSP_SERVER_SITE = http://gstreamer.freedesktop.org/src/gst-rtsp-server GST1_RTSP_SERVER_LICENSE = LGPLv2+ diff --git a/package/gstreamer1/gst1-validate/gst1-validate.hash b/package/gstreamer1/gst1-validate/gst1-validate.hash index 164ee2dab6..10c6667357 100644 --- a/package/gstreamer1/gst1-validate/gst1-validate.hash +++ b/package/gstreamer1/gst1-validate/gst1-validate.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gst-validate/gst-validate-1.10.3.tar.xz.sha256sum -sha256 be6b48569324c541266310e7e6d1098b1a2ec7cd06b9e95b6701c96bc4562c02 gst-validate-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-validate/gst-validate-1.10.4.tar.xz.sha256sum +sha256 e59c00bf64cca9c477cdb44eb8dd0b3aac5499b17d77bf28ee054fd211e8d73c gst-validate-1.10.4.tar.xz diff --git a/package/gstreamer1/gst1-validate/gst1-validate.mk b/package/gstreamer1/gst1-validate/gst1-validate.mk index 695e53e043..cf7a8aff5c 100644 --- a/package/gstreamer1/gst1-validate/gst1-validate.mk +++ b/package/gstreamer1/gst1-validate/gst1-validate.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_VALIDATE_VERSION = 1.10.3 +GST1_VALIDATE_VERSION = 1.10.4 GST1_VALIDATE_SOURCE = gst-validate-$(GST1_VALIDATE_VERSION).tar.xz GST1_VALIDATE_SITE = https://gstreamer.freedesktop.org/src/gst-validate GST1_VALIDATE_LICENSE = LGPLv2.1+ diff --git a/package/gstreamer1/gstreamer1/0001-gstconfig.h.in-Fix-unaligned-access-support-for-the-.patch b/package/gstreamer1/gstreamer1/0001-gstconfig.h.in-Fix-unaligned-access-support-for-the-.patch new file mode 100644 index 0000000000..88f337328c --- /dev/null +++ b/package/gstreamer1/gstreamer1/0001-gstconfig.h.in-Fix-unaligned-access-support-for-the-.patch @@ -0,0 +1,33 @@ +From 437b3e38d9127ae021ca8510709c2e6be3e6b819 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sat, 18 Feb 2017 10:03:24 +0100 +Subject: [PATCH] gstconfig.h.in: Fix unaligned access support for the openrisc + architecture + +Teach gstconfig.h.in about the openrisc (or1k) architecture. Fixes +buildroot autobuild failure: + +http://autobuild.buildroot.net/results/717/717d78ce0935749f477bdf3133b6f20057a28c01/build-end.log + +Submitted-upstream: https://bugzilla.gnome.org/show_bug.cgi?id=778866 +Signed-off-by: Peter Korsgaard +--- + gst/gstconfig.h.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gst/gstconfig.h.in b/gst/gstconfig.h.in +index cf95f61ab..1b2ca64ac 100644 +--- a/gst/gstconfig.h.in ++++ b/gst/gstconfig.h.in +@@ -104,7 +104,7 @@ + * http://docs.oracle.com/cd/E19205-01/820-4155/c++_faq.html#Vers6 + * https://software.intel.com/en-us/node/583402 + */ +-#if defined(__alpha__) || defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__bfin) || defined(__hppa__) || defined(__nios2__) || defined(__MICROBLAZE__) || defined(__mips__) || defined(__sh__) || defined(__SH4__) || defined(__sparc__) || defined(__sparc) || defined(__ia64__) || defined(_M_ALPHA) || defined(_M_ARM) || defined(_M_IA64) || defined(__xtensa__) ++#if defined(__alpha__) || defined(__arc__) || defined(__arm__) || defined(__aarch64__) || defined(__bfin) || defined(__hppa__) || defined(__nios2__) || defined(__MICROBLAZE__) || defined(__mips__) || defined(__or1k__) || defined(__sh__) || defined(__SH4__) || defined(__sparc__) || defined(__sparc) || defined(__ia64__) || defined(_M_ALPHA) || defined(_M_ARM) || defined(_M_IA64) || defined(__xtensa__) + # define GST_HAVE_UNALIGNED_ACCESS 0 + #elif defined(__i386__) || defined(__i386) || defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__ppc__) || defined(__ppc64__) || defined(__powerpc__) || defined(__powerpc64__) || defined(__m68k__) || defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64) || defined(__s390__) || defined(__s390x__) || defined(__zarch__) + # define GST_HAVE_UNALIGNED_ACCESS 1 +-- +2.11.0 + diff --git a/package/gstreamer1/gstreamer1/gstreamer1.hash b/package/gstreamer1/gstreamer1/gstreamer1.hash index f65061b2eb..455e7fb48c 100644 --- a/package/gstreamer1/gstreamer1/gstreamer1.hash +++ b/package/gstreamer1/gstreamer1/gstreamer1.hash @@ -1,2 +1,2 @@ -# From http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.10.3.tar.xz.sha256sum -sha256 85b9dc1b2991f224fa90d534ec57014896c479e061dc9fa1bc16ae17cbebb63d gstreamer-1.10.3.tar.xz +# From http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.10.4.tar.xz.sha256sum +sha256 50c2f5af50a6cc6c0a3f3ed43bdd8b5e2bff00bacfb766d4be139ec06d8b5218 gstreamer-1.10.4.tar.xz diff --git a/package/gstreamer1/gstreamer1/gstreamer1.mk b/package/gstreamer1/gstreamer1/gstreamer1.mk index ac2c988706..5a0a369c7e 100644 --- a/package/gstreamer1/gstreamer1/gstreamer1.mk +++ b/package/gstreamer1/gstreamer1/gstreamer1.mk @@ -4,23 +4,13 @@ # ################################################################################ -GSTREAMER1_VERSION = 1.10.3 +GSTREAMER1_VERSION = 1.10.4 GSTREAMER1_SOURCE = gstreamer-$(GSTREAMER1_VERSION).tar.xz GSTREAMER1_SITE = https://gstreamer.freedesktop.org/src/gstreamer GSTREAMER1_INSTALL_STAGING = YES GSTREAMER1_LICENSE_FILES = COPYING GSTREAMER1_LICENSE = LGPLv2+, LGPLv2.1+ -# Checking if unaligned memory access works correctly cannot be done when cross -# compiling. For the following architectures there is no information available -# in the configure script. -ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze)$(BR2_nios2),y) -GSTREAMER1_CONF_ENV = as_cv_unaligned_access=no -endif -ifeq ($(BR2_aarch64),y) -GSTREAMER1_CONF_ENV = as_cv_unaligned_access=yes -endif - GSTREAMER1_CONF_OPTS = \ --disable-examples \ --disable-tests \ diff --git a/package/heimdal/heimdal.mk b/package/heimdal/heimdal.mk index 36eb1b13bf..5376a6c40e 100644 --- a/package/heimdal/heimdal.mk +++ b/package/heimdal/heimdal.mk @@ -24,7 +24,7 @@ HOST_HEIMDAL_CONF_OPTS = \ --without-hesiod \ --without-x \ --disable-heimdal-documentation -HOST_HEIMDAL_CONF_ENV = MAKEINFO=true LIBS="-lpthread" +HOST_HEIMDAL_CONF_ENV = MAKEINFO=true HEIMDAL_LICENSE = BSD-3c HEIMDAL_LICENSE_FILES = LICENSE diff --git a/package/hiredis/hiredis.mk b/package/hiredis/hiredis.mk index eb96711ab7..cd406f1439 100644 --- a/package/hiredis/hiredis.mk +++ b/package/hiredis/hiredis.mk @@ -19,7 +19,7 @@ ifeq ($(BR2_STATIC_LIBS),y) HIREDIS_TARGETS += static else ifeq ($(BR2_SHARED_LIBS),y) HIREDIS_TARGETS += dynamic -else ifeq $(BR2_SHARED_STATIC_LIBS),y) +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) HIREDIS_TARGETS += dynamic static endif diff --git a/package/hplip/hplip.mk b/package/hplip/hplip.mk index 9a2c9db029..cd1be042a5 100644 --- a/package/hplip/hplip.mk +++ b/package/hplip/hplip.mk @@ -8,7 +8,7 @@ HPLIP_VERSION = 3.16.11 HPLIP_SITE = http://downloads.sourceforge.net/hplip/hplip HPLIP_AUTORECONF = YES HPLIP_DEPENDENCIES = cups libusb jpeg host-pkgconf -HPLIP_LICENSE = GPLv2 BSD-3c MIT +HPLIP_LICENSE = GPLv2, BSD-3c, MIT HPLIP_LICENSE_FILES = COPYING HPLIP_CONF_OPTS = \ diff --git a/package/htop/htop.mk b/package/htop/htop.mk index adc5090146..9451d159fa 100644 --- a/package/htop/htop.mk +++ b/package/htop/htop.mk @@ -18,4 +18,11 @@ else HTOP_CONF_OPTS += --disable-unicode endif +# ARC uses an old uClibc that needs dladdr() for backtrace support, +# which doesn't work for static only scenario, so as a workaround, we +# pretend that execinfo.h is not available. +ifeq ($(BR2_arc)$(BR2_STATIC_LIBS),yy) +HTOP_CONF_ENV += ac_cv_header_execinfo_h=no +endif + $(eval $(autotools-package)) diff --git a/package/iprutils/Config.in b/package/iprutils/Config.in index 42f372cefc..b429e71c8b 100644 --- a/package/iprutils/Config.in +++ b/package/iprutils/Config.in @@ -1,9 +1,6 @@ config BR2_PACKAGE_IPRUTILS bool "iprutils" select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_NCURSES_TARGET_PANEL - select BR2_PACKAGE_NCURSES_TARGET_FORM - select BR2_PACKAGE_NCURSES_TARGET_MENU select BR2_PACKAGE_LIBSYSFS select BR2_PACKAGE_PCIUTILS depends on BR2_USE_MMU # fork() diff --git a/package/iptraf-ng/Config.in b/package/iptraf-ng/Config.in index 5574cfa9a5..5afb81dacf 100644 --- a/package/iptraf-ng/Config.in +++ b/package/iptraf-ng/Config.in @@ -2,7 +2,6 @@ config BR2_PACKAGE_IPTRAF_NG bool "iptraf-ng" depends on BR2_USE_MMU # fork() select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_NCURSES_TARGET_PANEL help IPTraf-ng is a ncurses-based network monitoring utility. It gathers data like TCP connection packet and byte counts, interface statistics diff --git a/package/jamvm/Config.in b/package/jamvm/Config.in index 2cc97a1398..57e1a8e6f4 100644 --- a/package/jamvm/Config.in +++ b/package/jamvm/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_JAMVM depends on !BR2_STATIC_LIBS depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 \ || BR2_mips || BR2_mipsel || BR2_powerpc + depends on BR2_PACKAGE_CLASSPATH_ARCH_SUPPORTS select BR2_PACKAGE_ZLIB select BR2_PACKAGE_CLASSPATH help @@ -15,4 +16,5 @@ config BR2_PACKAGE_JAMVM comment "jamvm needs a toolchain w/ threads, dynamic library" depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64 \ || BR2_mips || BR2_mipsel || BR2_powerpc + depends on BR2_PACKAGE_CLASSPATH_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/kismet/Config.in b/package/kismet/Config.in index 7265c63e87..ab91c0e6fb 100644 --- a/package/kismet/Config.in +++ b/package/kismet/Config.in @@ -10,7 +10,6 @@ config BR2_PACKAGE_KISMET depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # dlfcn.h select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_NCURSES_TARGET_PANEL select BR2_PACKAGE_LIBPCAP select BR2_PACKAGE_LIBNL help diff --git a/package/kmod/kmod.mk b/package/kmod/kmod.mk index 7492b926f0..407d90d817 100644 --- a/package/kmod/kmod.mk +++ b/package/kmod/kmod.mk @@ -15,6 +15,12 @@ HOST_KMOD_DEPENDENCIES = host-pkgconf KMOD_LICENSE = LGPLv2.1+ (library) KMOD_LICENSE_FILES = libkmod/COPYING +# --gc-sections triggers binutils ld segfault +# https://sourceware.org/bugzilla/show_bug.cgi?id=21180 +ifeq ($(BR2_microblaze),y) +KMOD_CONF_ENV += cc_cv_LDFLAGS__Wl___gc_sections=false +endif + # static linking not supported, see # https://git.kernel.org/cgit/utils/kernel/kmod/kmod.git/commit/?id=b7016153ec8 KMOD_CONF_OPTS = --disable-static --enable-shared diff --git a/package/kmsxx/kmsxx.mk b/package/kmsxx/kmsxx.mk index 730292eb7e..c06d20be61 100644 --- a/package/kmsxx/kmsxx.mk +++ b/package/kmsxx/kmsxx.mk @@ -12,6 +12,12 @@ KMSXX_INSTALL_STAGING = YES KMSXX_DEPENDENCIES = libdrm host-pkgconf KMSXX_CONF_OPTS = -DKMSXX_ENABLE_PYTHON=OFF +# Internal error, aborting at dw2gencfi.c:214 in emit_expr_encoded +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79509 +ifeq ($(BR2_m68k_cf),y) +KMSXX_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -fno-dwarf2-cfi-asm" +endif + ifeq ($(BR2_PACKAGE_KMSXX_INSTALL_TESTS),y) KMSXX_TESTS = \ fbtestpat kmsblank kmscapture \ diff --git a/package/lcdapi/lcdapi.mk b/package/lcdapi/lcdapi.mk index 5d8c2ee571..75390421d6 100644 --- a/package/lcdapi/lcdapi.mk +++ b/package/lcdapi/lcdapi.mk @@ -11,6 +11,12 @@ LCDAPI_LICENSE_FILES = COPYING LCDAPI_AUTORECONF = YES LCDAPI_INSTALL_STAGING = YES +# Internal error, aborting at dw2gencfi.c:214 in emit_expr_encoded +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79509 +ifeq ($(BR2_m68k_cf),y) +LCDAPI_CONF_OPTS += CXXFLAGS="$(TARGET_CXXFLAGS) -fno-dwarf2-cfi-asm" +endif + define LCDAPI_CREATE_M4_DIR mkdir -p $(@D)/m4 endef diff --git a/package/libasplib/libasplib.mk b/package/libasplib/libasplib.mk index b3b1fdb30f..558d173496 100644 --- a/package/libasplib/libasplib.mk +++ b/package/libasplib/libasplib.mk @@ -19,6 +19,7 @@ LIBASPLIB_CONF_OPTS = \ -DBUILD_TIMER=ON # Internal error, aborting at dw2gencfi.c:214 in emit_expr_encoded +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79509 ifeq ($(BR2_m68k_cf),y) LIBASPLIB_CXXFLAGS += -fno-dwarf2-cfi-asm endif diff --git a/package/libcurl/libcurl.hash b/package/libcurl/libcurl.hash index 7a942f238b..72cae81c0e 100644 --- a/package/libcurl/libcurl.hash +++ b/package/libcurl/libcurl.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 d16185a767cb2c1ba3d5b9096ec54e5ec198b213f45864a38b3bda4bbf87389b curl-7.52.1.tar.bz2 +sha256 b2345a8bef87b4c229dedf637cb203b5e21db05e20277c8e1094f0d4da180801 curl-7.53.0.tar.bz2 diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk index a9fba26627..b5dcb377b5 100644 --- a/package/libcurl/libcurl.mk +++ b/package/libcurl/libcurl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBCURL_VERSION = 7.52.1 +LIBCURL_VERSION = 7.53.0 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.bz2 LIBCURL_SITE = https://curl.haxx.se/download LIBCURL_DEPENDENCIES = host-pkgconf \ diff --git a/package/libepoxy/libepoxy.mk b/package/libepoxy/libepoxy.mk index 7436e8fed6..1dd583e3ed 100644 --- a/package/libepoxy/libepoxy.mk +++ b/package/libepoxy/libepoxy.mk @@ -9,7 +9,7 @@ LIBEPOXY_SITE = $(call github,anholt,libepoxy,$(LIBEPOXY_VERSION)) LIBEPOXY_INSTALL_STAGING = YES # For patches 0001-0006: LIBEPOXY_AUTORECONF = YES -LIBEPOXY_DEPENDENCIES = xutil_util-macros +LIBEPOXY_DEPENDENCIES = host-pkgconf xutil_util-macros LIBEPOXY_LICENSE = MIT LIBEPOXY_LICENSE_FILES = COPYING diff --git a/package/libgpiod/libgpiod.hash b/package/libgpiod/libgpiod.hash index 9901be6ace..eee2a66280 100644 --- a/package/libgpiod/libgpiod.hash +++ b/package/libgpiod/libgpiod.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 c9a60e1073aacb25b4ad06d513f31416335b5a710f869cb7e838d2abb62e1e00 libgpiod-v0.1.2.tar.gz +sha256 670a13518fabf2a99f9e349c33d5421c2146eec15b73c5edef3f1981a7adaeda libgpiod-v0.1.3.tar.gz diff --git a/package/libgpiod/libgpiod.mk b/package/libgpiod/libgpiod.mk index dbf9511f44..bc9c6eca39 100644 --- a/package/libgpiod/libgpiod.mk +++ b/package/libgpiod/libgpiod.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGPIOD_VERSION = v0.1.2 +LIBGPIOD_VERSION = v0.1.3 LIBGPIOD_SITE = $(call github,brgl,libgpiod,$(LIBGPIOD_VERSION)) LIBGPIOD_LICENSE = GPLv3+ LIBGPIOD_LICENSE_FILES = COPYING diff --git a/package/libimxvpuapi/libimxvpuapi.hash b/package/libimxvpuapi/libimxvpuapi.hash index c8cabcf285..cd0c8f1f5f 100644 --- a/package/libimxvpuapi/libimxvpuapi.hash +++ b/package/libimxvpuapi/libimxvpuapi.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 8e6dc4105db6164c0de72fd60eb73f4ba1632f7ba5052b1abc834b462b566da2 libimxvpuapi-0.10.2.tar.gz +sha256 7151e10a24929935bada1d3d87626f17e411575b3a4ac0d86440999ad0100a55 libimxvpuapi-0.10.3.tar.gz diff --git a/package/libimxvpuapi/libimxvpuapi.mk b/package/libimxvpuapi/libimxvpuapi.mk index fde4429375..d368d3d064 100644 --- a/package/libimxvpuapi/libimxvpuapi.mk +++ b/package/libimxvpuapi/libimxvpuapi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBIMXVPUAPI_VERSION = 0.10.2 +LIBIMXVPUAPI_VERSION = 0.10.3 LIBIMXVPUAPI_SITE = $(call github,Freescale,libimxvpuapi,$(LIBIMXVPUAPI_VERSION)) LIBIMXVPUAPI_LICENSE = LGPLv2.1+ LIBIMXVPUAPI_LICENSE_FILES = LICENSE diff --git a/package/liblockfile/liblockfile.mk b/package/liblockfile/liblockfile.mk index e42b83066c..59fced6851 100644 --- a/package/liblockfile/liblockfile.mk +++ b/package/liblockfile/liblockfile.mk @@ -9,7 +9,7 @@ LIBLOCKFILE_SOURCE = liblockfile_$(LIBLOCKFILE_VERSION).orig.tar.gz LIBLOCKFILE_SITE = http://snapshot.debian.org/archive/debian/20151026T153523Z/pool/main/libl/liblockfile LIBLOCKFILE_PATCH = liblockfile_$(LIBLOCKFILE_VERSION)-6.debian.tar.bz2 -LIBLOCKFILE_LICENSE = LGPLv2+, dotlockfile GPLv2+ +LIBLOCKFILE_LICENSE = LGPLv2+, GPLv2+ (dotlockfile) LIBLOCKFILE_LICENSE_FILES = COPYRIGHT LIBLOCKFILE_INSTALL_STAGING = YES diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk index 4a40b0a8d7..76532e8117 100644 --- a/package/libnss/libnss.mk +++ b/package/libnss/libnss.mk @@ -13,6 +13,16 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib LIBNSS_LICENSE = MPLv2.0 LIBNSS_LICENSE_FILES = nss/COPYING +# --gc-sections triggers binutils ld segfault +# https://sourceware.org/bugzilla/show_bug.cgi?id=21180 +ifeq ($(BR2_microblaze),y) +define LIBNSS_DROP_GC_SECTIONS + sed -i 's:-Wl,--gc-sections::g' $(@D)/nss/coreconf/Linux.mk +endef + +LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_DROP_GC_SECTIONS +endif + LIBNSS_BUILD_VARS = \ MOZILLA_CLIENT=1 \ NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \ diff --git a/package/libpcap/libpcap.mk b/package/libpcap/libpcap.mk index 2583087953..505e2abe3d 100644 --- a/package/libpcap/libpcap.mk +++ b/package/libpcap/libpcap.mk @@ -53,8 +53,8 @@ else LIBPCAP_CONF_OPTS += --without-libnl endif -# microblaze/sparc64 need -fPIC instead of -fpic -ifeq ($(BR2_microblaze)$(BR2_sparc64),y) +# microblaze/sparc/sparc64 need -fPIC instead of -fpic +ifeq ($(BR2_microblaze)$(BR2_sparc)$(BR2_sparc64),y) LIBPCAP_CFLAGS += -fPIC endif diff --git a/package/libraw/libraw.mk b/package/libraw/libraw.mk index d76a1808d5..f78ce1e0cb 100644 --- a/package/libraw/libraw.mk +++ b/package/libraw/libraw.mk @@ -21,10 +21,15 @@ LIBRAW_CONF_OPTS += \ LIBRAW_LICENSE = LGPLv2.1 or CDDL 1.0 or LibRaw Software License 27032010 LIBRAW_LICENSE_FILES = LICENSE.LGPL LICENSE.CDDL LICENSE.LibRaw.pdf README LIBRAW_DEPENDENCIES = host-pkgconf +LIBRAW_CXXFLAGS = $(TARGET_CXXFLAGS) +LIBRAW_CONF_ENV = CXXFLAGS="$(LIBRAW_CXXFLAGS)" ifeq ($(BR2_PACKAGE_JASPER),y) LIBRAW_CONF_OPTS += --enable-jasper LIBRAW_DEPENDENCIES += jasper +# glibc prior to 2.18 only defines constants such as SIZE_MAX or +# INT_FAST32_MAX for C++ code if __STDC_LIMIT_MACROS is defined +LIBRAW_CXXFLAGS += -D__STDC_LIMIT_MACROS else LIBRAW_CONF_OPTS += --disable-jasper endif diff --git a/package/liburcu/liburcu.mk b/package/liburcu/liburcu.mk index 33a301df17..c21c210a07 100644 --- a/package/liburcu/liburcu.mk +++ b/package/liburcu/liburcu.mk @@ -7,7 +7,7 @@ LIBURCU_VERSION = 0.9.2 LIBURCU_SITE = http://lttng.org/files/urcu LIBURCU_SOURCE = userspace-rcu-$(LIBURCU_VERSION).tar.bz2 -LIBURCU_LICENSE = LGPLv2.1+ for the library; MIT-like license for few source files listed in LICENSE; GPLv2+ for test; GPLv3 for few *.m4 files +LIBURCU_LICENSE = LGPLv2.1+ (library), MIT-like (few source files listed in LICENSE), GPLv2+ (test), GPLv3 (few *.m4 files) LIBURCU_LICENSE_FILES = lgpl-2.1.txt lgpl-relicensing.txt gpl-2.0.txt LICENSE LIBURCU_INSTALL_STAGING = YES diff --git a/package/libuv/Config.in b/package/libuv/Config.in index 93fbd56557..cdd73a672f 100644 --- a/package/libuv/Config.in +++ b/package/libuv/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_LIBUV depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # pthread_barrier_* depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 help libuv is a multi-platform support library with a focus on asynchronous I/O. @@ -12,3 +13,4 @@ config BR2_PACKAGE_LIBUV comment "libuv needs a toolchain w/ NPTL, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/libv4l/0002-ir-ctl-fixes-for-musl-compile.patch b/package/libv4l/0002-ir-ctl-fixes-for-musl-compile.patch new file mode 100644 index 0000000000..5bce2d916a --- /dev/null +++ b/package/libv4l/0002-ir-ctl-fixes-for-musl-compile.patch @@ -0,0 +1,59 @@ +From 9908872aaa614a6c4bba80d7a5f1adea7ca7117e Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Tue, 14 Feb 2017 21:27:59 +0100 +Subject: [PATCH] ir-ctl: fixes for musl compile + +- add copy of TEMP_FAILURE_RETRY macro +- use strdup instead of strdupa + +Fixes [1]: + + ir-ctl.c:(.text+0xb06): undefined reference to `strndupa' + ir-ctl.c:(.text+0xe01): undefined reference to `TEMP_FAILURE_RETRY' + +[1] http://autobuild.buildroot.net/results/b8b96c7bbf2147dacac62485cbfdbcfd758271a5 + +Signed-off-by: Peter Seiderer +--- + utils/ir-ctl/ir-ctl.c | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git a/utils/ir-ctl/ir-ctl.c b/utils/ir-ctl/ir-ctl.c +index bc58cee..e9da777 100644 +--- a/utils/ir-ctl/ir-ctl.c ++++ b/utils/ir-ctl/ir-ctl.c +@@ -44,6 +44,15 @@ + + # define N_(string) string + ++/* taken from glibc unistd.h */ ++#ifndef TEMP_FAILURE_RETRY ++#define TEMP_FAILURE_RETRY(expression) \ ++ (__extension__ \ ++ ({ long int __result; \ ++ do __result = (long int) (expression); \ ++ while (__result == -1L && errno == EINTR); \ ++ __result; })) ++#endif + + /* See drivers/media/rc/ir-lirc-codec.c line 23 */ + #define LIRCBUF_SIZE 512 +@@ -344,12 +353,14 @@ static struct file *read_scancode(const char *name) + return NULL; + } + +- pstr = strndupa(name, p - name); ++ pstr = strndup(name, p - name); + + if (!protocol_match(pstr, &proto)) { + fprintf(stderr, _("error: protocol '%s' not found\n"), pstr); ++ free(pstr); + return NULL; + } ++ free(pstr); + + if (!strtoscancode(p + 1, &scancode)) { + fprintf(stderr, _("error: invalid scancode '%s'\n"), p + 1); +-- +2.11.0 + diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host index b1d117a8ca..ee02a45daf 100644 --- a/package/linux-headers/Config.in.host +++ b/package/linux-headers/Config.in.host @@ -214,15 +214,15 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string - default "3.2.84" if BR2_KERNEL_HEADERS_3_2 + default "3.2.85" if BR2_KERNEL_HEADERS_3_2 default "3.4.113" if BR2_KERNEL_HEADERS_3_4 - default "3.10.104" if BR2_KERNEL_HEADERS_3_10 + default "3.10.105" if BR2_KERNEL_HEADERS_3_10 default "3.12.70" if BR2_KERNEL_HEADERS_3_12 default "3.18.48" if BR2_KERNEL_HEADERS_3_18 default "3.19.8" if BR2_KERNEL_HEADERS_3_19 default "4.0.9" if BR2_KERNEL_HEADERS_4_0 default "4.1.38" if BR2_KERNEL_HEADERS_4_1 - default "4.4.48" if BR2_KERNEL_HEADERS_4_4 + default "4.4.52" if BR2_KERNEL_HEADERS_4_4 default "4.8.17" if BR2_KERNEL_HEADERS_4_8 - default "4.9.9" if BR2_KERNEL_HEADERS_4_9 + default "4.9.13" if BR2_KERNEL_HEADERS_4_9 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION diff --git a/package/lm-sensors/lm-sensors.mk b/package/lm-sensors/lm-sensors.mk index a72bba26e6..c198817881 100644 --- a/package/lm-sensors/lm-sensors.mk +++ b/package/lm-sensors/lm-sensors.mk @@ -9,7 +9,7 @@ LM_SENSORS_SOURCE = lm-sensors_$(LM_SENSORS_VERSION).orig.tar.bz2 LM_SENSORS_SITE = http://snapshot.debian.org/archive/debian/20170208T211941Z/pool/main/l/lm-sensors LM_SENSORS_INSTALL_STAGING = YES LM_SENSORS_DEPENDENCIES = host-bison host-flex -LM_SENSORS_LICENSE = libsensors LGPLv2.1+, programs GPLv2+ +LM_SENSORS_LICENSE = LGPLv2.1+ (libsensors), GPLv2+ (programs) LM_SENSORS_LICENSE_FILES = COPYING.LGPL COPYING LM_SENSORS_BINS_ = bin/sensors-conf-convert diff --git a/package/luv/Config.in b/package/luv/Config.in index b085baf546..e9d01099f2 100644 --- a/package/luv/Config.in +++ b/package/luv/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_LUV depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv depends on BR2_USE_MMU # libuv depends on !BR2_STATIC_LIBS # libuv + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv help libuv bindings for LuaJIT and Lua. @@ -12,3 +13,4 @@ config BR2_PACKAGE_LUV comment "luv needs a toolchain w/ NPTL, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/luvi/Config.in b/package/luvi/Config.in index 18317f401e..a9dd2ef740 100644 --- a/package/luvi/Config.in +++ b/package/luvi/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_LUVI depends on BR2_USE_MMU # libuv depends on !BR2_STATIC_LIBS # libuv depends on BR2_PACKAGE_LUAJIT + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LUV help @@ -25,6 +26,7 @@ config BR2_PACKAGE_LUVI comment "luvi needs a toolchain w/ NPTL, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 comment "luvi needs LuaJIT" depends on !BR2_PACKAGE_LUAJIT diff --git a/package/mesa3d-headers/mesa3d-headers.mk b/package/mesa3d-headers/mesa3d-headers.mk index 2c62c48ce6..35b1a71442 100644 --- a/package/mesa3d-headers/mesa3d-headers.mk +++ b/package/mesa3d-headers/mesa3d-headers.mk @@ -47,7 +47,7 @@ define MESA3D_HEADERS_INSTALL_DRI_PC $(INSTALL) -D -m 0644 $(@D)/include/GL/internal/dri_interface.h \ $(STAGING_DIR)/usr/include/GL/internal/dri_interface.h $(INSTALL) -D -m 0644 $(@D)/src/mesa/drivers/dri/dri.pc \ - $(STAGING_DIR)/usr/lib/pkg-config/dri.pc + $(STAGING_DIR)/usr/lib/pkgconfig/dri.pc endef endif # Xorg @@ -62,10 +62,6 @@ ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) MESA3D_HEADERS_DIRS += GLES GLES2 endif -ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG),y) -MESA3D_HEADERS_DIRS += VG -endif - define MESA3D_HEADERS_BUILD_CMDS $(MESA3D_HEADERS_BUILD_DRI_PC) endef diff --git a/package/moarvm/Config.in b/package/moarvm/Config.in index c6e1efa39d..c318ab4b86 100644 --- a/package/moarvm/Config.in +++ b/package/moarvm/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_MOARVM depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # libatomic_ops # needs AO_fetch_compare_and_swap, not implemented for sparcv8/sparcv9 depends on !BR2_sparc64 && !BR2_sparc + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LIBTOMMATH select BR2_PACKAGE_LIBATOMIC_OPS @@ -23,4 +24,4 @@ comment "moarvm needs a toolchain w/ NPTL, dynamic library" depends on BR2_USE_MMU depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS depends on !BR2_sparc64 && !BR2_sparc - + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/mosquitto/Config.in b/package/mosquitto/Config.in index 50937d0554..1e6418a4de 100644 --- a/package/mosquitto/Config.in +++ b/package/mosquitto/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_MOSQUITTO bool "mosquitto" depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_STATIC_LIBS # builds .so help Mosquitto is an open source message broker that implements @@ -15,4 +16,5 @@ config BR2_PACKAGE_MOSQUITTO comment "mosquitto needs a toolchain w/ dynamic library" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_STATIC_LIBS diff --git a/package/mpd/Config.in b/package/mpd/Config.in index 8a28b4f1a3..8eabbbc796 100644 --- a/package/mpd/Config.in +++ b/package/mpd/Config.in @@ -4,9 +4,10 @@ menuconfig BR2_PACKAGE_MPD depends on BR2_USE_WCHAR # flac depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14 - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 depends on BR2_TOOLCHAIN_HAS_ATOMIC + # 0.19.x could be built with GCC 4.6, but for simplicity we require + # the same toolchain dependencies for all versions. + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++14 select BR2_PACKAGE_BOOST select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_MPD_TREMOR if !(BR2_PACKAGE_MPD_MAD || BR2_PACKAGE_MPD_MPG123 || BR2_PACKAGE_MPD_VORBIS || BR2_PACKAGE_MPD_WAVPACK || BR2_PACKAGE_MPD_FLAC || BR2_PACKAGE_MPD_MUSEPACK || BR2_PACKAGE_MPD_FFMPEG) @@ -20,6 +21,24 @@ menuconfig BR2_PACKAGE_MPD if BR2_PACKAGE_MPD +# Hidden config symbols to select the branch 0.20 by default and fallback +# to branch 0.19 for toolchains affected by GCC bug PR 64735. This way we +# keep support for mpd on some architectures, like ARMv5, until GCC 7 is +# released, which will fix this issue. +config BR2_PACKAGE_MPD_VERSION_STRING + string + default "0.20" if !BR2_TOOLCHAIN_HAS_GCC_BUG_64735 + default "0.19" + +config BR2_PACKAGE_MPD_VERSION_0_20 + bool + default y if BR2_PACKAGE_MPD_VERSION_STRING = "0.20" + +config BR2_PACKAGE_MPD_VERSION_0_19 + bool + default y if BR2_PACKAGE_MPD_VERSION_STRING = "0.19" + select BR2_PACKAGE_LIBGLIB2 + comment "Archive plugins" config BR2_PACKAGE_MPD_BZIP2 @@ -320,6 +339,3 @@ comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 4.9" depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 - -comment "mpd needs a toolchain not affected by GCC bug 64735" - depends on BR2_TOOLCHAIN_HAS_GCC_BUG_64735 diff --git a/package/mpd/mpd.hash b/package/mpd/mpd.hash index ee46f3cc5d..ecd78e97c1 100644 --- a/package/mpd/mpd.hash +++ b/package/mpd/mpd.hash @@ -1,2 +1,3 @@ # Locally calculated after checking pgp signature sha256 712b25351c12616630c580204e1c3dcba3ae2993a56cff1c346c87e334d69728 mpd-0.20.4.tar.xz +sha256 8305b8bc026f4b6bde28b8dd09bfdddbe5590acf36358eed4d083a396e301730 mpd-0.19.21.tar.xz diff --git a/package/mpd/mpd.mk b/package/mpd/mpd.mk index 0efc8685f5..8e71ae2141 100644 --- a/package/mpd/mpd.mk +++ b/package/mpd/mpd.mk @@ -4,8 +4,12 @@ # ################################################################################ -MPD_VERSION_MAJOR = 0.20 +MPD_VERSION_MAJOR = $(call qstrip,$(BR2_PACKAGE_MPD_VERSION_STRING)) +ifeq ($(BR2_PACKAGE_MPD_VERSION_0_20),y) MPD_VERSION = $(MPD_VERSION_MAJOR).4 +else +MPD_VERSION = $(MPD_VERSION_MAJOR).21 +endif MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR) MPD_DEPENDENCIES = host-pkgconf boost @@ -13,6 +17,10 @@ MPD_LICENSE = GPLv2+ MPD_LICENSE_FILES = COPYING MPD_AUTORECONF = YES +ifeq ($(BR2_PACKAGE_MPD_VERSION_0_19),y) +MPD_DEPENDENCIES += libglib2 +endif + # Some options need an explicit --disable or --enable # Zeroconf support depends on libdns_sd from avahi. diff --git a/package/mplayer/Config.in b/package/mplayer/Config.in index 8474b0ec48..a10ad26b29 100644 --- a/package/mplayer/Config.in +++ b/package/mplayer/Config.in @@ -3,7 +3,7 @@ config BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS default y # Those architectures are not supported by MPlayer depends on !(BR2_bfin || BR2_sh2a || BR2_sh4a || BR2_sh4aeb \ - || BR2_m68k || BR2_microblaze || BR2_nios2) + || BR2_m68k || BR2_microblaze || BR2_nios2 || BR2_or1k) # Broken support for ---- - audio/out/ao_sdl.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/audio/out/ao_sdl.c b/audio/out/ao_sdl.c -index d9d0062..0cb80d6 100644 ---- a/audio/out/ao_sdl.c -+++ b/audio/out/ao_sdl.c -@@ -29,6 +29,7 @@ - #include "osdep/timer.h" - - #include -+#include - - struct priv - { --- -2.10.0.297.gf6727b0 - diff --git a/package/mpv/0002-fix-powerpc64-altivec.patch b/package/mpv/0002-fix-powerpc64-altivec.patch new file mode 100644 index 0000000000..45983fec8f --- /dev/null +++ b/package/mpv/0002-fix-powerpc64-altivec.patch @@ -0,0 +1,32 @@ +Subject: [PATCH] Work around bool type redefinition by altivec + +On powerpc64le, the SDL header may include altivec.h and this +(combined with -std=c99) will cause a compile failure due to bool +being redefined as a vector type. + +Adjust the compiler flags to add -std=gnu99 (which is compatible with +altivec) when using gcc. The generic flag '-std=c99' is left in place for other +compilers (in the gcc case it is overridden by the (later) gnu flag). + +Signed-off-by: Sam Bobroff +--- + waftools/detections/compiler.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/waftools/detections/compiler.py b/waftools/detections/compiler.py +index 5bbba87..50836a2 100644 +--- a/waftools/detections/compiler.py ++++ b/waftools/detections/compiler.py +@@ -43,7 +43,8 @@ def __add_gcc_flags__(ctx): + "-Wno-switch", "-Wparentheses", "-Wpointer-arith", + "-Wno-pointer-sign", + # GCC bug 66425 +- "-Wno-unused-result"] ++ "-Wno-unused-result", ++ "-std=gnu99"] + + def __add_clang_flags__(ctx): + ctx.env.CFLAGS += ["-Wno-logical-op-parentheses", "-fcolor-diagnostics", +-- +2.10.0.297.gf6727b0 + diff --git a/package/mpv/Config.in b/package/mpv/Config.in index 2719981467..6e115aedb1 100644 --- a/package/mpv/Config.in +++ b/package/mpv/Config.in @@ -4,6 +4,8 @@ config BR2_PACKAGE_MPV depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8 + # ARC toolchain issue + depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_FFMPEG select BR2_PACKAGE_FFMPEG_SWSCALE @@ -21,3 +23,4 @@ comment "mpv needs a toolchain w/ threads, gcc >= 4.5" depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8 depends on !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC diff --git a/package/musl/Config.in b/package/musl/Config.in index 18ae69d280..2775313af5 100644 --- a/package/musl/Config.in +++ b/package/musl/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_MUSL depends on BR2_TOOLCHAIN_USES_MUSL default y select BR2_PACKAGE_LINUX_HEADERS - select BR2_TOOLCHAIN_HAS_SSP + # SSP broken on i386/ppc: http://www.openwall.com/lists/musl/2016/12/04/2 + select BR2_TOOLCHAIN_HAS_SSP if !(BR2_i386 || BR2_powerpc) # Compatibility headers: cdefs.h, queue.h select BR2_PACKAGE_MUSL_COMPAT_HEADERS diff --git a/package/ncurses/Config.in b/package/ncurses/Config.in index 44713f9e30..92be16435a 100644 --- a/package/ncurses/Config.in +++ b/package/ncurses/Config.in @@ -18,21 +18,6 @@ config BR2_PACKAGE_NCURSES_WCHAR help Enable wide char & UTF-8 support in ncurses libraries -config BR2_PACKAGE_NCURSES_TARGET_PANEL - bool "ncurses libpanel in target" - help - Includes ncurses dynamic libpanel in target - -config BR2_PACKAGE_NCURSES_TARGET_FORM - bool "ncurses libform in target" - help - Includes ncurses dynamic libform in target - -config BR2_PACKAGE_NCURSES_TARGET_MENU - bool "ncurses libmenu in target" - help - Includes ncurses dynamic libmenu in target - config BR2_PACKAGE_NCURSES_TARGET_PROGS bool "ncurses programs" help diff --git a/package/ncurses/ncurses.mk b/package/ncurses/ncurses.mk index 343909fe3f..9d1b75d641 100644 --- a/package/ncurses/ncurses.mk +++ b/package/ncurses/ncurses.mk @@ -8,7 +8,6 @@ NCURSES_VERSION = 5.9 NCURSES_SITE = $(BR2_GNU_MIRROR)/ncurses NCURSES_INSTALL_STAGING = YES NCURSES_DEPENDENCIES = host-ncurses -NCURSES_PROGS = clear infocmp tabs tic toe tput tset NCURSES_LICENSE = MIT with advertising clause NCURSES_LICENSE_FILES = README NCURSES_CONFIG_SCRIPTS = ncurses$(NCURSES_LIB_SUFFIX)$(NCURSES_ABI_VERSION)-config @@ -50,11 +49,6 @@ else NCURSES_CONF_OPTS += --without-gpm endif -NCURSES_LIBS-y = ncurses -NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_MENU) += menu -NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_PANEL) += panel -NCURSES_LIBS-$(BR2_PACKAGE_NCURSES_TARGET_FORM) += form - NCURSES_TERMINFO_FILES = \ a/ansi \ l/linux \ @@ -73,38 +67,36 @@ NCURSES_TERMINFO_FILES = \ ifeq ($(BR2_PACKAGE_NCURSES_WCHAR),y) NCURSES_CONF_OPTS += --enable-widec NCURSES_LIB_SUFFIX = w +NCURSES_LIBS = ncurses menu panel form define NCURSES_LINK_LIBS_STATIC - $(foreach lib,$(NCURSES_LIBS-y:%=lib%), \ - ln -sf $(lib)$(NCURSES_LIB_SUFFIX).a $(1)/usr/lib/$(lib).a + $(foreach lib,$(NCURSES_LIBS:%=lib%), \ + ln -sf $(lib)$(NCURSES_LIB_SUFFIX).a $(STAGING_DIR)/usr/lib/$(lib).a ) ln -sf libncurses$(NCURSES_LIB_SUFFIX).a \ - $(1)/usr/lib/libcurses.a + $(STAGING_DIR)/usr/lib/libcurses.a endef define NCURSES_LINK_LIBS_SHARED - $(foreach lib,$(NCURSES_LIBS-y:%=lib%), \ - ln -sf $(lib)$(NCURSES_LIB_SUFFIX).so $(1)/usr/lib/$(lib).so + $(foreach lib,$(NCURSES_LIBS:%=lib%), \ + ln -sf $(lib)$(NCURSES_LIB_SUFFIX).so $(STAGING_DIR)/usr/lib/$(lib).so ) ln -sf libncurses$(NCURSES_LIB_SUFFIX).so \ - $(1)/usr/lib/libcurses.so + $(STAGING_DIR)/usr/lib/libcurses.so endef define NCURSES_LINK_PC - $(foreach pc,$(NCURSES_LIBS-y), \ + $(foreach pc,$(NCURSES_LIBS), \ ln -sf $(pc)$(NCURSES_LIB_SUFFIX).pc \ - $(1)/usr/lib/pkgconfig/$(pc).pc + $(STAGING_DIR)/usr/lib/pkgconfig/$(pc).pc ) endef -NCURSES_LINK_TARGET_LIBS = \ - $(if $(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),$(call NCURSES_LINK_LIBS_STATIC,$(TARGET_DIR));) \ - $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),$(call NCURSES_LINK_LIBS_SHARED,$(TARGET_DIR))) NCURSES_LINK_STAGING_LIBS = \ - $(if $(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),$(call NCURSES_LINK_LIBS_STATIC,$(STAGING_DIR));) \ - $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),$(call NCURSES_LINK_LIBS_SHARED,$(STAGING_DIR))) + $(if $(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),$(call NCURSES_LINK_LIBS_STATIC);) \ + $(if $(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),$(call NCURSES_LINK_LIBS_SHARED)) -NCURSES_LINK_STAGING_PC = $(call NCURSES_LINK_PC,$(STAGING_DIR)) +NCURSES_LINK_STAGING_PC = $(call NCURSES_LINK_PC) NCURSES_CONF_OPTS += --enable-ext-colors NCURSES_ABI_VERSION = 6 @@ -132,36 +124,21 @@ define NCURSES_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) endef -ifneq ($(BR2_STATIC_LIBS),y) -define NCURSES_INSTALL_TARGET_LIBS - $(foreach lib,$(NCURSES_LIBS-y:%=lib%), \ - cp -dpf $(NCURSES_DIR)/lib/$(lib)$(NCURSES_LIB_SUFFIX).so* \ - $(TARGET_DIR)/usr/lib/ - ) -endef -endif - ifeq ($(BR2_PACKAGE_NCURSES_TARGET_PROGS),y) -define NCURSES_INSTALL_TARGET_PROGS - $(foreach prog,$(NCURSES_PROGS), \ - $(INSTALL) -m 0755 $(NCURSES_DIR)/progs/$(prog) \ - $(TARGET_DIR)/usr/bin/$(prog) - ) +define NCURSES_TARGET_SYMLINK_RESET ln -sf tset $(TARGET_DIR)/usr/bin/reset endef +NCURSES_POST_INSTALL_TARGET_HOOKS += NCURSES_TARGET_SYMLINK_RESET endif -define NCURSES_INSTALL_TARGET_CMDS - mkdir -p $(TARGET_DIR)/usr/lib - $(NCURSES_INSTALL_TARGET_LIBS) - $(NCURSES_LINK_TARGET_LIBS) - $(NCURSES_INSTALL_TARGET_PROGS) - ln -snf /usr/share/terminfo $(TARGET_DIR)/usr/lib/terminfo - $(foreach terminfo,$(NCURSES_TERMINFO_FILES),\ - $(INSTALL) -D -m 0644 $(STAGING_DIR)/usr/share/terminfo/$(terminfo) \ - $(TARGET_DIR)/usr/share/terminfo/$(terminfo) +define NCURSES_TARGET_CLEANUP_TERMINFO + $(RM) -rf $(TARGET_DIR)/usr/share/terminfo $(TARGET_DIR)/usr/share/tabset + $(foreach t,$(NCURSES_TERMINFO_FILES), \ + $(INSTALL) -D -m 0644 $(STAGING_DIR)/usr/share/terminfo/$(t) \ + $(TARGET_DIR)/usr/share/terminfo/$(t) ) -endef # NCURSES_INSTALL_TARGET_CMDS +endef +NCURSES_POST_INSTALL_TARGET_HOOKS += NCURSES_TARGET_CLEANUP_TERMINFO # # On systems with an older version of tic, the installation of ncurses hangs diff --git a/package/nload/Config.in b/package/nload/Config.in index 68ddbe6ca7..c938d8eae8 100644 --- a/package/nload/Config.in +++ b/package/nload/Config.in @@ -5,7 +5,6 @@ config BR2_PACKAGE_NLOAD bool "nload" depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_NCURSES - select BR2_PACKAGE_NCURSES_TARGET_FORM help nload is a console application which monitors network traffic and bandwidth usage in real time. It visualizes the in- and diff --git a/package/ntfs-3g/ntfs-3g.hash b/package/ntfs-3g/ntfs-3g.hash index 4875cc47bc..eaa3d98718 100644 --- a/package/ntfs-3g/ntfs-3g.hash +++ b/package/ntfs-3g/ntfs-3g.hash @@ -1,2 +1,3 @@ # Locally calculated sha256 d7b72c05e4b3493e6095be789a760c9f5f2b141812d5b885f3190c98802f1ea0 ntfs-3g_ntfsprogs-2016.2.22.tgz +sha256 43deadaeade489934b0b45e2ed8aa5f853ad0364fbde7ad144211b80132ea041 0003-CVE-2017-0358.patch diff --git a/package/ntfs-3g/ntfs-3g.mk b/package/ntfs-3g/ntfs-3g.mk index b59e335bcb..6e1a8f9460 100644 --- a/package/ntfs-3g/ntfs-3g.mk +++ b/package/ntfs-3g/ntfs-3g.mk @@ -7,6 +7,7 @@ NTFS_3G_VERSION = 2016.2.22 NTFS_3G_SOURCE = ntfs-3g_ntfsprogs-$(NTFS_3G_VERSION).tgz NTFS_3G_SITE = http://tuxera.com/opensource +NTFS_3G_PATCH = https://sources.debian.net/data/main/n/ntfs-3g/1:2016.2.22AR.1-4/debian/patches/0003-CVE-2017-0358.patch NTFS_3G_CONF_OPTS = --disable-ldconfig NTFS_3G_INSTALL_STAGING = YES NTFS_3G_DEPENDENCIES = host-pkgconf diff --git a/package/ocrad/ocrad.mk b/package/ocrad/ocrad.mk index d19e83ef42..54b607c791 100644 --- a/package/ocrad/ocrad.mk +++ b/package/ocrad/ocrad.mk @@ -10,12 +10,6 @@ OCRAD_SITE = $(BR2_GNU_MIRROR)/ocrad OCRAD_LICENSE = GPLv3+ OCRAD_LICENSE_FILES = COPYING OCRAD_INSTALL_STAGING = YES -OCRAD_DEPENDENCIES = host-lzip - -define OCRAD_EXTRACT_CMDS - $(HOST_DIR)/usr/bin/lzip -d -c $(DL_DIR)/$(OCRAD_SOURCE) | \ - tar --strip-components=1 -C $(@D) $(TAR_OPTIONS) - -endef # This is not a true autotools package. define OCRAD_CONFIGURE_CMDS diff --git a/package/openocd/openocd.mk b/package/openocd/openocd.mk index 21a302ff25..0d1836573d 100644 --- a/package/openocd/openocd.mk +++ b/package/openocd/openocd.mk @@ -99,5 +99,20 @@ HOST_OPENOCD_CONF_OPTS = \ HOST_OPENOCD_DEPENDENCIES = host-libftdi host-libusb host-libusb-compat +# Avoid documentation rebuild. On PowerPC64(le), we patch the +# configure script. Due to this, the version.texi files gets +# regenerated, and then since it has a newer date than openocd.info, +# openocd build system rebuilds the documentation. Unfortunately, this +# documentation rebuild fails on old machines. We work around this by +# faking the date of the generated version.texi file, to make the +# build system believe the documentation doesn't need to be +# regenerated. +define OPENOCD_FIX_VERSION_TEXI + touch -r $(@D)/doc/openocd.info $(@D)/doc/version.texi +endef +OPENOCD_POST_BUILD_HOOKS += OPENOCD_FIX_VERSION_TEXI +HOST_OPENOCD_POST_BUILD_HOOKS += OPENOCD_FIX_VERSION_TEXI + + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/openssh/S50sshd b/package/openssh/S50sshd index c15114257f..22da41d1ca 100644 --- a/package/openssh/S50sshd +++ b/package/openssh/S50sshd @@ -6,12 +6,12 @@ # Make sure the ssh-keygen progam exists [ -f /usr/bin/ssh-keygen ] || exit 0 -# Create any missing keys -/usr/bin/ssh-keygen -A - umask 077 start() { + # Create any missing keys + /usr/bin/ssh-keygen -A + printf "Starting sshd: " /usr/sbin/sshd touch /var/lock/sshd diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk index e86feca5dc..3e18c0a9b5 100644 --- a/package/openssh/openssh.mk +++ b/package/openssh/openssh.mk @@ -6,7 +6,7 @@ OPENSSH_VERSION = 7.4p1 OPENSSH_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable -OPENSSH_LICENSE = BSD-3c BSD-2c Public Domain +OPENSSH_LICENSE = BSD-3c, BSD-2c, Public Domain OPENSSH_LICENSE_FILES = LICENCE OPENSSH_CONF_ENV = LD="$(TARGET_CC)" LDFLAGS="$(TARGET_CFLAGS)" OPENSSH_CONF_OPTS = \ diff --git a/package/openswan/0001-uClibc-ng-is-compatible-to-glibc.patch b/package/openswan/0001-uClibc-ng-is-compatible-to-glibc.patch new file mode 100644 index 0000000000..aa4d0ede24 --- /dev/null +++ b/package/openswan/0001-uClibc-ng-is-compatible-to-glibc.patch @@ -0,0 +1,39 @@ +From 0f7bf4706d2932aaa50904fc529a853c9f86478f Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Mon, 13 Feb 2017 22:18:11 +0100 +Subject: [PATCH] uClibc-ng is compatible to glibc + +Signed-off-by: Waldemar Brodkorb + +Pull-Request: https://github.com/xelerance/Openswan/pull/227 + +--- + linux/include/openswan.h | 12 ------------ + 1 file changed, 12 deletions(-) + +diff --git a/linux/include/openswan.h b/linux/include/openswan.h +index e2c45a130..66b9d42b2 100644 +--- a/linux/include/openswan.h ++++ b/linux/include/openswan.h +@@ -27,18 +27,6 @@ + #endif + + /* +- * When using uclibc, malloc(0) returns NULL instead of success. This is +- * to make it use the inbuilt work-around. +- * See: http://osdir.com/ml/network.freeswan.devel/2003-11/msg00009.html +- */ +-#ifdef __UCLIBC__ +-# if !defined(__MALLOC_GLIBC_COMPAT__) && !defined(MALLOC_GLIBC_COMPAT) +-# warning Please compile uclibc with GLIBC_COMPATIBILITY defined +-# endif +-#endif +- +- +-/* + * We've just got to have some datatypes defined... And annoyingly, just + * where we get them depends on whether we're in userland or not. + */ +-- +2.11.1 + diff --git a/package/oracle-mysql/oracle-mysql.mk b/package/oracle-mysql/oracle-mysql.mk index ed3c0ea983..f0f0649618 100644 --- a/package/oracle-mysql/oracle-mysql.mk +++ b/package/oracle-mysql/oracle-mysql.mk @@ -108,12 +108,12 @@ endef ORACLE_MYSQL_POST_INSTALL_TARGET_HOOKS += ORACLE_MYSQL_ADD_FOLDER define ORACLE_MYSQL_INSTALL_INIT_SYSV - $(INSTALL) -D -m 0755 package/oracle-mysql/S97mysqld \ + $(INSTALL) -D -m 0755 $(ORACLE_MYSQL_PKGDIR)/S97mysqld \ $(TARGET_DIR)/etc/init.d/S97mysqld endef define ORACLE_MYSQL_INSTALL_INIT_SYSTEMD - $(INSTALL) -D -m 644 package/mysql/mysqld.service \ + $(INSTALL) -D -m 644 $(ORACLE_MYSQL_PKGDIR)/mysqld.service \ $(TARGET_DIR)/usr/lib/systemd/system/mysqld.service mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants ln -sf ../../../../usr/lib/systemd/system/mysqld.service \ diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk index 4e0e8382de..a7c8dc3b34 100644 --- a/package/pkg-cmake.mk +++ b/package/pkg-cmake.mk @@ -109,7 +109,7 @@ define $(2)_CONFIGURE_CMDS cd $$($$(PKG)_BUILDDIR) && \ rm -f CMakeCache.txt && \ PATH=$$(BR_PATH) \ - $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \ + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \ -DCMAKE_INSTALL_SO_NO_EXE=0 \ -DCMAKE_FIND_ROOT_PATH="$$(HOST_DIR)" \ -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="BOTH" \ diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 3ca71b03b9..e8a8021e3c 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -926,13 +926,7 @@ else ifeq ($$($(2)_SITE_METHOD),cvs) DL_TOOLS_DEPENDENCIES += cvs endif # SITE_METHOD -# $(firstword) is used here because the extractor can have arguments, like -# ZCAT="gzip -d -c", and to check for the dependency we only want 'gzip'. -# Do not add xzcat to the list of required dependencies, as it gets built -# automatically if it isn't found. -ifneq ($$(call suitable-extractor,$$($(2)_SOURCE)),$$(XZCAT)) -DL_TOOLS_DEPENDENCIES += $$(firstword $$(call suitable-extractor,$$($(2)_SOURCE))) -endif +DL_TOOLS_DEPENDENCIES += $$(call extractor-dependency,$$($(2)_SOURCE)) # Ensure all virtual targets are PHONY. Listed alphabetically. .PHONY: $(1) \ diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk index c5d4080c72..c95e77953b 100644 --- a/package/pkg-utils.mk +++ b/package/pkg-utils.mk @@ -36,6 +36,7 @@ pkgname = $(lastword $(subst /, ,$(pkgdir))) # Define extractors for different archive suffixes INFLATE.bz2 = $(BZCAT) INFLATE.gz = $(ZCAT) +INFLATE.lz = $(LZCAT) INFLATE.lzma = $(XZCAT) INFLATE.tbz = $(BZCAT) INFLATE.tbz2 = $(BZCAT) @@ -45,6 +46,13 @@ INFLATE.tar = cat # suitable-extractor(filename): returns extractor based on suffix suitable-extractor = $(INFLATE$(suffix $(1))) +# extractor-dependency(filename): returns extractor for 'filename' if the +# extractor is a dependency. If we build the extractor return nothing. +# $(firstword) is used here because the extractor can have arguments, like +# ZCAT="gzip -d -c", and to check for the dependency we only want 'gzip'. +extractor-dependency = $(firstword $(INFLATE$(filter-out \ + $(EXTRACTOR_DEPENDENCY_PRECHECKED_EXTENSIONS),$(suffix $(1))))) + # check-deprecated-variable -- throw an error on deprecated variables # example: # $(eval $(call check-deprecated-variable,FOO_MAKE_OPT,FOO_MAKE_OPTS)) diff --git a/package/poco/Config.in b/package/poco/Config.in index dfdc8d17c3..b3b247f906 100644 --- a/package/poco/Config.in +++ b/package/poco/Config.in @@ -5,7 +5,7 @@ config BR2_PACKAGE_POCO depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS # dlopen() depends on !(BR2_arc || BR2_bfin || BR2_microblaze || BR2_mipsel \ - || BR2_xtensa) + || BR2_or1k || BR2_xtensa) select BR2_PACKAGE_ZLIB select BR2_PACKAGE_PCRE help @@ -65,4 +65,4 @@ comment "poco needs a toolchain w/ wchar, threads, C++, dynamic library" depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \ || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS depends on !(BR2_arc || BR2_bfin || BR2_microblaze || BR2_mipsel \ - || BR2_xtensa) + || BR2_or1k || BR2_xtensa) diff --git a/package/postgresql/postgresql.mk b/package/postgresql/postgresql.mk index 786ef4876a..bc2bf47ee7 100644 --- a/package/postgresql/postgresql.mk +++ b/package/postgresql/postgresql.mk @@ -29,7 +29,7 @@ ifneq ($(BR2_TOOLCHAIN_HAS_THREADS),y) POSTGRESQL_CONF_OPTS += --disable-thread-safety endif -ifeq ($(BR2_arcle)$(BR2_arceb)$(BR2_microblazeel)$(BR2_microblazebe)$(BR2_nios2)$(BR2_xtensa),y) +ifeq ($(BR2_arcle)$(BR2_arceb)$(BR2_microblazeel)$(BR2_microblazebe)$(BR2_or1k)$(BR2_nios2)$(BR2_xtensa),y) POSTGRESQL_CONF_OPTS += --disable-spinlocks endif diff --git a/package/procps-ng/procps-ng.mk b/package/procps-ng/procps-ng.mk index 48b4720941..0f8b20c560 100644 --- a/package/procps-ng/procps-ng.mk +++ b/package/procps-ng/procps-ng.mk @@ -7,7 +7,7 @@ PROCPS_NG_VERSION = 3.3.12 PROCPS_NG_SOURCE = procps-ng-$(PROCPS_NG_VERSION).tar.xz PROCPS_NG_SITE = http://downloads.sourceforge.net/project/procps-ng/Production -PROCPS_NG_LICENSE = GPLv2+, libproc and libps LGPLv2+ +PROCPS_NG_LICENSE = GPLv2+, LGPLv2+ (libproc and libps) PROCPS_NG_LICENSE_FILES = COPYING COPYING.LIB PROCPS_NG_INSTALL_STAGING = YES PROCPS_NG_DEPENDENCIES = ncurses host-pkgconf diff --git a/package/python-libconfig/Config.in b/package/python-libconfig/Config.in index 7cc5f8a3cd..a222f9a130 100644 --- a/package/python-libconfig/Config.in +++ b/package/python-libconfig/Config.in @@ -1,5 +1,6 @@ -comment "python-libconfig needs a toolchain w/ C++, threads" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS +comment "python-libconfig needs a glibc or uClibc toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_PYTHON_LIBCONFIG bool "python-libconfig" @@ -8,6 +9,8 @@ config BR2_PACKAGE_PYTHON_LIBCONFIG select BR2_PACKAGE_LIBCONFIG depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS + # error: invalid use of incomplete type 'struct _IO_FILE' + depends on !BR2_TOOLCHAIN_USES_MUSL help Python bindings to the C++ library libconfig diff --git a/package/python/python.mk b/package/python/python.mk index 7b20434c94..281130c68b 100644 --- a/package/python/python.mk +++ b/package/python/python.mk @@ -105,6 +105,9 @@ endif # Default is UCS2 w/o a conf opt ifeq ($(BR2_PACKAGE_PYTHON_UCS4),y) +# host-python must have the same UCS2/4 configuration as the target +# python +HOST_PYTHON_CONF_OPTS += --enable-unicode=ucs4 PYTHON_CONF_OPTS += --enable-unicode=ucs4 endif diff --git a/package/qt-webkit-kiosk/Config.in b/package/qt-webkit-kiosk/Config.in index 32952d7c50..1b0e0dee09 100644 --- a/package/qt-webkit-kiosk/Config.in +++ b/package/qt-webkit-kiosk/Config.in @@ -9,6 +9,7 @@ config BR2_PACKAGE_QT_WEBKIT_KIOSK depends on !BR2_STATIC_LIBS # qt5webkit depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5webkit depends on !BR2_BINFMT_FLAT # qt5webkit + depends on !BR2_MIPS_SOFT_FLOAT # qt5webkit help Simple kiosk-mode browser powered by Qt5Webkit diff --git a/package/qt5/Config.in b/package/qt5/Config.in index b3cb2adfe0..4bcbc6ef54 100644 --- a/package/qt5/Config.in +++ b/package/qt5/Config.in @@ -38,12 +38,17 @@ config BR2_PACKAGE_QT5_VERSION_LATEST bool "Latest (5.8)" depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 depends on BR2_HOST_GCC_AT_LEAST_4_8 # C++11 + depends on !BR2_ARM_CPU_ARMV4 # needs ARMv5+ + # no built-in double-conversion support + depends on !BR2_arc && !BR2_nios2 && !BR2_xtensa help This option builds Qt 5.8, which is licensed under (L)GPLv3+. comment "Latest Qt version needs host/toolchain w/ gcc >= 4.8" depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_HOST_GCC_AT_LEAST_4_8 + depends on !BR2_ARM_CPU_ARMV4 + depends on !BR2_arc && !BR2_nios2 && !BR2_xtensa config BR2_PACKAGE_QT5_VERSION_5_6 bool "LTS (5.6)" diff --git a/package/qt5/qt5base/5.8.0/0002-fix-VNC-platform-plugin-build-on-big-endian-machines.patch b/package/qt5/qt5base/5.8.0/0002-fix-VNC-platform-plugin-build-on-big-endian-machines.patch new file mode 100644 index 0000000000..e7d7ee3600 --- /dev/null +++ b/package/qt5/qt5base/5.8.0/0002-fix-VNC-platform-plugin-build-on-big-endian-machines.patch @@ -0,0 +1,97 @@ +From 35ee8b53549fab6ebffe289417e1d94298447af7 Mon Sep 17 00:00:00 2001 +From: Shawn Rutledge +Date: Fri, 10 Feb 2017 13:56:58 +0100 +Subject: [PATCH] fix VNC platform plugin build on big-endian machines + +Task-number: QTBUG-58734 +Change-Id: I3e44ee4be5003acaba2f1b8ed2658a3ff1bd700e +Reviewed-by: Lars Knoll +Reviewed-by: Dmitry Shachnev + +Upstream: http://code.qt.io/cgit/qt/qtbase.git/patch/?id=6f64bfa654fb7e20bb75ec3b0544b81482babb44 +Signed-off-by: Peter Seiderer +--- + src/plugins/platforms/vnc/qvncclient.cpp | 6 +++--- + src/plugins/platforms/vnc/qvncscreen.cpp | 7 ++++++- + src/plugins/platforms/vnc/qvncscreen.h | 2 +- + 3 files changed, 10 insertions(+), 5 deletions(-) + +diff --git a/src/plugins/platforms/vnc/qvncclient.cpp b/src/plugins/platforms/vnc/qvncclient.cpp +index dae3e83f..58dcfc9b 100644 +--- a/src/plugins/platforms/vnc/qvncclient.cpp ++++ b/src/plugins/platforms/vnc/qvncclient.cpp +@@ -142,7 +142,7 @@ void QVncClient::convertPixels(char *dst, const char *src, int count) const + case 16: { + quint16 p = *reinterpret_cast(src); + #if Q_BYTE_ORDER == Q_BIG_ENDIAN +- if (swapBytes) ++ if (m_swapBytes) + p = ((p & 0xff) << 8) | ((p & 0xff00) >> 8); + #endif + r = (p >> 11) & 0x1f; +@@ -484,7 +484,7 @@ void QVncClient::setPixelFormat() + m_sameEndian = (QSysInfo::ByteOrder == QSysInfo::BigEndian) == !!m_pixelFormat.bigEndian; + m_needConversion = pixelConversionNeeded(); + #if Q_BYTE_ORDER == Q_BIG_ENDIAN +- m_swapBytes = qvnc_screen->swapBytes(); ++ m_swapBytes = server()->screen()->swapBytes(); + #endif + } + } +@@ -639,7 +639,7 @@ bool QVncClient::pixelConversionNeeded() const + return true; + + #if Q_BYTE_ORDER == Q_BIG_ENDIAN +- if (qvnc_screen->swapBytes()) ++ if (server()->screen()->swapBytes()) + return true; + #endif + +diff --git a/src/plugins/platforms/vnc/qvncscreen.cpp b/src/plugins/platforms/vnc/qvncscreen.cpp +index 34def457..64f1bc0b 100644 +--- a/src/plugins/platforms/vnc/qvncscreen.cpp ++++ b/src/plugins/platforms/vnc/qvncscreen.cpp +@@ -43,6 +43,7 @@ + #include + + #include ++#include + #include + + +@@ -172,14 +173,18 @@ QPixmap QVncScreen::grabWindow(WId wid, int x, int y, int width, int height) con + } + + #if Q_BYTE_ORDER == Q_BIG_ENDIAN +-bool QVNCScreen::swapBytes() const ++bool QVncScreen::swapBytes() const + { ++ return false; ++ ++ /* TODO + if (depth() != 16) + return false; + + if (screen()) + return screen()->frameBufferLittleEndian(); + return frameBufferLittleEndian(); ++ */ + } + #endif + +diff --git a/src/plugins/platforms/vnc/qvncscreen.h b/src/plugins/platforms/vnc/qvncscreen.h +index 785abd6d..0b42c3c7 100644 +--- a/src/plugins/platforms/vnc/qvncscreen.h ++++ b/src/plugins/platforms/vnc/qvncscreen.h +@@ -73,7 +73,7 @@ public: + void clearDirty() { dirtyRegion = QRegion(); } + + #if Q_BYTE_ORDER == Q_BIG_ENDIAN +- bool swapBytes() const ++ bool swapBytes() const; + #endif + + QStringList mArgs; +-- +2.11.0 + diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in index f22e034b30..337dcf2454 100644 --- a/package/qt5/qt5base/Config.in +++ b/package/qt5/qt5base/Config.in @@ -128,6 +128,7 @@ config BR2_PACKAGE_QT5BASE_XML config BR2_PACKAGE_QT5BASE_GUI bool "gui module" + select BR2_PACKAGE_FREETYPE # At least one graphic backend must be enabled, so enable # linuxfb if nothing is enabled. select BR2_PACKAGE_QT5BASE_LINUXFB if \ diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index 09bf5cf7bd..7a335736db 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -97,10 +97,16 @@ QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM),sqlite) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_SQLITE_NONE),-no-sql-sqlite) endif +ifeq ($(BR2_PACKAGE_QT5BASE_GUI),y) +QT5BASE_CONFIGURE_OPTS += -gui -system-freetype +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5_VERSION_5_6),-I$(STAGING_DIR)/usr/include/freetype2) +QT5BASE_DEPENDENCIES += freetype +else +QT5BASE_CONFIGURE_OPTS += -no-gui -no-freetype +endif +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets) # We have to use --enable-linuxfb, otherwise Qt thinks that -linuxfb # is to add a link against the "inuxfb" library. -QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-gui,-no-gui) -QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_LINUXFB),--enable-linuxfb,-no-linuxfb) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),-directfb,-no-directfb) QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),directfb) diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk index c2946bc753..43254ba06b 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk @@ -30,11 +30,25 @@ define QT5QUICKCONTROLS_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install endef + +ifeq ($(BR2_PACKAGE_QT5DECLARATIVE_QUICK)$(BR2_PACKAGE_QT5BASE_WIDGETS),yy) +define QT5QUICKCONTROLS_INSTALL_TARGET_PRIVATEWIDGETS + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/PrivateWidgets $(TARGET_DIR)/usr/qml/QtQuick +endef +endif + +ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y) +define QT5QUICKCONTROLS_INSTALL_TARGET_LAYOUTS + cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Layouts $(TARGET_DIR)/usr/qml/QtQuick +endef +endif + define QT5QUICKCONTROLS_INSTALL_TARGET_CMDS cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Controls $(TARGET_DIR)/usr/qml/QtQuick cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Dialogs $(TARGET_DIR)/usr/qml/QtQuick cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/Extras $(TARGET_DIR)/usr/qml/QtQuick - cp -dpfr $(STAGING_DIR)/usr/qml/QtQuick/PrivateWidgets $(TARGET_DIR)/usr/qml/QtQuick + $(QT5QUICKCONTROLS_INSTALL_TARGET_PRIVATEWIDGETS) + $(QT5QUICKCONTROLS_INSTALL_TARGET_LAYOUTS) endef $(eval $(generic-package)) diff --git a/package/qt5/qt5webkit/Config.in b/package/qt5/qt5webkit/Config.in index e9c11fbe6f..2534360459 100644 --- a/package/qt5/qt5webkit/Config.in +++ b/package/qt5/qt5webkit/Config.in @@ -9,6 +9,8 @@ config BR2_PACKAGE_QT5WEBKIT depends on !BR2_STATIC_LIBS depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on !BR2_BINFMT_FLAT # icu + # assumes a FPU is available on MIPS + depends on !BR2_MIPS_SOFT_FLOAT help Qt is a cross-platform application and UI framework for developers using C++. @@ -28,3 +30,4 @@ comment "qt5webkit needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on !BR2_BINFMT_FLAT + depends on !BR2_MIPS_SOFT_FLOAT diff --git a/package/redis/redis.hash b/package/redis/redis.hash index d4ac7c3557..3cd86470bd 100644 --- a/package/redis/redis.hash +++ b/package/redis/redis.hash @@ -1,4 +1,4 @@ # From https://github.com/antirez/redis-hashes/blob/master/README -sha1 6889af053020cd72ebb16805ead0ce9b3a69a9ef redis-3.2.7.tar.gz +sha1 6780d1abb66f33a97aad0edbe020403d0a15b67f redis-3.2.8.tar.gz # Calculated based on the hash above -sha256 bf9df3e5374bfe7bfc3386380f9df13d94990011504ef07632b3609bb2836fa9 redis-3.2.7.tar.gz +sha256 61b373c23d18e6cc752a69d5ab7f676c6216dc2853e46750a8c4ed791d68482c redis-3.2.8.tar.gz diff --git a/package/redis/redis.mk b/package/redis/redis.mk index 63964b5f98..8ab6e726e3 100644 --- a/package/redis/redis.mk +++ b/package/redis/redis.mk @@ -4,7 +4,7 @@ # ################################################################################ -REDIS_VERSION = 3.2.7 +REDIS_VERSION = 3.2.8 REDIS_SITE = http://download.redis.io/releases REDIS_LICENSE = BSD-3c (core); MIT and BSD family licenses (Bundled components) REDIS_LICENSE_FILES = COPYING diff --git a/package/riemann-c-client/riemann-c-client.mk b/package/riemann-c-client/riemann-c-client.mk index 5593519987..c8a411c32b 100644 --- a/package/riemann-c-client/riemann-c-client.mk +++ b/package/riemann-c-client/riemann-c-client.mk @@ -10,6 +10,7 @@ RIEMANN_C_CLIENT_SITE = https://github.com/algernon/riemann-c-client/releases/do RIEMANN_C_CLIENT_LICENSE = LGPLv3+ RIEMANN_C_CLIENT_LICENSE_FILES = LICENSE RIEMANN_C_CLIENT_INSTALL_STAGING = YES +RIEMANN_C_CLIENT_MAKE = $(MAKE1) RIEMANN_C_CLIENT_DEPENDENCIES = \ host-pkgconf protobuf-c \ $(if $(BR2_PACKAGE_GNUTLS),gnutls) \ diff --git a/package/samba4/Config.in b/package/samba4/Config.in index ce97bea84f..447418568d 100644 --- a/package/samba4/Config.in +++ b/package/samba4/Config.in @@ -1,7 +1,7 @@ -comment "samba4 needs a toolchain w/ RPC, wchar, dynamic library, threads" +comment "samba4 needs a toolchain w/ RPC, wchar, dynamic library, NPTL" depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ - || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_USE_MMU config BR2_PACKAGE_SAMBA4 @@ -9,7 +9,7 @@ config BR2_PACKAGE_SAMBA4 depends on BR2_USE_MMU # fork() depends on BR2_USE_WCHAR # python depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC - depends on BR2_TOOLCHAIN_HAS_THREADS # python -> libffi + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # python -> libffi depends on !BR2_STATIC_LIBS # python depends on !BR2_nios2 # binary too large, relocations don't fit depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk index 4020caafe6..f64b684bf8 100644 --- a/package/samba4/samba4.mk +++ b/package/samba4/samba4.mk @@ -59,7 +59,7 @@ else SAMBA4_CONF_OPTS += --disable-gnutls endif -ifeq ($(BR2_PACKAGE_NCURSES_TARGET_FORM)$(BR2_PACKAGE_NCURSES_TARGET_MENU)$(BR2_PACKAGE_NCURSES_TARGET_PANEL),yyy) +ifeq ($(BR2_PACKAGE_NCURSES),y) SAMBA4_CONF_ENV += NCURSES_CONFIG="$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS)" SAMBA4_DEPENDENCIES += ncurses else diff --git a/package/slirp/slirp.mk b/package/slirp/slirp.mk index 7a5f51539d..be3e72d951 100644 --- a/package/slirp/slirp.mk +++ b/package/slirp/slirp.mk @@ -9,7 +9,7 @@ # of today) SLIRP_VERSION = 8c2da74c1385242f20799fec8c04f8378edc6550 SLIRP_SITE = git://anongit.freedesktop.org/spice/slirp -SLIRP_LICENSE = BSD-4c BSD-2c +SLIRP_LICENSE = BSD-4c, BSD-2c # Note: The license file 'COPYRIGHT' is missing from the sources, # although some files refer to it. SLIRP_INSTALL_STAGING = YES diff --git a/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch b/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch index 5cb8ce2541..d23bc9fae6 100644 --- a/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch +++ b/package/sslh/0001-secure-version-while-building-sslh-in-a-larger-git-t.patch @@ -12,6 +12,8 @@ subtree only, this patch adds a check : a .git directory has to exist at the root of the project to enable git-extracted version string. Signed-off-by: David Bachelart +[yann.morin.1998@free.fr: fix troll character U+c2a0] +Signed-off-by: "Yann E. MORIN" --- genver.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) @@ -34,7 +36,7 @@ index 79fd0a0..051e57b 100755 fi -if head=`git rev-parse --verify HEAD 2>/dev/null`; then -+if [ -d .git ] && head=`git rev-parse --verify HEAD 2>/dev/null`; then ++if [ -d .git ] && head=`git rev-parse --verify HEAD 2>/dev/null`; then # generate the version info based on the tag release=`(git describe --tags || git --describe || git describe --all --long) \ 2>/dev/null | tr -d '\n'` diff --git a/package/sslh/sslh.mk b/package/sslh/sslh.mk index 31774441ca..17aafd16c2 100644 --- a/package/sslh/sslh.mk +++ b/package/sslh/sslh.mk @@ -12,7 +12,7 @@ SSLH_LICENSE_FILES = COPYING SSLH_DEPENDENCIES = libconfig define SSLH_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define SSLH_INSTALL_TARGET_CMDS diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk index b1a6dd35fc..bb0a2b5e69 100644 --- a/package/sudo/sudo.mk +++ b/package/sudo/sudo.mk @@ -6,7 +6,7 @@ SUDO_VERSION = 1.8.19p2 SUDO_SITE = http://www.sudo.ws/sudo/dist -SUDO_LICENSE = ISC BSD-3c +SUDO_LICENSE = ISC, BSD-3c SUDO_LICENSE_FILES = doc/LICENSE # This is to avoid sudo's make install from chown()ing files which fails SUDO_INSTALL_TARGET_OPTS = INSTALL_OWNER="" DESTDIR="$(TARGET_DIR)" install diff --git a/package/sunxi-mali/Config.in b/package/sunxi-mali/Config.in index 5e3ae4cd01..c6754c2821 100644 --- a/package/sunxi-mali/Config.in +++ b/package/sunxi-mali/Config.in @@ -1,10 +1,10 @@ config BR2_PACKAGE_SUNXI_MALI bool "sunxi-mali" + depends on BR2_arm + depends on BR2_TOOLCHAIN_USES_GLIBC select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_LIBUMP - depends on BR2_TOOLCHAIN_USES_GLIBC - depends on BR2_arm help Install the ARM Mali drivers for sunxi based systems (i.e systems based on ARM Allwinner SoCs). This driver requires diff --git a/package/synergy/0003-Fix-build-with-gcc-6.patch b/package/synergy/0003-Fix-build-with-gcc-6.patch new file mode 100644 index 0000000000..843078fe63 --- /dev/null +++ b/package/synergy/0003-Fix-build-with-gcc-6.patch @@ -0,0 +1,86 @@ +From b79d478c21ed6af20554ead97da72de845dc3206 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sat, 25 Feb 2017 21:57:19 +0100 +Subject: [PATCH] Fix build with gcc 6 + +Gcc 6.x defaults to C++14, and the iostream operator bool behaviour changed +in C++11. In previous versions, a somewhat odd operator void* was used to +return the status of the stream as a pointer. Since C++11 a more sensible +operator bool is used to return the stream staus. + +For details, see: + +http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool + +The code in CConfigReadContext assumes the pre-C++11 behaviour and provides +its own operator void overload to return the status of the embedded +iostream. With C++11, iostream no longer provides this overload, breaking +the build: + +CConfig.cpp: In member function 'CConfigReadContext::operator void*() const': +CConfig.cpp:1851:9: error: cannot convert 'std::istream {aka std::basic_istream}' to 'void*' in return + return m_stream; + +To fix it, backport part of upstream commit 3d963bfbe7897d0a33ad (possible +fix for mavericks) which changes the code to simply provide a getStream() +method which returns a reference to the embedded stream and the calling code +is changed to use operator bool on the returned stream, making the code +compatible with both old and new compilers. + +This upstream commit is part of the 1.6.0 release, so can be dropped when +the version is bumped. + +Signed-off-by: Peter Korsgaard +--- + lib/server/CConfig.cpp | 7 +------ + lib/server/CConfig.h | 2 +- + 2 files changed, 2 insertions(+), 7 deletions(-) + +diff --git a/lib/server/CConfig.cpp b/lib/server/CConfig.cpp +index a502fe78..d67dde20 100644 +--- a/lib/server/CConfig.cpp ++++ b/lib/server/CConfig.cpp +@@ -607,7 +607,7 @@ void + CConfig::read(CConfigReadContext& context) + { + CConfig tmp; +- while (context) { ++ while (context.getStream()) { + tmp.readSection(context); + } + *this = tmp; +@@ -1846,11 +1846,6 @@ CConfigReadContext::getLineNumber() const + return m_line; + } + +-CConfigReadContext::operator void*() const +-{ +- return m_stream; +-} +- + bool + CConfigReadContext::operator!() const + { +diff --git a/lib/server/CConfig.h b/lib/server/CConfig.h +index c0d2faa8..0ee453cb 100644 +--- a/lib/server/CConfig.h ++++ b/lib/server/CConfig.h +@@ -480,7 +480,6 @@ public: + bool readLine(CString&); + UInt32 getLineNumber() const; + +- operator void*() const; + bool operator!() const; + + OptionValue parseBoolean(const CString&) const; +@@ -502,6 +501,7 @@ public: + IPlatformScreen::CButtonInfo* + parseMouse(const CString& mouse) const; + KeyModifierMask parseModifier(const CString& modifiers) const; ++ std::istream& getStream() const { return m_stream; }; + + private: + // not implemented +-- +2.11.0 + diff --git a/package/tcping/Config.in b/package/tcping/Config.in index 6677b58b7c..e72df096c3 100644 --- a/package/tcping/Config.in +++ b/package/tcping/Config.in @@ -11,4 +11,4 @@ config BR2_PACKAGE_TCPING desired port is reachable and then start connection establishment. - http://www.linuxco.de/tcping/tcping.html + http://linuxco.de/tcping/tcping.html diff --git a/package/tcping/tcping.mk b/package/tcping/tcping.mk index 4633b98265..f5919bb8bc 100644 --- a/package/tcping/tcping.mk +++ b/package/tcping/tcping.mk @@ -5,7 +5,7 @@ ################################################################################ TCPING_VERSION = 1.3.5 -TCPING_SITE = http://www.linuxco.de/tcping +TCPING_SITE = http://linuxco.de/tcping TCPING_LICENSE = GPLv3+ TCPING_LICENSE_FILES = LICENSE diff --git a/package/tpm-tools/Config.in b/package/tpm-tools/Config.in index dd59aaaf49..83b65f3ae4 100644 --- a/package/tpm-tools/Config.in +++ b/package/tpm-tools/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_TPM_TOOLS select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE depends on BR2_TOOLCHAIN_HAS_THREADS # trousers depends on !BR2_STATIC_LIBS # trousers + depends on !BR2_arc # trousers help Tools to manage and diagnose a TPM @@ -12,3 +13,4 @@ config BR2_PACKAGE_TPM_TOOLS comment "tpm-tools needs a toolchain w/ threads, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_arc diff --git a/package/trousers/Config.in b/package/trousers/Config.in index 6ab74bf9a5..de3b951958 100644 --- a/package/trousers/Config.in +++ b/package/trousers/Config.in @@ -5,6 +5,8 @@ config BR2_PACKAGE_TROUSERS depends on BR2_TOOLCHAIN_HAS_THREADS # doesn't build properly in static only configurations depends on !BR2_STATIC_LIBS + # ARC toolchain issue + depends on !BR2_arc help The open-source TCG Software Stack (TSS). @@ -16,3 +18,4 @@ config BR2_PACKAGE_TROUSERS comment "trousers needs a toolchain w/ threads, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_arc diff --git a/package/uclibc-ng-test/uclibc-ng-test.mk b/package/uclibc-ng-test/uclibc-ng-test.mk index 9a0240c431..610ca010fb 100644 --- a/package/uclibc-ng-test/uclibc-ng-test.mk +++ b/package/uclibc-ng-test/uclibc-ng-test.mk @@ -39,6 +39,7 @@ define UCLIBC_NG_TEST_BUILD_CMDS $(TARGET_MAKE_ENV) $(UCLIBC_NG_TEST_MAKE_ENV) $(MAKE) -C $(@D) \ CC="$(TARGET_CC)" \ UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ test_compile $(TARGET_MAKE_ENV) $(UCLIBC_NG_TEST_MAKE_ENV) $(MAKE1) -C $(@D) \ CC="$(TARGET_CC)" \ diff --git a/package/uclibc/0002-arm-fix-static-linking-issues.patch b/package/uclibc/0002-arm-fix-static-linking-issues.patch new file mode 100644 index 0000000000..5480b0dca7 --- /dev/null +++ b/package/uclibc/0002-arm-fix-static-linking-issues.patch @@ -0,0 +1,38 @@ +From 94810a91c48ac62daed55b4aec70d04a44c10795 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Thu, 16 Feb 2017 20:22:21 +0100 +Subject: [PATCH] arm: fix static linking issues + +As reported by Buildroot developers these files causing static +linking issues. The original contribution with the ARM unwind-resume +rework and GNU libc sync was made before the combined libc change. +But the patch was applied later, after the libc change and +it seems the test coverage for static linking didn't catch it in +the regression testing. Remove the files. + +Signed-off-by: Waldemar Brodkorb +--- + libpthread/nptl/sysdeps/arm/pt-arm-unwind-resume.c | 2 -- + libpthread/nptl/sysdeps/arm/rt-arm-unwind-resume.c | 1 - + 2 files changed, 3 deletions(-) + delete mode 100644 libpthread/nptl/sysdeps/arm/pt-arm-unwind-resume.c + delete mode 100644 libpthread/nptl/sysdeps/arm/rt-arm-unwind-resume.c + +diff --git a/libpthread/nptl/sysdeps/arm/pt-arm-unwind-resume.c b/libpthread/nptl/sysdeps/arm/pt-arm-unwind-resume.c +deleted file mode 100644 +index fd0cec4..0000000 +--- a/libpthread/nptl/sysdeps/arm/pt-arm-unwind-resume.c ++++ /dev/null +@@ -1,2 +0,0 @@ +-__asm__ (".set __libgcc_s_init, pthread_cancel_init"); +-#include +diff --git a/libpthread/nptl/sysdeps/arm/rt-arm-unwind-resume.c b/libpthread/nptl/sysdeps/arm/rt-arm-unwind-resume.c +deleted file mode 100644 +index 2641dc5..0000000 +--- a/libpthread/nptl/sysdeps/arm/rt-arm-unwind-resume.c ++++ /dev/null +@@ -1 +0,0 @@ +-#include +-- +2.1.4 + diff --git a/package/uclibc/0003-or1k-add-missing-definition-of-ucontext.patch b/package/uclibc/0003-or1k-add-missing-definition-of-ucontext.patch new file mode 100644 index 0000000000..7c6022818d --- /dev/null +++ b/package/uclibc/0003-or1k-add-missing-definition-of-ucontext.patch @@ -0,0 +1,33 @@ +From 228d03bf0032e5799e9bf04810170c0653ca846d Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Fri, 17 Feb 2017 22:33:49 +0100 +Subject: [PATCH] or1k: add missing definition of ucontext + +Signed-off-by: Waldemar Brodkorb +--- + libc/sysdeps/linux/or1k/sys/ucontext.h | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/libc/sysdeps/linux/or1k/sys/ucontext.h b/libc/sysdeps/linux/or1k/sys/ucontext.h +index b11928e..dd97b60 100644 +--- a/libc/sysdeps/linux/or1k/sys/ucontext.h ++++ b/libc/sysdeps/linux/or1k/sys/ucontext.h +@@ -20,6 +20,14 @@ + + #include + #include +-#include ++#include ++ ++typedef struct ucontext { ++ unsigned long uc_flags; ++ struct ucontext *uc_link; ++ stack_t uc_stack; ++ struct sigcontext uc_mcontext; ++ sigset_t uc_sigmask; /* mask last for extensibility */ ++} ucontext_t; + + #endif /* sys/ucontext.h */ +-- +2.1.4 + diff --git a/package/util-linux/0002-build-sys-improve-detection-of-the-isnan-function-in.patch b/package/util-linux/0002-build-sys-improve-detection-of-the-isnan-function-in.patch deleted file mode 100644 index 5395104df7..0000000000 --- a/package/util-linux/0002-build-sys-improve-detection-of-the-isnan-function-in.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 064a0445f33a67e5498d492dabe0dfc687859756 Mon Sep 17 00:00:00 2001 -From: Carlos Santos -Date: Wed, 8 Feb 2017 09:29:30 -0200 -Subject: [PATCH] build-sys: improve detection of the "isnan" function in - uClibc - -Since commit beceb14b450ded6560ed743634a5e80604a8edf3, MATH_LIBS is set -to "-lm" when the isnan function is detected. In uClibc, however, isnan -is a macro that calls __isnan, __isnanf, or __isnanl, depending on the -size of the argument (double, float or long double). - -Fixes: - http://autobuild.buildroot.net/results/2c2/2c29a78ed81ca844a87dcd076ab3e14ea080296d/ - http://autobuild.buildroot.net/results/404/404b10f359b2ae8a7216729fa1bab37fed2d3d4c/ - -Signed-off-by: Carlos Santos ---- - configure.ac | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index cc0563b..d03469c 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -428,7 +428,8 @@ AC_CHECK_FUNCS([reboot], [have_reboot=yes],[have_reboot=no]) - AM_CONDITIONAL([HAVE_OPENAT], [test "x$have_openat" = xyes]) - - AC_CHECK_FUNCS([isnan], [], -- [AC_CHECK_LIB([m], [isnan], [MATH_LIBS="-lm"])] -+ [AC_CHECK_LIB([m], [isnan], [MATH_LIBS="-lm"])] -+ [AC_CHECK_LIB([m], [__isnan], [MATH_LIBS="-lm"])] - ) - AC_SUBST([MATH_LIBS]) - --- -2.7.4 - diff --git a/package/util-linux/util-linux.hash b/package/util-linux/util-linux.hash index ec6cc8eadd..71b4982f01 100644 --- a/package/util-linux/util-linux.hash +++ b/package/util-linux/util-linux.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/util-linux/v2.29/sha256sums.asc -sha256 0ce40600b934ec2fecfa6bfc4efe6982d051ba96c2832b05201347aec582f54f util-linux-2.29.1.tar.xz +sha256 accea4d678209f97f634f40a93b7e9fcad5915d1f4749f6c47bee6bf110fe8e3 util-linux-2.29.2.tar.xz diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk index 441c2527b9..05e1398937 100644 --- a/package/util-linux/util-linux.mk +++ b/package/util-linux/util-linux.mk @@ -5,11 +5,11 @@ ################################################################################ UTIL_LINUX_VERSION_MAJOR = 2.29 -UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).1 +UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).2 UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR) -# For 0001-build-sys-use-lm-for-scriptreplay-if-necessary.patch and -# 0002-build-sys-improve-detection-of-the-isnan-function-in.patch + +# 0001-build-sys-use-lm-for-scriptreplay-if-necessary.patch UTIL_LINUX_AUTORECONF = YES # README.licensing claims that some files are GPLv2-only, but this is not true. diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk index 652432ff37..ccc6cc3905 100644 --- a/package/valgrind/valgrind.mk +++ b/package/valgrind/valgrind.mk @@ -7,7 +7,7 @@ VALGRIND_VERSION = 3.12.0 VALGRIND_SITE = http://valgrind.org/downloads VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2 -VALGRIND_LICENSE = GPLv2 GFDLv1.2 +VALGRIND_LICENSE = GPLv2, GFDLv1.2 VALGRIND_LICENSE_FILES = COPYING COPYING.DOCS VALGRIND_CONF_OPTS = \ --disable-ubsan \ diff --git a/package/vim/vim.hash b/package/vim/vim.hash index bc4a08e9cf..28c6b97e31 100644 --- a/package/vim/vim.hash +++ b/package/vim/vim.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 9b4790dafc886537096a6e1953ee0424b8c308881b97151a7bfba1f9fd14e3f9 vim-v8.0.0001.tar.gz +sha256 6fbe0ec1228f951ba598b48ac8033f41ca4934cc34689a6008685e7c26477ae2 vim-v8.0.0329.tar.gz diff --git a/package/vim/vim.mk b/package/vim/vim.mk index 308855eaee..ec494608e7 100644 --- a/package/vim/vim.mk +++ b/package/vim/vim.mk @@ -4,7 +4,7 @@ # ################################################################################ -VIM_VERSION = v8.0.0001 +VIM_VERSION = v8.0.0329 VIM_SITE = $(call github,vim,vim,$(VIM_VERSION)) # Win over busybox vi since vim is more feature-rich VIM_DEPENDENCIES = \ diff --git a/package/vlc/Config.in b/package/vlc/Config.in index 166e7d256a..78023fb500 100644 --- a/package/vlc/Config.in +++ b/package/vlc/Config.in @@ -11,6 +11,8 @@ config BR2_PACKAGE_VLC depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + # ARC toolchain issue + depends on !BR2_arc select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS select BR2_PACKAGE_VLC_OPENCV_BACKEND if BR2_PACKAGE_OPENCV select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3 @@ -34,5 +36,6 @@ config BR2_PACKAGE_VLC_OPENCV3_BACKEND comment "vlc needs a toolchain w/ C++, dynamic library, wchar, threads, headers >= 3.7" depends on BR2_USE_MMU + depends on !BR2_arc depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk index cf0b557bb1..583edf3659 100644 --- a/package/vlc/vlc.mk +++ b/package/vlc/vlc.mk @@ -7,7 +7,7 @@ VLC_VERSION = 2.2.4 VLC_SITE = http://get.videolan.org/vlc/$(VLC_VERSION) VLC_SOURCE = vlc-$(VLC_VERSION).tar.xz -VLC_LICENSE = GPLv2+ LGPLv2.1+ +VLC_LICENSE = GPLv2+, LGPLv2.1+ VLC_LICENSE_FILES = COPYING COPYING.LIB VLC_DEPENDENCIES = host-pkgconf VLC_AUTORECONF = YES @@ -15,6 +15,13 @@ VLC_AUTORECONF = YES # Install vlc libraries in staging. VLC_INSTALL_STAGING = YES +# gcc bug internal compiler error: in merge_overlapping_regs, at +# regrename.c:304. This bug is fixed since gcc 6. +ifeq ($(BR2_microblaze):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:) +VLC_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O0" +VLC_CONF_OPTS += --disable-optimizations +endif + # VLC defines two autoconf functions which are also defined by our own pkg.m4 # from pkgconf. Unfortunately, they are defined in a different way: VLC adds # --enable- options, but pkg.m4 adds --with- options. To make sure we use diff --git a/package/wavpack/Config.in b/package/wavpack/Config.in index 1ef3e420da..db7b893413 100644 --- a/package/wavpack/Config.in +++ b/package/wavpack/Config.in @@ -2,7 +2,8 @@ config BR2_PACKAGE_WAVPACK bool "wavpack" select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE help - WavPack is a completely open audio compression format providing - lossless, high-quality lossy, and a unique hybrid compression mode. + WavPack is a completely open audio compression format + providing lossless, high-quality lossy, and a unique + hybrid compression mode. http://www.wavpack.com/ diff --git a/package/wavpack/wavpack.hash b/package/wavpack/wavpack.hash index 56ba7d839c..16ff08cc6c 100644 --- a/package/wavpack/wavpack.hash +++ b/package/wavpack/wavpack.hash @@ -1,2 +1,3 @@ # locally computed hash sha256 1939627d5358d1da62bc6158d63f7ed12905552f3a799c799ee90296a7612944 wavpack-5.1.0.tar.bz2 +sha256 3890ab081dc6f8ee02161ace180381327031cc24cc6c3d71668367b7e5f6e4be 876fc3f3907e871d0938ac6c8c5252f5f31abd1f.patch diff --git a/package/wavpack/wavpack.mk b/package/wavpack/wavpack.mk index daa0888dfb..a613506234 100644 --- a/package/wavpack/wavpack.mk +++ b/package/wavpack/wavpack.mk @@ -12,6 +12,9 @@ WAVPACK_DEPENDENCIES = $(if $(BR2_ENABLE_LOCALE),,libiconv) WAVPACK_LICENSE = BSD-3c WAVPACK_LICENSE_FILES = COPYING +# Fetch patch from upstream to remove wchar dependency +WAVPACK_PATCH = https://github.com/dbry/WavPack/commit/876fc3f3907e871d0938ac6c8c5252f5f31abd1f.patch + ifeq ($(BR2_PACKAGE_LIBICONV),y) WAVPACK_CONF_OPTS += LIBS=-liconv endif diff --git a/package/wget/0001-utils-rename-base64_-encode-decode.patch b/package/wget/0001-utils-rename-base64_-encode-decode.patch deleted file mode 100644 index f219afa4e2..0000000000 --- a/package/wget/0001-utils-rename-base64_-encode-decode.patch +++ /dev/null @@ -1,134 +0,0 @@ -From 9e68787576fec304da23af26dca963a4cdea7765 Mon Sep 17 00:00:00 2001 -From: Rahul Bedarkar -Date: Tue, 8 Nov 2016 23:42:53 +0530 -Subject: [PATCH] utils: rename base64_{encode,decode} - -When statically linking with gnutls, we get definition clash error for -base64_encode which is also defined by gnutls. - -/home/rahul.bedarkar/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgnutls.a(base64.o): In function `base64_encode': -base64.c:(.text+0x148): multiple definition of `base64_encode' -utils.o:utils.c:(.text+0x4378): first defined here -collect2: error: ld returned 1 exit status - -To prevent definition clash, rename base64_{encode,decode} - -Signed-off-by: Rahul Bedarkar ---- - src/http-ntlm.c | 6 +++--- - src/http.c | 4 ++-- - src/utils.c | 8 ++++---- - src/utils.h | 4 ++-- - 4 files changed, 11 insertions(+), 11 deletions(-) - -diff --git a/src/http-ntlm.c b/src/http-ntlm.c -index 56c40ae..87f5a37 100644 ---- a/src/http-ntlm.c -+++ b/src/http-ntlm.c -@@ -122,7 +122,7 @@ ntlm_input (struct ntlmdata *ntlm, const char *header) - - DEBUGP (("Received a type-2 NTLM message.\n")); - -- size = base64_decode (header, buffer); -+ size = wget_base64_decode (header, buffer); - if (size < 0) - return false; /* malformed base64 from server */ - -@@ -411,7 +411,7 @@ ntlm_output (struct ntlmdata *ntlm, const char *user, const char *passwd, - size = 32 + hostlen + domlen; - - base64 = (char *) alloca (BASE64_LENGTH (size) + 1); -- base64_encode (ntlmbuf, size, base64); -+ wget_base64_encode (ntlmbuf, size, base64); - - output = concat_strings ("NTLM ", base64, (char *) 0); - break; -@@ -584,7 +584,7 @@ ntlm_output (struct ntlmdata *ntlm, const char *user, const char *passwd, - - /* convert the binary blob into base64 */ - base64 = (char *) alloca (BASE64_LENGTH (size) + 1); -- base64_encode (ntlmbuf, size, base64); -+ wget_base64_encode (ntlmbuf, size, base64); - - output = concat_strings ("NTLM ", base64, (char *) 0); - -diff --git a/src/http.c b/src/http.c -index 7e60a07..368d30d 100644 ---- a/src/http.c -+++ b/src/http.c -@@ -2818,7 +2818,7 @@ metalink_from_http (const struct response *resp, const struct http_stat *hs, - char *bin_hash = alloca (dig_hash_str_len * 3 / 4 + 1); - size_t hash_bin_len; - -- hash_bin_len = base64_decode (dig_hash, bin_hash); -+ hash_bin_len = wget_base64_decode (dig_hash, bin_hash); - - /* One slot for me, one for zero-termination. */ - mfile->checksums = -@@ -4546,7 +4546,7 @@ basic_authentication_encode (const char *user, const char *passwd) - sprintf (t1, "%s:%s", user, passwd); - - t2 = (char *)alloca (BASE64_LENGTH (len1) + 1); -- base64_encode (t1, len1, t2); -+ wget_base64_encode (t1, len1, t2); - - return concat_strings ("Basic ", t2, (char *) 0); - } -diff --git a/src/utils.c b/src/utils.c -index b07da9f..355f0ce 100644 ---- a/src/utils.c -+++ b/src/utils.c -@@ -2140,7 +2140,7 @@ xsleep (double seconds) - base64 data. */ - - size_t --base64_encode (const void *data, size_t length, char *dest) -+wget_base64_encode (const void *data, size_t length, char *dest) - { - /* Conversion table. */ - static const char tbl[64] = { -@@ -2208,7 +2208,7 @@ base64_encode (const void *data, size_t length, char *dest) - This function originates from Free Recode. */ - - ssize_t --base64_decode (const char *base64, void *dest) -+wget_base64_decode (const char *base64, void *dest) - { - /* Table of base64 values for first 128 characters. Note that this - assumes ASCII (but so does Wget in other places). */ -@@ -2588,7 +2588,7 @@ wg_pubkey_pem_to_der (const char *pem, unsigned char **der, size_t *der_len) - - base64data = xmalloc (BASE64_LENGTH(stripped_pem_count)); - -- size = base64_decode (stripped_pem, base64data); -+ size = wget_base64_decode (stripped_pem, base64data); - - if (size < 0) { - xfree (base64data); /* malformed base64 from server */ -@@ -2651,7 +2651,7 @@ wg_pin_peer_pubkey (const char *pinnedpubkey, const char *pubkey, size_t pubkeyl - end_pos[0] = '\0'; - - /* decode base64 pinnedpubkey, 8 is length of "sha256//" */ -- decoded_hash_length = base64_decode (begin_pos + 8, expectedsha256sumdigest); -+ decoded_hash_length = wget_base64_decode (begin_pos + 8, expectedsha256sumdigest); - /* if valid base64, compare sha256 digests directly */ - if (SHA256_DIGEST_SIZE == decoded_hash_length && - !memcmp (sha256sumdigest, expectedsha256sumdigest, SHA256_DIGEST_SIZE)) { -diff --git a/src/utils.h b/src/utils.h -index f224b73..aaac730 100644 ---- a/src/utils.h -+++ b/src/utils.h -@@ -140,8 +140,8 @@ void xsleep (double); - /* How many bytes it will take to store LEN bytes in base64. */ - #define BASE64_LENGTH(len) (4 * (((len) + 2) / 3)) - --size_t base64_encode (const void *, size_t, char *); --ssize_t base64_decode (const char *, void *); -+size_t wget_base64_encode (const void *, size_t, char *); -+ssize_t wget_base64_decode (const char *, void *); - - #ifdef HAVE_LIBPCRE - void *compile_pcre_regex (const char *); --- -2.6.2 - diff --git a/package/wget/wget.hash b/package/wget/wget.hash index 6d267234e6..5f22396b05 100644 --- a/package/wget/wget.hash +++ b/package/wget/wget.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b5b55b75726c04c06fe253daec9329a6f1a3c0c1878e3ea76ebfebc139ea9cc1 wget-1.18.tar.xz +sha256 0c950b9671881222a4d385b013c9604e98a8025d1988529dfca0e93617744cd2 wget-1.19.1.tar.xz diff --git a/package/wget/wget.mk b/package/wget/wget.mk index c9efc03302..22e057dbae 100644 --- a/package/wget/wget.mk +++ b/package/wget/wget.mk @@ -4,7 +4,7 @@ # ################################################################################ -WGET_VERSION = 1.18 +WGET_VERSION = 1.19.1 WGET_SOURCE = wget-$(WGET_VERSION).tar.xz WGET_SITE = $(BR2_GNU_MIRROR)/wget WGET_DEPENDENCIES = host-pkgconf diff --git a/package/wiringpi/0001-Adjust-for-buildroot-build.patch b/package/wiringpi/0001-Adjust-for-buildroot-build.patch index 4add46e216..4fddc9951e 100644 --- a/package/wiringpi/0001-Adjust-for-buildroot-build.patch +++ b/package/wiringpi/0001-Adjust-for-buildroot-build.patch @@ -1,4 +1,4 @@ -From a16012bf4ea63f714468d80ebe101481c917e4b8 Mon Sep 17 00:00:00 2001 +From 10d5bde8d628a93993dd7305dc9a406da69f65a9 Mon Sep 17 00:00:00 2001 From: Peter Seiderer Date: Wed, 2 Dec 2015 00:22:26 +0100 Subject: [PATCH] Adjust for buildroot build. @@ -14,12 +14,12 @@ Subject: [PATCH] Adjust for buildroot build. Signed-off-by: Peter Seiderer --- devLib/Makefile | 9 +++++---- - gpio/Makefile | 12 ++++++++---- + gpio/Makefile | 14 +++++++++----- wiringPi/Makefile | 7 ++++--- - 3 files changed, 17 insertions(+), 11 deletions(-) + 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/devLib/Makefile b/devLib/Makefile -index 0fb0033..3117479 100644 +index 1b1ebe0..84b4d2a 100644 --- a/devLib/Makefile +++ b/devLib/Makefile @@ -36,10 +36,10 @@ DYNAMIC=libwiringPiDev.so.$(VERSION) @@ -36,7 +36,7 @@ index 0fb0033..3117479 100644 LIBS = -@@ -67,6 +67,7 @@ $(STATIC): $(OBJ) +@@ -69,6 +69,7 @@ $(STATIC): $(OBJ) $(DYNAMIC): $(OBJ) $Q echo "[Link (Dynamic)]" $Q $(CC) -shared -Wl,-soname,libwiringPiDev.so$(WIRINGPI_SONAME_SUFFIX) -o libwiringPiDev.so.$(VERSION) -lpthread $(OBJ) @@ -44,7 +44,7 @@ index 0fb0033..3117479 100644 .c.o: $Q echo [Compile] $< -@@ -91,7 +92,7 @@ install: $(DYNAMIC) +@@ -93,7 +94,7 @@ install: $(DYNAMIC) $Q echo "[Install Dynamic Lib]" $Q install -m 0755 -d $(DESTDIR)$(PREFIX)/lib $Q install -m 0755 libwiringPiDev.so.$(VERSION) $(DESTDIR)$(PREFIX)/lib/libwiringPiDev.so.$(VERSION) @@ -54,7 +54,7 @@ index 0fb0033..3117479 100644 .PHONY: install-static diff --git a/gpio/Makefile b/gpio/Makefile -index 7dcd090..e8e43f9 100644 +index 7dcd090..dc4be72 100644 --- a/gpio/Makefile +++ b/gpio/Makefile @@ -32,11 +32,11 @@ endif @@ -73,19 +73,23 @@ index 7dcd090..e8e43f9 100644 LIBS = -lwiringPi -lwiringPiDev -lpthread # May not need to alter anything below this line -@@ -55,6 +55,10 @@ gpio: $(OBJ) - $Q echo [Link] +@@ -52,9 +52,13 @@ version.h: ../VERSION + $Q echo Need to run newVersion above. + + gpio: $(OBJ) +- $Q echo [Link] ++ $Q echo "[Link (Dynamic)]" $Q $(CC) -o $@ $(OBJ) $(LDFLAGS) $(LIBS) +gpio-static: $(OBJ) -+ $Q echo [Link] -+ $Q $(CC) -o gpio $(OBJ) ../wiringPi/libwiringPi.a ../devLib/libwiringPiDev.a -lpthread ++ $Q echo "[Link (Static)]" ++ $Q $(CC) -static -o gpio $(OBJ) ../wiringPi/libwiringPi.a ../devLib/libwiringPiDev.a -lpthread + .c.o: $Q echo [Compile] $< $Q $(CC) -c $(CFLAGS) $< -o $@ diff --git a/wiringPi/Makefile b/wiringPi/Makefile -index 6bbcc5d..e0ccc52 100644 +index acb6e58..8b84dc6 100644 --- a/wiringPi/Makefile +++ b/wiringPi/Makefile @@ -36,10 +36,10 @@ DYNAMIC=libwiringPi.so.$(VERSION) @@ -119,5 +123,5 @@ index 6bbcc5d..e0ccc52 100644 .PHONY: install-static -- -2.1.4 +2.11.0 diff --git a/package/x11r7/xserver_xorg-server/1.19.1/0003-Remove-check-for-useSIGIO-option.patch b/package/x11r7/xserver_xorg-server/1.19.1/0003-Remove-check-for-useSIGIO-option.patch new file mode 100644 index 0000000000..d4f0cca67e --- /dev/null +++ b/package/x11r7/xserver_xorg-server/1.19.1/0003-Remove-check-for-useSIGIO-option.patch @@ -0,0 +1,53 @@ +From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001 +From: Prabhu Sundararaj +Date: Mon, 30 Jan 2017 16:32:06 -0600 +Subject: [PATCH] Remove check for useSIGIO option + +Original patch follows: +Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO +option. + +As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO +and OsReleaseSIGIO. + +No longer the check for useSIGIO is needed + +Upstream-Status: Pending + +Signed-off-by: Prabhu Sundararaj + +Downloaded from +https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch + +Signed-off-by: Mylène Josserand +--- + hw/xfree86/os-support/shared/sigio.c | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c +index 884a71c..be76498 100644 +--- a/hw/xfree86/os-support/shared/sigio.c ++++ b/hw/xfree86/os-support/shared/sigio.c +@@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure) + int i; + int installed = FALSE; + +- if (!xf86Info.useSIGIO) +- return 0; +- + for (i = 0; i < MAX_FUNCS; i++) { + if (!xf86SigIOFuncs[i].f) { + if (xf86IsPipe(fd)) +@@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd) + int max; + int ret; + +- if (!xf86Info.useSIGIO) +- return 0; +- + max = 0; + ret = 0; + for (i = 0; i < MAX_FUNCS; i++) { +-- +2.7.4 + diff --git a/package/xenomai/xenomai.mk b/package/xenomai/xenomai.mk index 11ebf72cb9..6e0e441636 100644 --- a/package/xenomai/xenomai.mk +++ b/package/xenomai/xenomai.mk @@ -13,7 +13,7 @@ endif XENOMAI_SITE = https://xenomai.org/downloads/xenomai/stable XENOMAI_SOURCE = xenomai-$(XENOMAI_VERSION).tar.bz2 -XENOMAI_LICENSE = headers: GPLv2+ with exception, libraries: LGPLv2.1+, kernel: GPLv2+, docs: GFDLv1.2+, ipipe patch and can driver: GPLv2 +XENOMAI_LICENSE = GPLv2+ with exception (headers), LGPLv2.1+ (libraries), GPLv2+ (kernel), GFDLv1.2+ (docs), GPLv2 (ipipe patch, can driver) # GFDL is not included but refers to gnu.org XENOMAI_LICENSE_FILES = debian/copyright include/COPYING src/skins/native/COPYING ksrc/nucleus/COPYING diff --git a/package/xfsprogs/0004-build-add-EXTRALIBS-to-link-with.patch b/package/xfsprogs/0004-build-add-EXTRALIBS-to-link-with.patch new file mode 100644 index 0000000000..8ff0580f6b --- /dev/null +++ b/package/xfsprogs/0004-build-add-EXTRALIBS-to-link-with.patch @@ -0,0 +1,53 @@ +From 1e9bb2fba94bc508659f1667bf95501324849bb9 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 26 Feb 2017 12:04:54 +0100 +Subject: [PATCH] build: add EXTRALIBS to link with + +When doing a uClibc static build, the build fails to link: + http://autobuild.buildroot.org/results/503/50314716a9f72e8bb238e52e9dc342c68f7e0b8b/build-end.log + +The cause is due to: + - xfsprogs links dome programs with util-linux' libblkid + - util-linux' libblkid is linked to util-linux' libuuid + - util-linux' libuuid uses i18n functions when locales are enabled + - uClibc does not provide i18n functions + - i18n functions are provided by libintl from libintl from gettext + +util-linux installs pkg-config files for thos two libs. However, +xfsprogs does not use pkg-config to find libblkid or libuuid, thus it +misses the Libs.private field from libuid. + +In this case, it is necessary to pass LIBS=-lintl at configure time, so +that configure correctly finds libblkid. + +Still, this is not enough, because the build will not use LIBS during +the link phase. + +We fix that last bit by adding EXTRALIBS to the libraries to link with, +so that it is possible to pass EXTRALIBS=-lintl at build time: + + $ ./configure [...] LIBS=-lintl + $ make EXTRALIBS=-lintl + +Signed-off-by: "Yann E. MORIN" +Cc: Waldemar Brodkorb +--- + include/buildmacros | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/buildmacros b/include/buildmacros +index a7c5d8a..dd62d80 100644 +--- a/include/buildmacros ++++ b/include/buildmacros +@@ -11,7 +11,7 @@ BUILDRULES = $(TOPDIR)/include/buildrules + + LDFLAGS += $(LOADERFLAGS) $(LLDFLAGS) + LTLDFLAGS += $(LOADERFLAGS) +-LDLIBS = $(LLDLIBS) $(PLDLIBS) $(MALLOCLIB) ++LDLIBS = $(LLDLIBS) $(PLDLIBS) $(MALLOCLIB) $(EXTRALIBS) + + MAKEOPTS = --no-print-directory Q=$(Q) + SRCFILES = Makefile $(HFILES) $(CFILES) $(LSRCFILES) $(LFILES) $(YFILES) +-- +2.7.4 + diff --git a/package/xfsprogs/Config.in b/package/xfsprogs/Config.in index ccb3214674..9f0d2509c0 100644 --- a/package/xfsprogs/Config.in +++ b/package/xfsprogs/Config.in @@ -1,11 +1,12 @@ -comment "xfsprogs needs a glibc or uClibc toolchain" +comment "xfsprogs needs a glibc or uClibc toolchain w/ threads" depends on BR2_USE_MMU - depends on BR2_TOOLCHAIN_USES_MUSL + depends on BR2_TOOLCHAIN_USES_MUSL || !BR2_TOOLCHAIN_HAS_THREADS config BR2_PACKAGE_XFSPROGS bool "xfsprogs" depends on BR2_USE_MMU # fork() depends on !BR2_TOOLCHAIN_USES_MUSL + depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_UTIL_LINUX_LIBBLKID diff --git a/package/xfsprogs/xfsprogs.mk b/package/xfsprogs/xfsprogs.mk index e59f1f6905..c110733c83 100644 --- a/package/xfsprogs/xfsprogs.mk +++ b/package/xfsprogs/xfsprogs.mk @@ -18,6 +18,23 @@ XFSPROGS_CONF_OPTS = \ INSTALL_GROUP=root \ --enable-static +# xfsprogs links some of its programs to libs from util-linux, which use +# i18n functions. For shared-only builds, that's automatically pulled in. +# Static builds need some help, though... +# +# No need to depend on gettext in this case: xfsprogs does not use it for +# itself; util-linux does need it and has it in its own dependencies. +# +# xfsprogs' buildsystem uses hand-made Makefiles, not automake, and they +# do not use the LIBS variable set by configure. So we use EXTRALIBS that +# is added by our patch. +# +# It is not needed to propagate the EXTRALIBS to the install step. +ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS)$(BR2_NEEDS_GETTEXT_IF_LOCALE),yy) +XFSPROGS_CONF_OPTS += LIBS=-lintl +XFSPROGS_MAKE_OPTS = EXTRALIBS=-lintl +endif + XFSPROGS_INSTALL_TARGET_OPTS = DIST_ROOT=$(TARGET_DIR) install $(eval $(autotools-package)) diff --git a/package/xscreensaver/xscreensaver.mk b/package/xscreensaver/xscreensaver.mk index ec714fe399..831349be4c 100644 --- a/package/xscreensaver/xscreensaver.mk +++ b/package/xscreensaver/xscreensaver.mk @@ -8,7 +8,7 @@ XSCREENSAVER_VERSION = 5.32 XSCREENSAVER_SITE = http://www.jwz.org/xscreensaver # N.B. GPLv2+ code (in the hacks/glx subdirectory) is not currently built. -XSCREENSAVER_LICENSE = MIT-like GPLv2+ +XSCREENSAVER_LICENSE = MIT-like, GPLv2+ XSCREENSAVER_LICENSE_FILES = hacks/screenhack.h hacks/glx/chessmodels.h XSCREENSAVER_DEPENDENCIES = jpeg libglade libgtk2 xlib_libX11 xlib_libXt \ diff --git a/package/xterm/Config.in b/package/xterm/Config.in index e17d2c6d90..f11aafad7a 100644 --- a/package/xterm/Config.in +++ b/package/xterm/Config.in @@ -4,6 +4,8 @@ config BR2_PACKAGE_XTERM select BR2_PACKAGE_XLIB_LIBXAW depends on BR2_PACKAGE_XORG7 depends on BR2_USE_MMU # fork() + # ARC toolchain issue + depends on !BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC help xterm terminal emulator diff --git a/support/dependencies/check-host-cmake.sh b/support/dependencies/check-host-cmake.sh index 9b63b0648d..84c26c25cd 100755 --- a/support/dependencies/check-host-cmake.sh +++ b/support/dependencies/check-host-cmake.sh @@ -6,6 +6,9 @@ version_min="${2}" major_min="${version_min%.*}" minor_min="${version_min#*.}" +# cmake-3.7 incorrectly handles rpath, linking to host libraries +blacklist_version="3.7" + cmake=`which ${candidate}` if [ ! -x "${cmake}" ]; then # echo nothing: no suitable cmake found @@ -27,6 +30,11 @@ version="$(${cmake} --version \ major="${version%.*}" minor="${version#*.}" +if [ "${version}" = "${blacklist_version}" ]; then + # echo nothing: no suitable cmake found + exit 1 +fi + if [ ${major} -gt ${major_min} ]; then echo "${cmake}" else diff --git a/support/dependencies/check-host-lzip.mk b/support/dependencies/check-host-lzip.mk new file mode 100644 index 0000000000..6acfdc6dfa --- /dev/null +++ b/support/dependencies/check-host-lzip.mk @@ -0,0 +1,5 @@ +ifeq (,$(call suitable-host-package,lzip,$(LZCAT))) +DEPENDENCIES_HOST_PREREQ += host-lzip +EXTRACTOR_DEPENDENCY_PRECHECKED_EXTENSIONS += .lz +LZCAT = $(HOST_DIR)/usr/bin/lzip -d -c +endif diff --git a/support/dependencies/check-host-lzip.sh b/support/dependencies/check-host-lzip.sh new file mode 100755 index 0000000000..4f8a2ba3de --- /dev/null +++ b/support/dependencies/check-host-lzip.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +candidate="$1" + +lzip=`which $candidate 2>/dev/null` +if [ ! -x "$lzip" ]; then + lzip=`which lzip 2>/dev/null` + if [ ! -x "$lzip" ]; then + # echo nothing: no suitable lzip found + exit 1 + fi +fi + +echo $lzip diff --git a/support/dependencies/check-host-xzcat.mk b/support/dependencies/check-host-xzcat.mk index 5e08b6e886..c6d9eebe4d 100644 --- a/support/dependencies/check-host-xzcat.mk +++ b/support/dependencies/check-host-xzcat.mk @@ -3,5 +3,6 @@ ifeq (,$(call suitable-host-package,xzcat,$(XZCAT))) DEPENDENCIES_HOST_PREREQ += host-xz +EXTRACTOR_DEPENDENCY_PRECHECKED_EXTENSIONS += .xz .lzma XZCAT = $(HOST_DIR)/usr/bin/xzcat endif diff --git a/support/misc/Vagrantfile b/support/misc/Vagrantfile index dc4c15d51e..33ca6b802a 100644 --- a/support/misc/Vagrantfile +++ b/support/misc/Vagrantfile @@ -5,7 +5,7 @@ ################################################################################ # Buildroot version to use -RELEASE='2016.11.2' +RELEASE='2017.02' ### Change here for more memory/cores ### VM_MEMORY=2048 @@ -41,19 +41,20 @@ Vagrant.configure('2') do |config| end end - config.vm.provision 'shell', inline: - "sudo dpkg --add-architecture i386 - sudo apt-get -q update - sudo apt-get purge -q -y snapd lxcfs lxd ubuntu-core-launcher snap-confine - sudo apt-get -q -y upgrade - sudo apt-get -q -y install build-essential libncurses5-dev \ + config.vm.provision 'shell', privileged: true, inline: + "sed -i 's|deb http://us.archive.ubuntu.com/ubuntu/|deb mirror://mirrors.ubuntu.com/mirrors.txt|g' /etc/apt/sources.list + dpkg --add-architecture i386 + apt-get -q update + apt-get purge -q -y snapd lxcfs lxd ubuntu-core-launcher snap-confine + apt-get -q -y install build-essential libncurses5-dev \ git bzr cvs mercurial subversion libc6:i386 unzip bc - sudo apt-get -q -y autoremove - sudo apt-get -q -y clean - sudo update-locale LC_ALL=C" + apt-get -q -y autoremove + apt-get -q -y clean + update-locale LC_ALL=C" config.vm.provision 'shell', privileged: false, inline: "echo 'Downloading and extracting buildroot #{RELEASE}' wget -q -c http://buildroot.org/downloads/buildroot-#{RELEASE}.tar.gz tar axf buildroot-#{RELEASE}.tar.gz" + end diff --git a/support/scripts/test-pkg b/support/scripts/test-pkg index b867da8bb8..a040ce1af1 100755 --- a/support/scripts/test-pkg +++ b/support/scripts/test-pkg @@ -6,11 +6,12 @@ TOOLCHAINS_URL='http://autobuild.buildroot.org/toolchains/configs/toolchain-conf main() { local o O opts local cfg dir pkg random toolchain + local ret nb nb_skip nb_fail local -a toolchains o='hc:d:p:r:' O='help,config-snippet:build-dir:package:,random:' - opts="$( getopt -n "${my_name}" -o "${o}" -l "${O}" -- "${@}" )" + opts="$(getopt -n "${my_name}" -o "${o}" -l "${O}" -- "${@}")" eval set -- "${opts}" random=0 @@ -39,6 +40,9 @@ main() { if [ -z "${cfg}" ]; then printf "error: no config snippet specified\n" >&2; exit 1 fi + if [ ! -e "${cfg}" ]; then + printf "error: %s: no such file\n" "${cfg}" >&2; exit 1 + fi if [ -z "${dir}" ]; then dir="${HOME}/br-test-pkg" fi @@ -46,23 +50,34 @@ main() { # Extract the URLs of the toolchains; drop internal toolchains # E.g.: http://server/path/to/name.config,arch,libc # --> http://server/path/to/name.config - toolchains=( $( curl -s "${TOOLCHAINS_URL}" \ - |sed -r -e 's/,.*//; /internal/d;' \ - |if [ ${random} -gt 0 ]; then \ - sort -R |head -n ${random} - else - cat - fi |sort - ) + toolchains=($(curl -s "${TOOLCHAINS_URL}" \ + |sed -r -e 's/,.*//; /internal/d;' \ + |if [ ${random} -gt 0 ]; then \ + sort -R |head -n ${random} + else + cat + fi |sort + ) ) if [ ${#toolchains[@]} -eq 0 ]; then printf "error: no toolchain found (networking issue?)\n" >&2; exit 1 fi + nb=0 + nb_skip=0 + nb_fail=0 for toolchain in "${toolchains[@]}"; do - build_one "${dir}" "${toolchain}" "${cfg}" "${pkg}" + build_one "${dir}" "${toolchain}" "${cfg}" "${pkg}" && ret=0 || ret=${?} + case ${ret} in + (0) ;; + (1) : $((nb_skip++));; + (2) : $((nb_fail++));; + esac + : $((nb++)) done + + printf "%d builds, %d skipped, %d failed\n" ${nb} ${nb_skip} ${nb_fail} } build_one() { @@ -70,20 +85,19 @@ build_one() { local url="${2}" local cfg="${3}" local pkg="${4}" - local toolchain line skip + local toolchain # Using basename(1) on a URL works nicely - toolchain="$( basename "${url}" .config )" + toolchain="$(basename "${url}" .config)" printf "%40s: " "${toolchain}" dir="${dir}/${toolchain}" mkdir -p "${dir}" - printf "download config" if ! curl -s "${url}" >"${dir}/.config"; then - printf ": FAILED\n" - return + printf "FAILED\n" + return 2 fi cat >>"${dir}/.config" <<-_EOF_ @@ -94,45 +108,38 @@ build_one() { _EOF_ cat "${cfg}" >>"${dir}/.config" - printf ", olddefconfig" if ! make O="${dir}" olddefconfig >/dev/null 2>&1; then - printf ": FAILED\n" - return + printf "FAILED\n" + return 2 fi # We want all the options from the snippet to be present as-is (set # or not set) in the actual .config; if one of them is not, it means # some dependency from the toolchain or arch is not available, in # which case this config is untestable and we skip it. - skip=false - while read line; do - if ! grep "^${line}\$" "${dir}/.config" >/dev/null 2>&1; then - printf "%s\n" "${line}" - skip=true - fi - done <"${cfg}" >"${dir}/missing.config" - if ${skip}; then - printf ", SKIPPED\n" - return + # We don't care about the locale to sort in, as long as both sort are + # done in the same locale. + comm -23 <(sort "${cfg}") <(sort "${dir}/.config") >"${dir}/missing.config" + if [ -s "${dir}/missing.config" ]; then + printf "SKIPPED\n" + return 1 fi # Remove file, it's empty anyway. rm -f "${dir}/missing.config" if [ -n "${pkg}" ]; then - printf ", dirclean" if ! make O="${dir}" "${pkg}-dirclean" >> "${dir}/logfile" 2>&1; then - printf ": FAILED\n" - return + printf "FAILED\n" + return 2 fi fi - printf ", build" # shellcheck disable=SC2086 if ! make O="${dir}" ${pkg} >> "${dir}/logfile" 2>&1; then - printf ": FAILED\n" - return + printf "FAILED\n" + return 2 fi - printf ": OK\n" + printf "OK\n" } help() { diff --git a/toolchain/toolchain-external/pkg-toolchain-external.mk b/toolchain/toolchain-external/pkg-toolchain-external.mk index 6658875007..11a1bf5e24 100644 --- a/toolchain/toolchain-external/pkg-toolchain-external.mk +++ b/toolchain/toolchain-external/pkg-toolchain-external.mk @@ -124,7 +124,7 @@ endif # ! no threads endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC),y) -TOOLCHAIN_EXTERNAL_LIBS += libnss_files.so.* libnss_dns.so.* libmvec.so.* +TOOLCHAIN_EXTERNAL_LIBS += libnss_files.so.* libnss_dns.so.* libmvec.so.* libanl.so.* endif ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL),y) diff --git a/toolchain/toolchain-wrapper.c b/toolchain/toolchain-wrapper.c index eb4ee8de4a..100aa181c6 100644 --- a/toolchain/toolchain-wrapper.c +++ b/toolchain/toolchain-wrapper.c @@ -22,15 +22,12 @@ #include #include #include -#include #ifdef BR_CCACHE static char ccache_path[PATH_MAX]; #endif static char path[PATH_MAX]; static char sysroot[PATH_MAX]; -static char source_time[sizeof("-D__TIME__=\"HH:MM:SS\"")]; -static char source_date[sizeof("-D__DATE__=\"MMM DD YYYY\"")]; /** * GCC errors out with certain combinations of arguments (examples are @@ -42,11 +39,8 @@ static char source_date[sizeof("-D__DATE__=\"MMM DD YYYY\"")]; * -mfloat-abi= * -march= * -mcpu= - * -D__TIME__= - * -D__DATE__= - * -Wno-builtin-macro-redefined */ -#define EXCLUSIVE_ARGS 6 +#define EXCLUSIVE_ARGS 3 static char *predef_args[] = { #ifdef BR_CCACHE @@ -163,47 +157,6 @@ static void check_unsafe_path(const char *arg, } } -/* Read SOURCE_DATE_EPOCH from environment to have a deterministic - * timestamp to replace embedded current dates to get reproducible - * results. Returns -1 if SOURCE_DATE_EPOCH is not defined. - */ -static time_t get_source_date_epoch() -{ - char *source_date_epoch; - long long epoch; - char *endptr; - - source_date_epoch = getenv("SOURCE_DATE_EPOCH"); - if (!source_date_epoch) - return (time_t) -1; - - errno = 0; - epoch = strtoll(source_date_epoch, &endptr, 10); - if ((errno == ERANGE && (epoch == LLONG_MAX || epoch == LLONG_MIN)) - || (errno != 0 && epoch == 0)) { - fprintf(stderr, "environment variable $SOURCE_DATE_EPOCH: " - "strtoll: %s\n", strerror(errno)); - exit(2); - } - if (endptr == source_date_epoch) { - fprintf(stderr, "environment variable $SOURCE_DATE_EPOCH: " - "no digits were found: %s\n", endptr); - exit(2); - } - if (*endptr != '\0') { - fprintf(stderr, "environment variable $SOURCE_DATE_EPOCH: " - "trailing garbage: %s\n", endptr); - exit(2); - } - if (epoch < 0) { - fprintf(stderr, "environment variable $SOURCE_DATE_EPOCH: " - "value must be nonnegative: %lld \n", epoch); - exit(2); - } - - return (time_t) epoch; -} - int main(int argc, char **argv) { char **args, **cur, **exec_args; @@ -214,7 +167,6 @@ int main(int argc, char **argv) char *paranoid_wrapper; int paranoid; int ret, i, count = 0, debug; - time_t source_date_epoch; /* Calculate the relative paths */ basename = strrchr(progpath, '/'); @@ -320,28 +272,6 @@ int main(int argc, char **argv) } #endif /* ARCH || CPU */ - source_date_epoch = get_source_date_epoch(); - if (source_date_epoch != -1) { - struct tm *tm = localtime(&source_date_epoch); - if (!tm) { - perror("__FILE__: localtime"); - return 3; - } - ret = strftime(source_time, sizeof(source_time), "-D__TIME__=\"%T\"", tm); - if (!ret) { - perror("__FILE__: overflow"); - return 3; - } - *cur++ = source_time; - ret = strftime(source_date, sizeof(source_date), "-D__DATE__=\"%b %e %Y\"", tm); - if (!ret) { - perror("__FILE__: overflow"); - return 3; - } - *cur++ = source_date; - *cur++ = "-Wno-builtin-macro-redefined"; - } - paranoid_wrapper = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); if (paranoid_wrapper && strlen(paranoid_wrapper) > 0) paranoid = 1;