From dbfb5c47b35ba0d4a13da21dffc66bd1e16b9dc0 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 2 Aug 2017 22:29:19 -0700 Subject: [PATCH 01/27] glibc: update to 2.26 --- packages/devel/glibc/package.mk | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/devel/glibc/package.mk b/packages/devel/glibc/package.mk index 0186504e4c..e17131e920 100644 --- a/packages/devel/glibc/package.mk +++ b/packages/devel/glibc/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="glibc" -PKG_VERSION="2.25" -PKG_SHA256="067bd9bb3390e79aa45911537d13c3721f1d9d3769931a30c2681bfee66f23a0" +PKG_VERSION="2.26" +PKG_SHA256="e54e0a934cd2bc94429be79da5e9385898d2306b9eaf3c92d5a77af96190f6bd" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.gnu.org/software/libc/" @@ -50,6 +50,7 @@ PKG_CONFIGURE_OPTS_TARGET="BASH_SHELL=/bin/sh \ --without-cvs \ --without-gd \ --enable-obsolete-rpc \ + --enable-obsolete-nsl \ --disable-build-nscd \ --disable-nscd \ --enable-lock-elision \ From f5ce92589df8396efc0f20e64af365bf731599fc Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 2 Aug 2017 22:29:50 -0700 Subject: [PATCH 02/27] libtirpc: update to 1.0.2 --- packages/network/libtirpc/package.mk | 4 ++-- .../libtirpc-0001-include-missing-stdint.h.patch | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 packages/network/libtirpc/patches/libtirpc-0001-include-missing-stdint.h.patch diff --git a/packages/network/libtirpc/package.mk b/packages/network/libtirpc/package.mk index d3f9d78002..8ef3d1ab25 100644 --- a/packages/network/libtirpc/package.mk +++ b/packages/network/libtirpc/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="libtirpc" -PKG_VERSION="1.0.1" -PKG_SHA256="5156974f31be7ccbc8ab1de37c4739af6d9d42c87b1d5caf4835dda75fcbb89e" +PKG_VERSION="1.0.2" +PKG_SHA256="723c5ce92706cbb601a8db09110df1b4b69391643158f20ff587e20e7c5f90f5" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="https://sourceforge.net/projects/libtirpc/" diff --git a/packages/network/libtirpc/patches/libtirpc-0001-include-missing-stdint.h.patch b/packages/network/libtirpc/patches/libtirpc-0001-include-missing-stdint.h.patch new file mode 100644 index 0000000000..f832cf6dd3 --- /dev/null +++ b/packages/network/libtirpc/patches/libtirpc-0001-include-missing-stdint.h.patch @@ -0,0 +1,11 @@ +diff -Naur a/src/xdr_sizeof.c b/src/xdr_sizeof.c +--- a/src/xdr_sizeof.c 2017-07-05 08:02:23.000000000 -0700 ++++ b/src/xdr_sizeof.c 2017-08-02 16:37:31.839143976 -0700 +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + #include "un-namespace.h" + + /* ARGSUSED */ From f4883f5b6c568d6858dc747d7ac211fce212a242 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Wed, 2 Aug 2017 22:31:30 -0700 Subject: [PATCH 03/27] systemd: add patch to fix with glibc 2.26 --- .../systemd-0003-remove-xlocale.h.patch | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 packages/sysutils/systemd/patches/systemd-0003-remove-xlocale.h.patch diff --git a/packages/sysutils/systemd/patches/systemd-0003-remove-xlocale.h.patch b/packages/sysutils/systemd/patches/systemd-0003-remove-xlocale.h.patch new file mode 100644 index 0000000000..7a28cc4d15 --- /dev/null +++ b/packages/sysutils/systemd/patches/systemd-0003-remove-xlocale.h.patch @@ -0,0 +1,27 @@ +From 0c50b8332092178378257c2de800fb6b6b4a8706 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 3 Jul 2017 08:45:04 -0700 +Subject: [PATCH] parse-util: Do not include unneeded xlocale.h + +Signed-off-by: Khem Raj +--- +Upstream-Status: Backport [ partial https://github.com/systemd/systemd/commit/284d1cd0a12cad96a5ea61d1afb0dd677dbd147e] + + src/basic/parse-util.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/basic/parse-util.c b/src/basic/parse-util.c +index c98815b9b..a0eb45805 100644 +--- a/src/basic/parse-util.c + b/src/basic/parse-util.c +@@ -23,7 +23,6 @@ + #include + #include + #include +-#include + + #include "alloc-util.h" + #include "extract-word.h" +-- +2.13.2 + From 6e420dbf9910640af33e8bac1a03bc4f9ad60bd7 Mon Sep 17 00:00:00 2001 From: Lukas Rusak Date: Thu, 3 Aug 2017 21:05:07 -0700 Subject: [PATCH 04/27] gcc: add patches for glibc 2.26 --- ...tack_t-instead-of-struct-sigaltstack.patch | 160 ++++++++++++++++++ ...lace-struct-ucontext-with-ucontext_t.patch | 149 ++++++++++++++++ 2 files changed, 309 insertions(+) create mode 100644 packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch create mode 100644 packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch diff --git a/packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch b/packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch new file mode 100644 index 0000000000..ee15c6cac8 --- /dev/null +++ b/packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch @@ -0,0 +1,160 @@ +From 4c07606bb77bbd30f02adb947d480516da3fa3f7 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 11 Jun 2017 10:09:13 -0700 +Subject: [PATCH] libsanitizer: Use stack_t instead of struct sigaltstack + +Upstream-Status: Submitted + +Signed-off-by: Khem Raj +--- + libsanitizer/sanitizer_common/sanitizer_linux.cc | 4 ++-- + libsanitizer/sanitizer_common/sanitizer_linux.h | 6 +++--- + .../sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | 3 ++- + 3 files changed, 7 insertions(+), 6 deletions(-) + +Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.cc +=================================================================== +--- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_linux.cc ++++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.cc +@@ -14,6 +14,10 @@ + + #if SANITIZER_FREEBSD || SANITIZER_LINUX + ++#if !SANITIZER_ANDROID ++#include ++#endif ++ + #include "sanitizer_common.h" + #include "sanitizer_flags.h" + #include "sanitizer_internal_defs.h" +@@ -71,10 +75,6 @@ extern "C" { + extern char **environ; // provided by crt1 + #endif // SANITIZER_FREEBSD + +-#if !SANITIZER_ANDROID +-#include +-#endif +- + #if SANITIZER_LINUX + // + struct kernel_timeval { +@@ -605,8 +605,8 @@ uptr internal_prctl(int option, uptr arg + } + #endif + +-uptr internal_sigaltstack(const struct sigaltstack *ss, +- struct sigaltstack *oss) { ++uptr internal_sigaltstack(const stack_t *ss, ++ stack_t *oss) { + return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss); + } + +Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.h +=================================================================== +--- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_linux.h ++++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.h +@@ -19,7 +19,10 @@ + #include "sanitizer_platform_limits_posix.h" + + struct link_map; // Opaque type returned by dlopen(). +-struct sigaltstack; ++ ++#ifndef __stack_t_defined ++struct stack_t; ++#endif + + namespace __sanitizer { + // Dirent structure for getdents(). Note that this structure is different from +@@ -28,8 +31,8 @@ struct linux_dirent; + + // Syscall wrappers. + uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count); +-uptr internal_sigaltstack(const struct sigaltstack* ss, +- struct sigaltstack* oss); ++uptr internal_sigaltstack(const stack_t* ss, ++ stack_t* oss); + uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set, + __sanitizer_sigset_t *oldset); + +Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc +=================================================================== +--- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc ++++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc +@@ -16,6 +16,7 @@ + defined(__aarch64__) || defined(__powerpc64__) || \ + defined(__s390__)) + ++#include + #include "sanitizer_stoptheworld.h" + + #include "sanitizer_platform_limits_posix.h" +@@ -273,7 +274,7 @@ static int TracerThread(void* argument) + + // Alternate stack for signal handling. + InternalScopedBuffer handler_stack_memory(kHandlerStackSize); +- struct sigaltstack handler_stack; ++ stack_t handler_stack; + internal_memset(&handler_stack, 0, sizeof(handler_stack)); + handler_stack.ss_sp = handler_stack_memory.data(); + handler_stack.ss_size = kHandlerStackSize; +Index: gcc-7.1.0/libsanitizer/tsan/tsan_platform_linux.cc +=================================================================== +--- gcc-7.1.0.orig/libsanitizer/tsan/tsan_platform_linux.cc ++++ gcc-7.1.0/libsanitizer/tsan/tsan_platform_linux.cc +@@ -14,6 +14,7 @@ + #include "sanitizer_common/sanitizer_platform.h" + #if SANITIZER_LINUX || SANITIZER_FREEBSD + ++#include + #include "sanitizer_common/sanitizer_common.h" + #include "sanitizer_common/sanitizer_libc.h" + #include "sanitizer_common/sanitizer_linux.h" +@@ -28,7 +29,6 @@ + + #include + #include +-#include + #include + #include + #include +@@ -287,7 +287,7 @@ void InitializePlatform() { + int ExtractResolvFDs(void *state, int *fds, int nfd) { + #if SANITIZER_LINUX && !SANITIZER_ANDROID + int cnt = 0; +- __res_state *statp = (__res_state*)state; ++ res_state statp = (res_state)state; + for (int i = 0; i < MAXNS && cnt < nfd; i++) { + if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1) + fds[cnt++] = statp->_u._ext.nssocks[i]; +Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc +=================================================================== +--- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc ++++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc +@@ -14,6 +14,7 @@ + + #if SANITIZER_FREEBSD || SANITIZER_LINUX + ++#include + #include "sanitizer_allocator_internal.h" + #include "sanitizer_atomic.h" + #include "sanitizer_common.h" +@@ -30,7 +31,6 @@ + + #include + #include +-#include + #include + #include + +Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc +=================================================================== +--- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc ++++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc +@@ -12,6 +12,7 @@ + + #include "sanitizer_platform.h" + #if SANITIZER_POSIX ++#include + #include "sanitizer_allocator_internal.h" + #include "sanitizer_common.h" + #include "sanitizer_flags.h" diff --git a/packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch b/packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch new file mode 100644 index 0000000000..e814992e44 --- /dev/null +++ b/packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch @@ -0,0 +1,149 @@ +From 7b3cb36ab07d0c36b500bb5d0548b190d4b5a9f6 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 28 Jun 2017 00:25:57 -0700 +Subject: [PATCH 50/50] replace struct ucontext with ucontext_t + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + libgcc/config/aarch64/linux-unwind.h | 2 +- + libgcc/config/alpha/linux-unwind.h | 2 +- + libgcc/config/bfin/linux-unwind.h | 2 +- + libgcc/config/i386/linux-unwind.h | 4 ++-- + libgcc/config/pa/linux-unwind.h | 2 +- + libgcc/config/riscv/linux-unwind.h | 2 +- + libgcc/config/sh/linux-unwind.h | 2 +- + libgcc/config/tilepro/linux-unwind.h | 2 +- + libgcc/config/xtensa/linux-unwind.h | 2 +- + 9 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h +index d5d6980442f..d46d5f53be3 100644 +--- a/libgcc/config/aarch64/linux-unwind.h ++++ b/libgcc/config/aarch64/linux-unwind.h +@@ -55,7 +55,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context, + struct rt_sigframe + { + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + }; + + struct rt_sigframe *rt_; +diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h +index a91a5f4fe26..7202516581d 100644 +--- a/libgcc/config/alpha/linux-unwind.h ++++ b/libgcc/config/alpha/linux-unwind.h +@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context, + { + struct rt_sigframe { + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + } *rt_ = context->cfa; + sc = &rt_->uc.uc_mcontext; + } +diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h +index 9412c7652b8..37e9feb6965 100644 +--- a/libgcc/config/bfin/linux-unwind.h ++++ b/libgcc/config/bfin/linux-unwind.h +@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context, + void *puc; + char retcode[8]; + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + } *rt_ = context->cfa; + + /* The void * cast is necessary to avoid an aliasing warning. +diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h +index b1d5040a687..2009ad72260 100644 +--- a/libgcc/config/i386/linux-unwind.h ++++ b/libgcc/config/i386/linux-unwind.h +@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context, + if (*(unsigned char *)(pc+0) == 0x48 + && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL) + { +- struct ucontext *uc_ = context->cfa; ++ ucontext_t *uc_ = context->cfa; + /* The void * cast is necessary to avoid an aliasing warning. + The aliasing warning is correct, but should not be a problem + because it does not alias anything. */ +@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context, + siginfo_t *pinfo; + void *puc; + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + } *rt_ = context->cfa; + /* The void * cast is necessary to avoid an aliasing warning. + The aliasing warning is correct, but should not be a problem +diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h +index 580c18dad69..c2c3409bcc1 100644 +--- a/libgcc/config/pa/linux-unwind.h ++++ b/libgcc/config/pa/linux-unwind.h +@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context, + struct sigcontext *sc; + struct rt_sigframe { + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + } *frame; + + /* rt_sigreturn trampoline: +diff --git a/libgcc/config/riscv/linux-unwind.h b/libgcc/config/riscv/linux-unwind.h +index a051a2869d4..1c8aeff7ef0 100644 +--- a/libgcc/config/riscv/linux-unwind.h ++++ b/libgcc/config/riscv/linux-unwind.h +@@ -42,7 +42,7 @@ riscv_fallback_frame_state (struct _Unwind_Context *context, + struct rt_sigframe + { + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + }; + + struct rt_sigframe *rt_; +diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h +index 1038caeb5c3..a8c98220282 100644 +--- a/libgcc/config/sh/linux-unwind.h ++++ b/libgcc/config/sh/linux-unwind.h +@@ -82,7 +82,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context, + { + struct rt_sigframe { + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + } *rt_ = context->cfa; + /* The void * cast is necessary to avoid an aliasing warning. + The aliasing warning is correct, but should not be a problem +diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h +index a8dc4405715..dba3b410279 100644 +--- a/libgcc/config/tilepro/linux-unwind.h ++++ b/libgcc/config/tilepro/linux-unwind.h +@@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context, + struct rt_sigframe { + unsigned char save_area[C_ABI_SAVE_AREA_SIZE]; + siginfo_t info; +- struct ucontext uc; ++ ucontext_t uc; + } *rt_; + + /* Return if this is not a signal handler. */ +diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h +index 67c272820d0..b37b8b31bbf 100644 +--- a/libgcc/config/xtensa/linux-unwind.h ++++ b/libgcc/config/xtensa/linux-unwind.h +@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context, + + struct rt_sigframe { + siginfo_t info; +- struct ucontext uc; ++ struct ucontext_t uc; + } *rt_; + + /* movi a2, __NR_rt_sigreturn; syscall */ +-- +2.13.2 + From 0fbde98f08a1af11fe6dd6593c94daec43366904 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Thu, 15 Jun 2017 13:18:08 +0200 Subject: [PATCH 05/27] harfbuzz: update to 1.4.5 --- packages/addons/addon-depends/harfbuzz/package.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/addons/addon-depends/harfbuzz/package.mk b/packages/addons/addon-depends/harfbuzz/package.mk index 450a32c2d3..209965882a 100644 --- a/packages/addons/addon-depends/harfbuzz/package.mk +++ b/packages/addons/addon-depends/harfbuzz/package.mk @@ -19,8 +19,8 @@ ################################################################################ PKG_NAME="harfbuzz" -PKG_VERSION="1.3.3" -PKG_SHA256="2620987115a4122b47321610dccbcc18f7f121115fd7b88dc8a695c8b66cb3c9" +PKG_VERSION="1.4.5" +PKG_SHA256="d0e05438165884f21658154c709075feaf98c93ee5c694b951533ac425a9a711" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.freedesktop.org/wiki/Software/HarfBuzz" From eb033d0f39c3fc76dcc9e36c51cffdc98a1c3e49 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Thu, 15 Jun 2017 14:04:59 +0200 Subject: [PATCH 06/27] nss: update to 3.29.5 incl. build fix gcc7 --- packages/addons/addon-depends/nspr/package.mk | 2 +- packages/addons/addon-depends/nss/package.mk | 6 +-- .../patches/nss-02_3.15.5-standalone-1.patch | 8 ++-- .../nss/patches/nss-03_gcc7.patch | 42 +++++++++++++++++++ 4 files changed, 50 insertions(+), 8 deletions(-) create mode 100644 packages/addons/addon-depends/nss/patches/nss-03_gcc7.patch diff --git a/packages/addons/addon-depends/nspr/package.mk b/packages/addons/addon-depends/nspr/package.mk index 6c8706f5d8..81e52b61f3 100644 --- a/packages/addons/addon-depends/nspr/package.mk +++ b/packages/addons/addon-depends/nspr/package.mk @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="nspr" -PKG_VERSION="4.13" +PKG_VERSION="4.13.1" PKG_ARCH="any" PKG_LICENSE="Mozilla Public License" PKG_SITE="http://www.linuxfromscratch.org/blfs/view/svn/general/nspr.html" diff --git a/packages/addons/addon-depends/nss/package.mk b/packages/addons/addon-depends/nss/package.mk index ca61f3de85..8d9cd28e00 100644 --- a/packages/addons/addon-depends/nss/package.mk +++ b/packages/addons/addon-depends/nss/package.mk @@ -19,12 +19,12 @@ ################################################################################ PKG_NAME="nss" -PKG_VERSION="3.27.1" -PKG_SHA256="a3368812d7a9714115e76eae8b3f4b062d8407834d374691f4a297a0e54a737a" +PKG_VERSION="3.29.5" +PKG_SHA256="8cb8624147737d1b4587c50bf058afbb6effc0f3c205d69b5ef4077b3bfed0e4" PKG_ARCH="any" PKG_LICENSE="Mozilla Public License" PKG_SITE="http://ftp.mozilla.org/" -PKG_URL="http://ftp.mozilla.org/pub/security/nss/releases/NSS_3_27_1_RTM/src/nss-3.27.1-with-nspr-4.13.tar.gz" +PKG_URL="http://ftp.mozilla.org/pub/security/nss/releases/NSS_3_29_5_RTM/src/nss-3.29.5-with-nspr-4.13.1.tar.gz" PKG_DEPENDS_TARGET="toolchain nss:host nspr zlib" PKG_SECTION="security" PKG_SHORTDESC="The Network Security Services (NSS) package is a set of libraries designed to support cross-platform development of security-enabled client and server applications" diff --git a/packages/addons/addon-depends/nss/patches/nss-02_3.15.5-standalone-1.patch b/packages/addons/addon-depends/nss/patches/nss-02_3.15.5-standalone-1.patch index 815e634fa7..4e3217806e 100644 --- a/packages/addons/addon-depends/nss/patches/nss-02_3.15.5-standalone-1.patch +++ b/packages/addons/addon-depends/nss/patches/nss-02_3.15.5-standalone-1.patch @@ -222,12 +222,12 @@ Description: Adds auto-generated nss.pc and nss-config script, and a + --- a/nss/Makefile 2013-05-28 23:43:24.000000000 +0200 +++ b/nss/Makefile 2013-07-02 14:52:58.328084334 +0200 -@@ -44,7 +44,7 @@ +@@ -46,7 +46,7 @@ # (7) Execute "local" rules. (OPTIONAL). # ####################################################################### --nss_build_all: build_nspr all -+nss_build_all: all +-nss_build_all: build_nspr all latest ++nss_build_all: all latest nss_clean_all: clobber_nspr clobber @@ -237,5 +237,5 @@ Description: Adds auto-generated nss.pc and nss-config script, and a RELEASE = nss --DIRS = coreconf lib cmd external_tests +-DIRS = coreconf lib cmd gtests +DIRS = coreconf lib cmd config diff --git a/packages/addons/addon-depends/nss/patches/nss-03_gcc7.patch b/packages/addons/addon-depends/nss/patches/nss-03_gcc7.patch new file mode 100644 index 0000000000..5f17718ad3 --- /dev/null +++ b/packages/addons/addon-depends/nss/patches/nss-03_gcc7.patch @@ -0,0 +1,42 @@ +From a1d2ef6a8e1bc721e44640bdb85747deaf8edcca Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 19 Apr 2017 10:50:37 -0700 +Subject: [PATCH] Fix warnings found with gcc7 + +GCC7 finds more type conversion issues + +| pkix_pl_ocsprequest.c: In function 'pkix_pl_OcspRequest_Hashcode': +| pkix_pl_ocsprequest.c:92:60: error: '<<' in boolean context, did you mean '<' ? [-Werror=int-in-bool-context] +| *pHashcode = (((((extensionHash << 8) || certHash) << 8) || +| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ +| pkix_pl_ocsprequest.c:93:27: error: '<<' in boolean context, did you mean '<' ? [-Werror=int-in-bool-context] +| *pHashcode = (((((extensionHash << 8) || certHash) << 8) || +| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +| dateHash) << 8) || signerHash; +| ~~~~~~~~~~^~~~~ +| cc1: all warnings being treated as errors + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + nss/lib/libpkix/pkix_pl_nss/pki/pkix_pl_ocsprequest.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/nss/lib/libpkix/pkix_pl_nss/pki/pkix_pl_ocsprequest.c b/nss/lib/libpkix/pkix_pl_nss/pki/pkix_pl_ocsprequest.c +index 171a3d2..d5eef88 100644 +--- a/nss/lib/libpkix/pkix_pl_nss/pki/pkix_pl_ocsprequest.c ++++ b/nss/lib/libpkix/pkix_pl_nss/pki/pkix_pl_ocsprequest.c +@@ -89,7 +89,7 @@ pkix_pl_OcspRequest_Hashcode( + PKIX_HASHCODE(ocspRq->signerCert, &signerHash, plContext, + PKIX_CERTHASHCODEFAILED); + +- *pHashcode = (((((extensionHash << 8) || certHash) << 8) || ++ *pHashcode = ((PKIX_UInt32)(((PKIX_UInt32)((extensionHash << 8) || certHash) << 8) || + dateHash) << 8) || signerHash; + + cleanup: +-- +2.12.2 + + From 9260844f61f59b4c5241de1227fd361fd6d3be3a Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Thu, 15 Jun 2017 19:20:49 +0200 Subject: [PATCH 07/27] pango: update to 1.40.6 --- packages/addons/addon-depends/pango/package.mk | 4 ++-- .../addon-depends/pango/patches/pango-01_no-gtk-doc.patch | 4 ++-- .../addons/addon-depends/pango/patches/pango-02_meh.patch | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/addons/addon-depends/pango/package.mk b/packages/addons/addon-depends/pango/package.mk index 653c2ad60e..ea3c675164 100644 --- a/packages/addons/addon-depends/pango/package.mk +++ b/packages/addons/addon-depends/pango/package.mk @@ -19,8 +19,8 @@ ################################################################################ PKG_NAME="pango" -PKG_VERSION="1.40.3" -PKG_SHA256="abba8b5ce728520c3a0f1535eab19eac3c14aeef7faa5aded90017ceac2711d3" +PKG_VERSION="1.40.6" +PKG_SHA256="ca152b7383a1e9f7fd74ae96023dc6770dc5043414793bfe768ff06b6759e573" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.pango.org/" diff --git a/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch b/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch index 1a583b8406..c4b14271c7 100644 --- a/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch +++ b/packages/addons/addon-depends/pango/patches/pango-01_no-gtk-doc.patch @@ -31,8 +31,8 @@ diff -Naur pango-1.38.1/Makefile.am pango-1.38.1.patch/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to create Makefile.in. --SUBDIRS= pango pango-view examples docs tools tests build -+SUBDIRS= pango pango-view examples tools tests build +-SUBDIRS= pango pango-view examples docs tools tests win32 ++SUBDIRS= pango pango-view examples tools tests win32 EXTRA_DIST = \ autogen.sh \ diff --git a/packages/addons/addon-depends/pango/patches/pango-02_meh.patch b/packages/addons/addon-depends/pango/patches/pango-02_meh.patch index dc7b25d4e5..3b02d3ceca 100644 --- a/packages/addons/addon-depends/pango/patches/pango-02_meh.patch +++ b/packages/addons/addon-depends/pango/patches/pango-02_meh.patch @@ -4,8 +4,8 @@ diff -Naur pango-1.38.1/Makefile.am pango-1.38.1.patch/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to create Makefile.in. --SUBDIRS= pango pango-view examples tools tests build -+SUBDIRS= pango build +-SUBDIRS= pango pango-view examples tools tests win32 ++SUBDIRS= pango win32 EXTRA_DIST = \ autogen.sh \ From b4bb2fe5fe308d867c2af0b45d3a40d785481ce0 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Sat, 6 May 2017 16:32:45 +0200 Subject: [PATCH 08/27] glib: update to 2.52.3 * add missing dependency --- packages/devel/glib/package.mk | 15 +++++++++------ packages/devel/pcre/package.mk | 1 + 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/packages/devel/glib/package.mk b/packages/devel/glib/package.mk index ddaea8c44e..7f6d6ad38d 100644 --- a/packages/devel/glib/package.mk +++ b/packages/devel/glib/package.mk @@ -18,14 +18,14 @@ ################################################################################ PKG_NAME="glib" -PKG_VERSION="2.46.2" -PKG_SHA256="5031722e37036719c1a09163cc6cf7c326e4c4f1f1e074b433c156862bd733db" +PKG_VERSION="2.52.3" +PKG_SHA256="25ee7635a7c0fcd4ec91cbc3ae07c7f8f5ce621d8183511f414ded09e7e4e128" PKG_ARCH="any" PKG_LICENSE="LGPL" PKG_SITE="http://www.gtk.org/" -PKG_URL="http://ftp.gnome.org/pub/gnome/sources/glib/2.46/$PKG_NAME-$PKG_VERSION.tar.xz" -PKG_DEPENDS_TARGET="toolchain zlib libffi Python:host" -PKG_DEPENDS_HOST="libffi:host" +PKG_URL="http://ftp.gnome.org/pub/gnome/sources/glib/2.52/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_DEPENDS_TARGET="toolchain zlib libffi Python:host util-linux" +PKG_DEPENDS_HOST="libffi:host pcre:host" PKG_SECTION="devel" PKG_SHORTDESC="glib: C support library" PKG_LONGDESC="GLib is a library which includes support routines for C such as lists, trees, hashes, memory allocation, and many other things." @@ -33,7 +33,10 @@ PKG_LONGDESC="GLib is a library which includes support routines for C such as li PKG_IS_ADDON="no" PKG_AUTORECONF="yes" -PKG_CONFIGURE_OPTS_HOST="--enable-static --disable-shared" +PKG_CONFIGURE_OPTS_HOST="PCRE_LIBS=-l:libpcre.a \ + --enable-static \ + --disable-shared \ + --disable-libmount" PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_mmap_fixed_mapped=yes \ ac_cv_func_posix_getpwuid_r=yes \ ac_cv_func_posix_getgrgid_r=yes \ diff --git a/packages/devel/pcre/package.mk b/packages/devel/pcre/package.mk index d0b69a42d1..8f0a4faa02 100644 --- a/packages/devel/pcre/package.mk +++ b/packages/devel/pcre/package.mk @@ -34,6 +34,7 @@ PKG_USE_CMAKE="no" PKG_AUTORECONF="no" PKG_CONFIGURE_OPTS_HOST="--prefix=$TOOLCHAIN \ + --enable-static \ --enable-utf8 \ --enable-unicode-properties \ --with-gnu-ld" From dad8f97c02860b5aa5356b61db8b9ad001f2d8fe Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Sat, 6 May 2017 16:34:45 +0200 Subject: [PATCH 09/27] eventlicrd: gcc7 fix (PR2) * push upstream https://github.com/OpenELEC/eventlircd/pull/2 --- .../patches/eventlircd-001-PR2-fix-gcc7.patch | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 packages/sysutils/eventlircd/patches/eventlircd-001-PR2-fix-gcc7.patch diff --git a/packages/sysutils/eventlircd/patches/eventlircd-001-PR2-fix-gcc7.patch b/packages/sysutils/eventlircd/patches/eventlircd-001-PR2-fix-gcc7.patch new file mode 100644 index 0000000000..96546cc4d4 --- /dev/null +++ b/packages/sysutils/eventlircd/patches/eventlircd-001-PR2-fix-gcc7.patch @@ -0,0 +1,21 @@ +From aae3b1193025ccec332da4165d46502f9685aea4 Mon Sep 17 00:00:00 2001 +From: "Sascha Kuehndel (InuSasha)" +Date: Sat, 6 May 2017 16:08:14 +0200 +Subject: [PATCH] make fallthru explicit, fixes compile error in gcc7 + +--- + src/main.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/main.c b/src/main.c +index f6c50fa..d0fb25a 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -105,6 +105,7 @@ int main(int argc,char **argv) + { + syslog(LOG_WARNING, "the highest verbosity level is -vvv\n"); + } ++ /* FALLTHRU */ + case 'f': + foreground = true; + break; From 6abb6376e6ed1fecf0a122e3b3f91fc71e29cff6 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Sat, 6 May 2017 17:05:56 +0200 Subject: [PATCH 10/27] mysql: fix gcc7 build --- ...l-0005-pchar-fix-in-client-authtentification.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/databases/mysql/patches/mysql-0005-pchar-fix-in-client-authtentification.patch diff --git a/packages/databases/mysql/patches/mysql-0005-pchar-fix-in-client-authtentification.patch b/packages/databases/mysql/patches/mysql-0005-pchar-fix-in-client-authtentification.patch new file mode 100644 index 0000000000..bbde74e716 --- /dev/null +++ b/packages/databases/mysql/patches/mysql-0005-pchar-fix-in-client-authtentification.patch @@ -0,0 +1,11 @@ +--- a/sql-common/client_authentication.cc 2017-05-06 16:38:34.349486565 +0200 ++++ b/sql-common/client_authentication.cc 2017-05-06 16:41:32.286431336 +0200 +@@ -84,7 +84,7 @@ + + if (mysql->options.extension != NULL && + mysql->options.extension->server_public_key_path != NULL && +- mysql->options.extension->server_public_key_path != '\0') ++ *(mysql->options.extension->server_public_key_path) != '\0') + { + pub_key_file= fopen(mysql->options.extension->server_public_key_path, + "r"); From 11def32fed82312f55324d637ed830f768741f53 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Sat, 6 May 2017 16:35:33 +0200 Subject: [PATCH 11/27] gcc: update to 7.1.0 --- packages/lang/gcc/package.mk | 4 +- ...a-memory-footprint-for-arm-bug-70473.patch | 42 ------------------- 2 files changed, 2 insertions(+), 44 deletions(-) delete mode 100644 packages/lang/gcc/patches/gcc-reduce-genautomata-memory-footprint-for-arm-bug-70473.patch diff --git a/packages/lang/gcc/package.mk b/packages/lang/gcc/package.mk index 21d690321e..5efb6995bf 100644 --- a/packages/lang/gcc/package.mk +++ b/packages/lang/gcc/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="gcc" -PKG_VERSION="6.2.0" -PKG_SHA256="9944589fc722d3e66308c0ce5257788ebd7872982a718aa2516123940671b7c5" +PKG_VERSION="7.1.0" +PKG_SHA256="8a8136c235f64c6fef69cac0d73a46a1a09bb250776a050aec8f9fc880bebc17" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://gcc.gnu.org/" diff --git a/packages/lang/gcc/patches/gcc-reduce-genautomata-memory-footprint-for-arm-bug-70473.patch b/packages/lang/gcc/patches/gcc-reduce-genautomata-memory-footprint-for-arm-bug-70473.patch deleted file mode 100644 index 43e223361c..0000000000 --- a/packages/lang/gcc/patches/gcc-reduce-genautomata-memory-footprint-for-arm-bug-70473.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- trunk/gcc/config/arm/cortex-a8-neon.md 2016/08/26 10:22:08 239771 -+++ trunk/gcc/config/arm/cortex-a8-neon.md 2016/08/26 10:23:20 239772 -@@ -357,30 +357,34 @@ - (eq_attr "type" "fmuls")) - "cortex_a8_vfp,cortex_a8_vfplite*11") - -+;; Don't model a reservation for more than 15 cycles as this explodes the -+;; state space of the automaton for little gain. It is unlikely that the -+;; scheduler will find enough instructions to hide the full latency of the -+;; instructions. - (define_insn_reservation "cortex_a8_vfp_muld" 17 - (and (eq_attr "tune" "cortexa8") - (eq_attr "type" "fmuld")) -- "cortex_a8_vfp,cortex_a8_vfplite*16") -+ "cortex_a8_vfp,cortex_a8_vfplite*15") - - (define_insn_reservation "cortex_a8_vfp_macs" 21 - (and (eq_attr "tune" "cortexa8") - (eq_attr "type" "fmacs,ffmas")) -- "cortex_a8_vfp,cortex_a8_vfplite*20") -+ "cortex_a8_vfp,cortex_a8_vfplite*15") - - (define_insn_reservation "cortex_a8_vfp_macd" 26 - (and (eq_attr "tune" "cortexa8") - (eq_attr "type" "fmacd,ffmad")) -- "cortex_a8_vfp,cortex_a8_vfplite*25") -+ "cortex_a8_vfp,cortex_a8_vfplite*15") - - (define_insn_reservation "cortex_a8_vfp_divs" 37 - (and (eq_attr "tune" "cortexa8") - (eq_attr "type" "fdivs, fsqrts")) -- "cortex_a8_vfp,cortex_a8_vfplite*36") -+ "cortex_a8_vfp,cortex_a8_vfplite*15") - - (define_insn_reservation "cortex_a8_vfp_divd" 65 - (and (eq_attr "tune" "cortexa8") - (eq_attr "type" "fdivd, fsqrtd")) -- "cortex_a8_vfp,cortex_a8_vfplite*64") -+ "cortex_a8_vfp,cortex_a8_vfplite*15") - - ;; Comparisons can actually take 7 cycles sometimes instead of four, - ;; but given all the other instructions lumped into type=ffarith that From 8b9e4b9b49f54d14e753fdf6e1c5329b86149e7c Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Mon, 8 May 2017 00:44:23 +0200 Subject: [PATCH 12/27] udpxy: update to 1.0.23-9 and change to download url from homepage (newer version then sourceforge) --- .../addon-depends/network-tools-depends/udpxy/package.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/addons/addon-depends/network-tools-depends/udpxy/package.mk b/packages/addons/addon-depends/network-tools-depends/udpxy/package.mk index bf48b1289d..40ee31b8c0 100644 --- a/packages/addons/addon-depends/network-tools-depends/udpxy/package.mk +++ b/packages/addons/addon-depends/network-tools-depends/udpxy/package.mk @@ -17,12 +17,12 @@ ################################################################################ PKG_NAME="udpxy" -PKG_VERSION="1.0.23-0" -PKG_SHA256="b5b3523f20c82b0249acced317daa65ec1791ceed4e5f8f582ecf79067f41a18" +PKG_VERSION="1.0.23-9" +PKG_SHA256="6ce33b1d14a1aeab4bd2566aca112e41943df4d002a7678d9a715108e6b714bd" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.udpxy.com/download-en.html" -PKG_URL="$SOURCEFORGE_SRC/project/udpxy/udpxy/Chipmunk-1.0/${PKG_NAME}.${PKG_VERSION}-prod.tar.gz" +PKG_URL="http://www.udpxy.com/download/1_23/${PKG_NAME}.${PKG_VERSION}-prod.tar.gz" PKG_DEPENDS_TARGET="toolchain" PKG_SECTION="tools" PKG_SHORTDESC="udpxy is a UDP-to-HTTP multicast traffic relay daemon" From dfeae32652f9ea3ff3409f32273615da06f02101 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Mon, 8 May 2017 00:54:15 +0200 Subject: [PATCH 13/27] bwm-ng: gcc7 build patch switch to github source --- .../network-tools-depends/bwm-ng/package.mk | 6 +- .../patches/bwm-ng-001-static-inline.patch | 286 ++++++++++++++++++ 2 files changed, 289 insertions(+), 3 deletions(-) create mode 100644 packages/addons/addon-depends/network-tools-depends/bwm-ng/patches/bwm-ng-001-static-inline.patch diff --git a/packages/addons/addon-depends/network-tools-depends/bwm-ng/package.mk b/packages/addons/addon-depends/network-tools-depends/bwm-ng/package.mk index 7f5eaf9e20..ed1896aba6 100644 --- a/packages/addons/addon-depends/network-tools-depends/bwm-ng/package.mk +++ b/packages/addons/addon-depends/network-tools-depends/bwm-ng/package.mk @@ -18,16 +18,16 @@ PKG_NAME="bwm-ng" PKG_VERSION="0.6.1" -PKG_SHA256="027cf3c960cd96fc9ffacdf7713df62d0fc55eeef4a1388289f8a62ae5e50df0" +PKG_SHA256="613e8072b0efc2f5f790143192bca45c3c80b7ad09bff384de9bbaa57aa499b8" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.gropp.org/?id=projects&sub=bwm-ng" -PKG_URL="http://www.gropp.org/bwm-ng/bwm-ng-$PKG_VERSION.tar.gz" +PKG_URL="https://github.com/vgropp/bwm-ng/archive/v$PKG_VERSION.tar.gz" PKG_DEPENDS_TARGET="toolchain netbsd-curses libstatgrab" PKG_SECTION="network/analyzer" PKG_SHORTDESC="bwm-ng: small and simple console-based live network and disk io bandwidth monitor" PKG_LONGDESC="Bandwidth Monitor NG is a small and simple console-based live network and disk io bandwidth monitor for Linux, BSD, Solaris, Mac OS X and others." -PKG_AUTORECONF="no" +PKG_AUTORECONF="yes" PKG_CONFIGURE_OPTS_TARGET="--with-libstatgrab \ --with-time \ diff --git a/packages/addons/addon-depends/network-tools-depends/bwm-ng/patches/bwm-ng-001-static-inline.patch b/packages/addons/addon-depends/network-tools-depends/bwm-ng/patches/bwm-ng-001-static-inline.patch new file mode 100644 index 0000000000..da9ae7040c --- /dev/null +++ b/packages/addons/addon-depends/network-tools-depends/bwm-ng/patches/bwm-ng-001-static-inline.patch @@ -0,0 +1,286 @@ +From d5daf15c2098040b8b01753d3cdce8c1c79fc528 Mon Sep 17 00:00:00 2001 +From: David Seifert +Date: Fri, 10 Feb 2017 21:30:49 +0100 +Subject: [PATCH] Use `static inline` instead of `inline` + +`inline` by itself is not portably guaranteed to emit +an external definition when needed in C99. The current +code base implicitly relies on GNU89 inline semantics, +which _always_ emit an external definition. More recent +versions of GCC and Clang switch to C99/C11 inline semantics +by default, which fails with undefined references. + +See also: +* http://www.greenend.org.uk/rjk/tech/inline.html +* https://clang.llvm.org/compatibility.html#inline +* http://blahg.josefsipek.net/?p=529 +--- + src/bwm-ng.c | 4 ++-- + src/help.c | 4 ++-- + src/options.c | 16 ++++++++-------- + src/output.c | 22 +++++++++++----------- + src/process.c | 28 ++++++++++++++-------------- + 5 files changed, 37 insertions(+), 37 deletions(-) + +diff --git a/src/bwm-ng.c b/src/bwm-ng.c +index ad94ccd..c2ab0db 100644 +--- a/src/bwm-ng.c ++++ b/src/bwm-ng.c +@@ -26,7 +26,7 @@ + + /* handle interrupt signal */ + void sigint(int sig) FUNCATTR_NORETURN; +-inline void init(void); ++static inline void init(void); + + /* clear stuff and exit */ + #ifdef __STDC__ +@@ -98,7 +98,7 @@ void sigint(int sig) { + deinit(0, NULL); + } + +-inline void init(void) { ++static inline void init(void) { + if_count=0; + delay=500; + #if EXTENDED_STATS +diff --git a/src/help.c b/src/help.c +index 7fd9ca4..4853297 100644 +--- a/src/help.c ++++ b/src/help.c +@@ -24,9 +24,9 @@ + #include "global_vars.h" + #include "help.h" + +-inline void print_help_line(const char *short_c,const char * long_c,const char *descr); ++static inline void print_help_line(const char *short_c,const char * long_c,const char *descr); + +-inline void print_help_line(const char *short_c,const char * long_c,const char *descr) { ++static inline void print_help_line(const char *short_c,const char * long_c,const char *descr) { + #ifdef LONG_OPTIONS + printf(" %-23s",long_c); + #else +diff --git a/src/options.c b/src/options.c +index 1b65eeb..30dccb4 100644 +--- a/src/options.c ++++ b/src/options.c +@@ -30,12 +30,12 @@ static char* getToken(char** str, const char* delims); + char *trim_whitespace(char *str); + int read_config(const char *config_file); + #endif +-inline int str2output_unit(char *optarg); ++static inline int str2output_unit(char *optarg); + #if EXTENDED_STATS +-inline int str2output_type(char *optarg); ++static inline int str2output_type(char *optarg); + #endif +-inline int str2out_method(char *optarg); +-inline int str2in_method(char *optarg); ++static inline int str2out_method(char *optarg); ++static inline int str2in_method(char *optarg); + + #ifdef CONFIG_FILE + /****************************************************************************** +@@ -65,7 +65,7 @@ static char* getToken(char** str, const char* delims) { + /******************************************************************************/ + #endif + +-inline int str2output_unit(char *optarg) { ++static inline int str2output_unit(char *optarg) { + if (optarg) { + if (!strcasecmp(optarg,"bytes")) return BYTES_OUT; + if (!strcasecmp(optarg,"bits")) return BITS_OUT; +@@ -76,7 +76,7 @@ inline int str2output_unit(char *optarg) { + } + + #if EXTENDED_STATS +-inline int str2output_type(char *optarg) { ++static inline int str2output_type(char *optarg) { + if (optarg) { + if (!strcasecmp(optarg,"rate")) return RATE_OUT; + if (!strcasecmp(optarg,"max")) return MAX_OUT; +@@ -87,7 +87,7 @@ inline int str2output_type(char *optarg) { + } + #endif + +-inline int str2out_method(char *optarg) { ++static inline int str2out_method(char *optarg) { + if (optarg) { + if (!strcasecmp(optarg,"plain")) return PLAIN_OUT; + #ifdef HAVE_CURSES +@@ -109,7 +109,7 @@ inline int str2out_method(char *optarg) { + } + + +-inline int str2in_method(char *optarg) { ++static inline int str2in_method(char *optarg) { + if (optarg) { + #ifdef PROC_NET_DEV + if (!strcasecmp(optarg,"proc")) return PROC_IN; +diff --git a/src/output.c b/src/output.c +index 653e444..1425b3c 100644 +--- a/src/output.c ++++ b/src/output.c +@@ -25,13 +25,13 @@ + #include "output.h" + + inline static const char *output_type2str(void); +-inline const char *input2str(void); +-inline const char *show_all_if2str(void); +-inline ullong direction2value(char mode,struct inout_long stats); ++static inline const char *input2str(void); ++static inline const char *show_all_if2str(void); ++static inline ullong direction2value(char mode,struct inout_long stats); + #if EXTENDED_STATS +-inline double direction_max2value(char mode,struct inouttotal_double stats,int items); ++static inline double direction_max2value(char mode,struct inouttotal_double stats,int items); + #endif +-inline char *dyn_byte_value2str(double value,char *str,int buf_size); ++static inline char *dyn_byte_value2str(double value,char *str,int buf_size); + char *values2str(char mode,t_iface_speed_stats stats,t_iface_stats full_stats,float multiplier,char *str,int buf_size); + + inline static const char *output_type2str(void) { +@@ -59,7 +59,7 @@ inline static const char *output_type2str(void) { + } + + +-inline const char *input2str(void) { ++static inline const char *input2str(void) { + switch (input_method) { + #ifdef SYSCTL + case SYSCTL_IN: +@@ -121,7 +121,7 @@ inline const char *input2str(void) { + return ""; + } + +-inline const char *show_all_if2str(void) { ++static inline const char *show_all_if2str(void) { + switch (show_all_if) { + case 1: + return " (all)"; +@@ -262,7 +262,7 @@ int print_header(int option) { + } + + +-inline ullong direction2value(char mode,struct inout_long stats) { ++static inline ullong direction2value(char mode,struct inout_long stats) { + switch (mode) { + case 0: + return stats.in; +@@ -275,7 +275,7 @@ inline ullong direction2value(char mode,struct inout_long stats) { + } + + #if EXTENDED_STATS +-inline double direction_max2value(char mode,struct inouttotal_double stats,int items) { ++static inline double direction_max2value(char mode,struct inouttotal_double stats,int items) { + switch (mode) { + case 0: + return (double)(stats.in/items); +@@ -288,7 +288,7 @@ inline double direction_max2value(char mode,struct inouttotal_double stats,int i + } + #endif + +-inline char *dyn_byte_value2str(double value,char *str,int buf_size) { ++static inline char *dyn_byte_value2str(double value,char *str,int buf_size) { + if (dynamic) { + if (value<1024) + snprintf(str,buf_size,"%15.2f ",value); +@@ -306,7 +306,7 @@ inline char *dyn_byte_value2str(double value,char *str,int buf_size) { + return str; + } + +-inline char *dyn_bit_value2str(double value,char *str,int buf_size) { ++static inline char *dyn_bit_value2str(double value,char *str,int buf_size) { + if (dynamic) { + if (value<1000) + snprintf(str,buf_size,"%15.2f ",value); +diff --git a/src/process.c b/src/process.c +index 59eccf0..d06c6dd 100644 +--- a/src/process.c ++++ b/src/process.c +@@ -26,19 +26,19 @@ + + short show_iface(char *instr, char *searchstr,char iface_is_up); + #if HAVE_GETTIMEOFDAY +-inline long tvdiff(struct timeval newer, struct timeval older); ++static inline long tvdiff(struct timeval newer, struct timeval older); + float get_time_delay(int iface_num); + #endif +-inline ullong calc_new_values(ullong new, ullong old); ++static inline ullong calc_new_values(ullong new, ullong old); + t_iface_speed_stats convert2calced_values(t_iface_speed_stats new, t_iface_speed_stats old); + t_iface_speed_stats convert2calced_disk_values(t_iface_speed_stats new, t_iface_speed_stats old); + #if EXTENDED_STATS +-inline void sub_avg_values(struct inouttotal_double *values,struct inouttotal_double data); +-inline void add_avg_values(struct inouttotal_double *values,struct inouttotal_double data); +-inline void save_avg_values(struct inouttotal_double *values,struct inouttotal_double *data,struct inout_long calced_stats,float multiplier); ++static inline void sub_avg_values(struct inouttotal_double *values,struct inouttotal_double data); ++static inline void add_avg_values(struct inouttotal_double *values,struct inouttotal_double data); ++static inline void save_avg_values(struct inouttotal_double *values,struct inouttotal_double *data,struct inout_long calced_stats,float multiplier); + void save_avg(struct t_avg *avg,struct iface_speed_stats calced_stats,float multiplier); +-inline void save_sum(struct inout_long *stats,struct inout_long new_stats_values); +-inline void save_max(struct inouttotal_double *stats,struct inout_long calced_stats,float multiplier); ++static inline void save_sum(struct inout_long *stats,struct inout_long new_stats_values); ++static inline void save_max(struct inouttotal_double *stats,struct inout_long calced_stats,float multiplier); + #endif + + /* returns the whether to show the iface or not +@@ -74,7 +74,7 @@ short show_iface(char *instr, char *searchstr,char iface_is_up) { + + #if HAVE_GETTIMEOFDAY + /* Returns: the time difference in milliseconds. */ +-inline long tvdiff(struct timeval newer, struct timeval older) { ++static inline long tvdiff(struct timeval newer, struct timeval older) { + return labs((newer.tv_sec-older.tv_sec)*1000+ + (newer.tv_usec-older.tv_usec)/1000); + } +@@ -95,7 +95,7 @@ float get_time_delay(int iface_num) { + #endif + + /* basically new-old, but handles "overflow" of source aswell */ +-inline ullong calc_new_values(ullong new, ullong old) { ++static inline ullong calc_new_values(ullong new, ullong old) { + /* FIXME: WRAP_AROUND _might_ be wrong for libstatgrab, where the type is always long long */ + return (new>=old) ? (ullong)(new-old) : (ullong)(( + #ifdef HAVE_LIBKSTAT +@@ -136,13 +136,13 @@ t_iface_speed_stats convert2calced_disk_values(t_iface_speed_stats new, t_iface_ + + #if EXTENDED_STATS + /* sub old values from cached for avg stats */ +-inline void sub_avg_values(struct inouttotal_double *values,struct inouttotal_double data) { ++static inline void sub_avg_values(struct inouttotal_double *values,struct inouttotal_double data) { + values->in-=data.in; + values->out-=data.out; + values->total-=data.total; + } + +-inline void add_avg_values(struct inouttotal_double *values,struct inouttotal_double data) { ++static inline void add_avg_values(struct inouttotal_double *values,struct inouttotal_double data) { + values->in+=data.in; + values->out+=data.out; + values->total+=data.total; +@@ -151,7 +151,7 @@ inline void add_avg_values(struct inouttotal_double *values,struct inouttotal_do + + /* put new-old bytes in inout_long struct into a inouttotal_double struct + * and add values to cached .value struct */ +-inline void save_avg_values(struct inouttotal_double *values,struct inouttotal_double *data,struct inout_long calced_stats,float multiplier) { ++static inline void save_avg_values(struct inouttotal_double *values,struct inouttotal_double *data,struct inout_long calced_stats,float multiplier) { + data->in=calced_stats.in*multiplier; + data->out=calced_stats.out*multiplier; + data->total=(calced_stats.in+calced_stats.out)*multiplier; +@@ -201,13 +201,13 @@ void save_avg(struct t_avg *avg,struct iface_speed_stats calced_stats,float mult + } + + /* add current in and out bytes to totals struct */ +-inline void save_sum(struct inout_long *stats,struct inout_long new_stats_values) { ++static inline void save_sum(struct inout_long *stats,struct inout_long new_stats_values) { + stats->in+=new_stats_values.in; + stats->out+=new_stats_values.out; + } + + /* lookup old max values and save new if higher */ +-inline void save_max(struct inouttotal_double *stats,struct inout_long calced_stats,float multiplier) { ++static inline void save_max(struct inouttotal_double *stats,struct inout_long calced_stats,float multiplier) { + if (multiplier*calced_stats.in > stats->in) + stats->in=multiplier*calced_stats.in; + if (multiplier*calced_stats.out>stats->out) From 75b6b16d3b0f6f32bb073758aba944943335adeb Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Wed, 10 May 2017 20:00:52 +0200 Subject: [PATCH 14/27] diffutils: add gcc7 fixes and do not build man - no-man: solves a problem with help2man and "diff3 --help" in cross-compile --- .../system-tools-depends/diffutils/package.mk | 2 +- .../diffutils/patches/diffutils-001-no-man.patch | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 packages/addons/addon-depends/system-tools-depends/diffutils/patches/diffutils-001-no-man.patch diff --git a/packages/addons/addon-depends/system-tools-depends/diffutils/package.mk b/packages/addons/addon-depends/system-tools-depends/diffutils/package.mk index 6d15d6e274..4a151ace2f 100644 --- a/packages/addons/addon-depends/system-tools-depends/diffutils/package.mk +++ b/packages/addons/addon-depends/system-tools-depends/diffutils/package.mk @@ -27,7 +27,7 @@ PKG_DEPENDS_TARGET="toolchain" PKG_SECTION="tools" PKG_SHORTDESC="GNU Diffutils" PKG_LONGDESC="GNU Diffutils is a package of several programs related to finding differences between files." -PKG_AUTORECONF="no" +PKG_AUTORECONF="yes" PKG_CONFIGURE_OPTS_TARGET="--disable-nls \ --without-libsigsegv-prefix \ diff --git a/packages/addons/addon-depends/system-tools-depends/diffutils/patches/diffutils-001-no-man.patch b/packages/addons/addon-depends/system-tools-depends/diffutils/patches/diffutils-001-no-man.patch new file mode 100644 index 0000000000..297d01496e --- /dev/null +++ b/packages/addons/addon-depends/system-tools-depends/diffutils/patches/diffutils-001-no-man.patch @@ -0,0 +1,11 @@ +--- diffutils-3.5/Makefile.am.org 2017-05-24 18:54:09.404508347 +0200 ++++ diffutils-3.5/Makefile.am 2017-05-24 18:46:25.238456499 +0200 +@@ -19,7 +19,7 @@ + ALL_RECURSIVE_TARGETS = + + EXTRA_DIST = bootstrap exgettext ChangeLog-2008 cfg.mk dist-check.mk +-SUBDIRS = lib src tests doc man po gnulib-tests ++SUBDIRS = lib src tests doc po gnulib-tests + + ACLOCAL_AMFLAGS = -I m4 + AM_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS) From 21ec9080dec00997d02921525ac8e21265ff68e8 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Thu, 11 May 2017 18:24:37 +0200 Subject: [PATCH 15/27] vdr: fix gcc7 build --- .../vdr/patches/vdr-50_gcc-fixes.patch | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch diff --git a/packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch b/packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch new file mode 100644 index 0000000000..2cfe643cd0 --- /dev/null +++ b/packages/addons/addon-depends/vdr/patches/vdr-50_gcc-fixes.patch @@ -0,0 +1,108 @@ +Backport from 2.3.3 + +diff -Naur vdr-2.2.0/diseqc.c vdr-2.2.0.fixed/diseqc.c +--- vdr-2.2.0/diseqc.c 2015-01-26 13:02:14.000000000 +0100 ++++ vdr-2.2.0.fixed/diseqc.c 2017-05-11 17:47:26.770740387 +0200 +@@ -253,10 +253,10 @@ + return result; + } + +-uint cDiseqc::SetScrFrequency(uint SatFrequency, const cScr *Scr, uint8_t *Codes) const ++int cDiseqc::SetScrFrequency(int SatFrequency, const cScr *Scr, uint8_t *Codes) const + { + if ((Codes[0] & 0xF0) == 0x70 ) { // EN50607 aka JESS +- uint t = SatFrequency == 0 ? 0 : (SatFrequency - 100); ++ int t = SatFrequency == 0 ? 0 : (SatFrequency - 100); + if (t < 2048 && Scr->Channel() >= 0 && Scr->Channel() < 32) { + Codes[1] = t >> 8 | Scr->Channel() << 3; + Codes[2] = t; +@@ -266,7 +266,7 @@ + } + } + else { // EN50494 aka Unicable +- uint t = SatFrequency == 0 ? 0 : (SatFrequency + Scr->UserBand() + 2) / 4 - 350; // '+ 2' together with '/ 4' results in rounding! ++ int t = SatFrequency == 0 ? 0 : (SatFrequency + Scr->UserBand() + 2) / 4 - 350; // '+ 2' together with '/ 4' results in rounding! + if (t < 1024 && Scr->Channel() >= 0 && Scr->Channel() < 8) { + Codes[3] = t >> 8 | (t == 0 ? 0 : scrBank << 2) | Scr->Channel() << 5; + Codes[4] = t; +@@ -399,7 +399,7 @@ + return NULL; + } + +-cDiseqc::eDiseqcActions cDiseqc::Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, uint *Frequency) const ++cDiseqc::eDiseqcActions cDiseqc::Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, int *Frequency) const + { + if (!*CurrentAction) + *CurrentAction = commands; +diff -Naur vdr-2.2.0/diseqc.h vdr-2.2.0.fixed/diseqc.h +--- vdr-2.2.0/diseqc.h 2013-06-12 13:52:17.000000000 +0200 ++++ vdr-2.2.0.fixed/diseqc.h 2017-05-11 17:46:02.381565779 +0200 +@@ -86,7 +86,7 @@ + mutable int scrBank; + char *commands; + bool parsing; +- uint SetScrFrequency(uint SatFrequency, const cScr *Scr, uint8_t *Codes) const; ++ int SetScrFrequency(int SatFrequency, const cScr *Scr, uint8_t *Codes) const; + int SetScrPin(const cScr *Scr, uint8_t *Codes) const; + const char *Wait(const char *s) const; + const char *GetPosition(const char *s) const; +@@ -96,7 +96,7 @@ + cDiseqc(void); + ~cDiseqc(); + bool Parse(const char *s); +- eDiseqcActions Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, uint *Frequency) const; ++ eDiseqcActions Execute(const char **CurrentAction, uchar *Codes, uint8_t *MaxCodes, const cScr *Scr, int *Frequency) const; + ///< Parses the DiSEqC commands and returns the appropriate action code + ///< with every call. CurrentAction must be the address of a character pointer, + ///< which is initialized to NULL. This pointer is used internally while parsing +diff -Naur vdr-2.2.0/dvbdevice.c vdr-2.2.0.fixed/dvbdevice.c +--- vdr-2.2.0/dvbdevice.c 2017-05-11 17:49:21.744005466 +0200 ++++ vdr-2.2.0.fixed/dvbdevice.c 2017-05-11 17:40:40.052025008 +0200 +@@ -329,7 +329,7 @@ + void ClearEventQueue(void) const; + bool GetFrontendStatus(fe_status_t &Status) const; + cPositioner *GetPositioner(void); +- void ExecuteDiseqc(const cDiseqc *Diseqc, unsigned int *Frequency); ++ void ExecuteDiseqc(const cDiseqc *Diseqc, int *Frequency); + void ResetToneAndVoltage(void); + bool SetFrontend(void); + virtual void Action(void); +@@ -696,7 +696,7 @@ + return positioner; + } + +-void cDvbTuner::ExecuteDiseqc(const cDiseqc *Diseqc, unsigned int *Frequency) ++void cDvbTuner::ExecuteDiseqc(const cDiseqc *Diseqc, int *Frequency) + { + if (!lnbPowerTurnedOn) { + CHECK(ioctl(fd_frontend, FE_SET_VOLTAGE, SEC_VOLTAGE_13)); // must explicitly turn on LNB power +@@ -806,7 +806,7 @@ + + SETCMD(DTV_DELIVERY_SYSTEM, frontendType); + if (frontendType == SYS_DVBS || frontendType == SYS_DVBS2) { +- unsigned int frequency = channel.Frequency(); ++ int frequency = channel.Frequency(); + if (Setup.DiSEqC) { + if (const cDiseqc *diseqc = Diseqcs.Get(device->CardIndex() + 1, channel.Source(), frequency, dtp.Polarization(), &scr)) { + frequency -= diseqc->Lof(); +@@ -829,7 +829,7 @@ + } + else { + int tone = SEC_TONE_OFF; +- if (frequency < (unsigned int)Setup.LnbSLOF) { ++ if (frequency < Setup.LnbSLOF) { + frequency -= Setup.LnbFrequLo; + tone = SEC_TONE_OFF; + } +diff -Naur vdr-2.2.0/remux.c vdr-2.2.0.fixed/remux.c +--- vdr-2.2.0/remux.c 2017-05-11 17:49:21.740005437 +0200 ++++ vdr-2.2.0.fixed/remux.c 2017-05-11 17:38:29.322690063 +0200 +@@ -1627,7 +1627,7 @@ + Div += parser->IFrameTemporalReferenceOffset(); + if (Div <= 0) + Div = 1; +- uint32_t Delta = ptsValues[0] / Div; ++ int Delta = ptsValues[0] / Div; + // determine frame info: + if (isVideo) { + if (abs(Delta - 3600) <= 1) From 74fe989ea9c85e2988d86859e26f5fcd92251737 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Fri, 12 May 2017 00:18:13 +0200 Subject: [PATCH 16/27] vdr-plugin-live: fix gcc7 build --- .../patches/vdr-plugin-live-gcc7.patch | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch new file mode 100644 index 0000000000..5ec265a58e --- /dev/null +++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-live/patches/vdr-plugin-live-gcc7.patch @@ -0,0 +1,14 @@ +part of patch from Jasmin Jessich +https://github.com/jasmin-j/vdr-plugin-live/commit/b86560030911208be738163ecd0e48790c9317a1 + +--- a/pages/multischedule.ecpp 2017-05-11 18:13:21.359696377 +0200 ++++ b/pages/multischedule.ecpp 2017-05-11 18:15:13.777869558 +0200 +@@ -295,7 +295,7 @@ + cChannel* Channel = Channels.GetByNumber( chan ); + if ( ! Channel ) + continue; +- if ( Channel->GroupSep() || Channel->Name() == '\0' ) ++ if ( Channel->GroupSep() || !Channel->Name() || !*Channel->Name() ) + continue; + channel_names[ j ] = Channel->Name(); + channel_IDs[ j ] = Channel->GetChannelID(); From 7b3eef00561bb45ac85ab22f8d8d1445dfa3c21c Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Tue, 23 May 2017 11:54:30 +0200 Subject: [PATCH 17/27] u-boot: gcc7 compatiblity - clone compiler-gcc6.h (or compiler-gcc5.h both the same) --- .../patches/6e4e886/u-boot-0002-gcc7.patch | 69 +++++++++++++++++++ projects/imx6/patches/u-boot/070_gcc7.patch | 69 +++++++++++++++++++ 2 files changed, 138 insertions(+) create mode 100644 packages/tools/u-boot/patches/6e4e886/u-boot-0002-gcc7.patch create mode 100644 projects/imx6/patches/u-boot/070_gcc7.patch diff --git a/packages/tools/u-boot/patches/6e4e886/u-boot-0002-gcc7.patch b/packages/tools/u-boot/patches/6e4e886/u-boot-0002-gcc7.patch new file mode 100644 index 0000000000..ff67462703 --- /dev/null +++ b/packages/tools/u-boot/patches/6e4e886/u-boot-0002-gcc7.patch @@ -0,0 +1,69 @@ +diff -Naur u-boot-imx6-ad02f49.org/include/linux/compiler-gcc7.h u-boot-imx6-ad02f49/include/linux/compiler-gcc7.h +--- u-boot-imx6-ad02f49.org/include/linux/compiler-gcc7.h 1970-01-01 01:00:00.000000000 +0100 ++++ u-boot-imx6-ad02f49/include/linux/compiler-gcc7.h 2017-05-23 10:31:00.177476141 +0200 +@@ -0,0 +1,65 @@ ++#ifndef __LINUX_COMPILER_H ++#error "Please don't include directly, include instead." ++#endif ++ ++#define __used __attribute__((__used__)) ++#define __must_check __attribute__((warn_unused_result)) ++#define __compiler_offsetof(a, b) __builtin_offsetof(a, b) ++ ++/* Mark functions as cold. gcc will assume any path leading to a call ++ to them will be unlikely. This means a lot of manual unlikely()s ++ are unnecessary now for any paths leading to the usual suspects ++ like BUG(), printk(), panic() etc. [but let's keep them for now for ++ older compilers] ++ ++ Early snapshots of gcc 4.3 don't support this and we can't detect this ++ in the preprocessor, but we can live with this because they're unreleased. ++ Maketime probing would be overkill here. ++ ++ gcc also has a __attribute__((__hot__)) to move hot functions into ++ a special section, but I don't see any sense in this right now in ++ the kernel context */ ++#define __cold __attribute__((__cold__)) ++ ++#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) ++ ++#ifndef __CHECKER__ ++# define __compiletime_warning(message) __attribute__((warning(message))) ++# define __compiletime_error(message) __attribute__((error(message))) ++#endif /* __CHECKER__ */ ++ ++/* ++ * Mark a position in code as unreachable. This can be used to ++ * suppress control flow warnings after asm blocks that transfer ++ * control elsewhere. ++ * ++ * Early snapshots of gcc 4.5 don't support this and we can't detect ++ * this in the preprocessor, but we can live with this because they're ++ * unreleased. Really, we need to have autoconf for the kernel. ++ */ ++#define unreachable() __builtin_unreachable() ++ ++/* Mark a function definition as prohibited from being cloned. */ ++#define __noclone __attribute__((__noclone__)) ++ ++/* ++ * Tell the optimizer that something else uses this function or variable. ++ */ ++#define __visible __attribute__((externally_visible)) ++ ++/* ++ * GCC 'asm goto' miscompiles certain code sequences: ++ * ++ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670 ++ * ++ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek. ++ * ++ * (asm goto is automatically volatile - the naming reflects this.) ++ */ ++#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) ++ ++#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP ++#define __HAVE_BUILTIN_BSWAP32__ ++#define __HAVE_BUILTIN_BSWAP64__ ++#define __HAVE_BUILTIN_BSWAP16__ ++#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */ diff --git a/projects/imx6/patches/u-boot/070_gcc7.patch b/projects/imx6/patches/u-boot/070_gcc7.patch new file mode 100644 index 0000000000..ff67462703 --- /dev/null +++ b/projects/imx6/patches/u-boot/070_gcc7.patch @@ -0,0 +1,69 @@ +diff -Naur u-boot-imx6-ad02f49.org/include/linux/compiler-gcc7.h u-boot-imx6-ad02f49/include/linux/compiler-gcc7.h +--- u-boot-imx6-ad02f49.org/include/linux/compiler-gcc7.h 1970-01-01 01:00:00.000000000 +0100 ++++ u-boot-imx6-ad02f49/include/linux/compiler-gcc7.h 2017-05-23 10:31:00.177476141 +0200 +@@ -0,0 +1,65 @@ ++#ifndef __LINUX_COMPILER_H ++#error "Please don't include directly, include instead." ++#endif ++ ++#define __used __attribute__((__used__)) ++#define __must_check __attribute__((warn_unused_result)) ++#define __compiler_offsetof(a, b) __builtin_offsetof(a, b) ++ ++/* Mark functions as cold. gcc will assume any path leading to a call ++ to them will be unlikely. This means a lot of manual unlikely()s ++ are unnecessary now for any paths leading to the usual suspects ++ like BUG(), printk(), panic() etc. [but let's keep them for now for ++ older compilers] ++ ++ Early snapshots of gcc 4.3 don't support this and we can't detect this ++ in the preprocessor, but we can live with this because they're unreleased. ++ Maketime probing would be overkill here. ++ ++ gcc also has a __attribute__((__hot__)) to move hot functions into ++ a special section, but I don't see any sense in this right now in ++ the kernel context */ ++#define __cold __attribute__((__cold__)) ++ ++#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) ++ ++#ifndef __CHECKER__ ++# define __compiletime_warning(message) __attribute__((warning(message))) ++# define __compiletime_error(message) __attribute__((error(message))) ++#endif /* __CHECKER__ */ ++ ++/* ++ * Mark a position in code as unreachable. This can be used to ++ * suppress control flow warnings after asm blocks that transfer ++ * control elsewhere. ++ * ++ * Early snapshots of gcc 4.5 don't support this and we can't detect ++ * this in the preprocessor, but we can live with this because they're ++ * unreleased. Really, we need to have autoconf for the kernel. ++ */ ++#define unreachable() __builtin_unreachable() ++ ++/* Mark a function definition as prohibited from being cloned. */ ++#define __noclone __attribute__((__noclone__)) ++ ++/* ++ * Tell the optimizer that something else uses this function or variable. ++ */ ++#define __visible __attribute__((externally_visible)) ++ ++/* ++ * GCC 'asm goto' miscompiles certain code sequences: ++ * ++ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670 ++ * ++ * Work it around via a compiler barrier quirk suggested by Jakub Jelinek. ++ * ++ * (asm goto is automatically volatile - the naming reflects this.) ++ */ ++#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) ++ ++#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP ++#define __HAVE_BUILTIN_BSWAP32__ ++#define __HAVE_BUILTIN_BSWAP64__ ++#define __HAVE_BUILTIN_BSWAP16__ ++#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */ From 8dafab2f86c50ecf5b91f13c0495b575cf3f7dc2 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Fri, 2 Jun 2017 15:30:39 +0200 Subject: [PATCH 18/27] pvr.stalker: fix gcc7 build --- .../patches/pvr.stalker-001-gcc7_fix.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/mediacenter/kodi-binary-addons/pvr.stalker/patches/pvr.stalker-001-gcc7_fix.patch diff --git a/packages/mediacenter/kodi-binary-addons/pvr.stalker/patches/pvr.stalker-001-gcc7_fix.patch b/packages/mediacenter/kodi-binary-addons/pvr.stalker/patches/pvr.stalker-001-gcc7_fix.patch new file mode 100644 index 0000000000..ffad1186aa --- /dev/null +++ b/packages/mediacenter/kodi-binary-addons/pvr.stalker/patches/pvr.stalker-001-gcc7_fix.patch @@ -0,0 +1,11 @@ +--- pvr.stalker-151e3d3/src/CWatchdog.h 2017-05-22 13:38:16.000000000 +0200 ++++ pvr.stalker-151e3d3/src/CWatchdog.h 2017-06-02 09:24:34.357505179 +0200 +@@ -20,7 +20,7 @@ + * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + * + */ +- ++#include + #include + + #include "SAPI.h" From 10361fc12f859571e8033f5f349af6f9c5e18d42 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Sat, 3 Jun 2017 11:07:30 +0200 Subject: [PATCH 19/27] libretro-dinothawr: fix gcc7 build --- .../patches/libretro-dinothawr-001-gcc7-fixes.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 packages/emulation/libretro-dinothawr/patches/libretro-dinothawr-001-gcc7-fixes.patch diff --git a/packages/emulation/libretro-dinothawr/patches/libretro-dinothawr-001-gcc7-fixes.patch b/packages/emulation/libretro-dinothawr/patches/libretro-dinothawr-001-gcc7-fixes.patch new file mode 100644 index 0000000000..5e45813e32 --- /dev/null +++ b/packages/emulation/libretro-dinothawr/patches/libretro-dinothawr-001-gcc7-fixes.patch @@ -0,0 +1,10 @@ +--- libretro-dinothawr-02821dd/utils.hpp 2017-06-02 15:32:28.527780477 +0200 ++++ libretro-dinothawr-02821dd/utils.hpp 2017-06-02 15:24:23.781305524 +0200 +@@ -15,6 +15,7 @@ + #include + #include + #include ++#include + + #include + From a448c4ae725fa10633e9828acb6ff820fc6a72f3 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Tue, 30 May 2017 20:34:24 +0200 Subject: [PATCH 20/27] hyperion: fix gcc7 build --- .../hyperion/patches/hyperion-0004-fix-gcc7.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/addons/service/hyperion/patches/hyperion-0004-fix-gcc7.patch diff --git a/packages/addons/service/hyperion/patches/hyperion-0004-fix-gcc7.patch b/packages/addons/service/hyperion/patches/hyperion-0004-fix-gcc7.patch new file mode 100644 index 0000000000..5527848d74 --- /dev/null +++ b/packages/addons/service/hyperion/patches/hyperion-0004-fix-gcc7.patch @@ -0,0 +1,11 @@ +diff -Naur build.LibreELEC-Generic.x86_64-9.0-devel/org_hyperion-355a324/include/utils/Image.h build.LibreELEC-Generic.x86_64-9.0-devel/hyperion-355a324/include/utils/Image.h +--- org_hyperion-355a324/include/utils/Image.h 2016-09-06 22:58:55.000000000 +0200 ++++ hyperion-355a324/include/utils/Image.h 2017-05-30 18:18:06.043345976 +0200 +@@ -2,6 +2,7 @@ + + // STL includes + #include ++#include + #include + #include + #include From d3ce49c69b051ca36f2bacffdb5b509973f9c46b Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Tue, 8 Aug 2017 17:13:38 +0200 Subject: [PATCH 21/27] binutils: update to 2.29 --- packages/devel/binutils/package.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/devel/binutils/package.mk b/packages/devel/binutils/package.mk index cc24633341..cf44bd6db9 100644 --- a/packages/devel/binutils/package.mk +++ b/packages/devel/binutils/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="binutils" -PKG_VERSION="2.28" -PKG_SHA256="cd717966fc761d840d451dbd58d44e1e5b92949d2073d75b73fccb476d772fcf" +PKG_VERSION="2.29" +PKG_SHA256="172e8c89472cf52712fd23a9f14e9bca6182727fb45b0f8f482652a83d5a11b4" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.gnu.org/software/binutils/" From 1f93e7ef7a3b3011707ba18ab772eb1c8e18940f Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Tue, 8 Aug 2017 17:14:28 +0200 Subject: [PATCH 22/27] pvr-mediaportal: glibc 2.26 fix --- .../kodi-binary-addons/pvr.mediaportal.tvserver/package.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk b/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk index 7941467b50..78c9f6a713 100644 --- a/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk +++ b/packages/mediacenter/kodi-binary-addons/pvr.mediaportal.tvserver/package.mk @@ -34,5 +34,5 @@ PKG_IS_ADDON="yes" PKG_ADDON_TYPE="xbmc.pvrclient" pre_configure_target() { - CXXFLAGS="$CXXFLAGS -Wno-narrowing" + CXXFLAGS="$CXXFLAGS -Wno-narrowing -DXLOCALE_NOT_USED" } From 68e70b7674d65e422e78711e5360edc57620dbcd Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Tue, 8 Aug 2017 18:52:05 +0200 Subject: [PATCH 23/27] vdr-plugin-satip: fixes gcc7 build placed upstream by @CvH --- .../patches/vdr-plugin-satip-02-needs-ctype.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch new file mode 100644 index 0000000000..a70eae4fa9 --- /dev/null +++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch @@ -0,0 +1,10 @@ +--- a/satip.c 2017-08-08 16:27:16.362342364 +0200 ++++ b/satip.c 2017-08-08 16:23:32.465062777 +0200 +@@ -5,6 +5,7 @@ + * + */ + ++#include + #include + #include + #include "common.h" From 6a44ae619a858627cdf60ea63d2857d6b1cbbfe0 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Tue, 8 Aug 2017 18:52:26 +0200 Subject: [PATCH 24/27] gcc: update to gcc 7.2 --- packages/lang/gcc/package.mk | 6 +- ...tack_t-instead-of-struct-sigaltstack.patch | 160 ------------------ ...lace-struct-ucontext-with-ucontext_t.patch | 149 ---------------- 3 files changed, 3 insertions(+), 312 deletions(-) delete mode 100644 packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch delete mode 100644 packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch diff --git a/packages/lang/gcc/package.mk b/packages/lang/gcc/package.mk index 5efb6995bf..be5f19b3cd 100644 --- a/packages/lang/gcc/package.mk +++ b/packages/lang/gcc/package.mk @@ -17,12 +17,12 @@ ################################################################################ PKG_NAME="gcc" -PKG_VERSION="7.1.0" -PKG_SHA256="8a8136c235f64c6fef69cac0d73a46a1a09bb250776a050aec8f9fc880bebc17" +PKG_VERSION="7.2.0" +PKG_SHA256="1cf7adf8ff4b5aa49041c8734bbcf1ad18cc4c94d0029aae0f4e48841088479a" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://gcc.gnu.org/" -PKG_URL="http://ftpmirror.gnu.org/gcc/$PKG_NAME-$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.bz2" +PKG_URL="http://ftpmirror.gnu.org/gcc/$PKG_NAME-$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.xz" PKG_DEPENDS_BOOTSTRAP="ccache:host autoconf:host binutils:host gmp:host mpfr:host mpc:host" PKG_DEPENDS_TARGET="gcc:host" PKG_DEPENDS_HOST="ccache:host autoconf:host binutils:host gmp:host mpfr:host mpc:host glibc" diff --git a/packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch b/packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch deleted file mode 100644 index ee15c6cac8..0000000000 --- a/packages/lang/gcc/patches/gcc-0001-Use-stack_t-instead-of-struct-sigaltstack.patch +++ /dev/null @@ -1,160 +0,0 @@ -From 4c07606bb77bbd30f02adb947d480516da3fa3f7 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 11 Jun 2017 10:09:13 -0700 -Subject: [PATCH] libsanitizer: Use stack_t instead of struct sigaltstack - -Upstream-Status: Submitted - -Signed-off-by: Khem Raj ---- - libsanitizer/sanitizer_common/sanitizer_linux.cc | 4 ++-- - libsanitizer/sanitizer_common/sanitizer_linux.h | 6 +++--- - .../sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | 3 ++- - 3 files changed, 7 insertions(+), 6 deletions(-) - -Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.cc -=================================================================== ---- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_linux.cc -+++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.cc -@@ -14,6 +14,10 @@ - - #if SANITIZER_FREEBSD || SANITIZER_LINUX - -+#if !SANITIZER_ANDROID -+#include -+#endif -+ - #include "sanitizer_common.h" - #include "sanitizer_flags.h" - #include "sanitizer_internal_defs.h" -@@ -71,10 +75,6 @@ extern "C" { - extern char **environ; // provided by crt1 - #endif // SANITIZER_FREEBSD - --#if !SANITIZER_ANDROID --#include --#endif -- - #if SANITIZER_LINUX - // - struct kernel_timeval { -@@ -605,8 +605,8 @@ uptr internal_prctl(int option, uptr arg - } - #endif - --uptr internal_sigaltstack(const struct sigaltstack *ss, -- struct sigaltstack *oss) { -+uptr internal_sigaltstack(const stack_t *ss, -+ stack_t *oss) { - return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss); - } - -Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.h -=================================================================== ---- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_linux.h -+++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux.h -@@ -19,7 +19,10 @@ - #include "sanitizer_platform_limits_posix.h" - - struct link_map; // Opaque type returned by dlopen(). --struct sigaltstack; -+ -+#ifndef __stack_t_defined -+struct stack_t; -+#endif - - namespace __sanitizer { - // Dirent structure for getdents(). Note that this structure is different from -@@ -28,8 +31,8 @@ struct linux_dirent; - - // Syscall wrappers. - uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count); --uptr internal_sigaltstack(const struct sigaltstack* ss, -- struct sigaltstack* oss); -+uptr internal_sigaltstack(const stack_t* ss, -+ stack_t* oss); - uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set, - __sanitizer_sigset_t *oldset); - -Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc -=================================================================== ---- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc -+++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc -@@ -16,6 +16,7 @@ - defined(__aarch64__) || defined(__powerpc64__) || \ - defined(__s390__)) - -+#include - #include "sanitizer_stoptheworld.h" - - #include "sanitizer_platform_limits_posix.h" -@@ -273,7 +274,7 @@ static int TracerThread(void* argument) - - // Alternate stack for signal handling. - InternalScopedBuffer handler_stack_memory(kHandlerStackSize); -- struct sigaltstack handler_stack; -+ stack_t handler_stack; - internal_memset(&handler_stack, 0, sizeof(handler_stack)); - handler_stack.ss_sp = handler_stack_memory.data(); - handler_stack.ss_size = kHandlerStackSize; -Index: gcc-7.1.0/libsanitizer/tsan/tsan_platform_linux.cc -=================================================================== ---- gcc-7.1.0.orig/libsanitizer/tsan/tsan_platform_linux.cc -+++ gcc-7.1.0/libsanitizer/tsan/tsan_platform_linux.cc -@@ -14,6 +14,7 @@ - #include "sanitizer_common/sanitizer_platform.h" - #if SANITIZER_LINUX || SANITIZER_FREEBSD - -+#include - #include "sanitizer_common/sanitizer_common.h" - #include "sanitizer_common/sanitizer_libc.h" - #include "sanitizer_common/sanitizer_linux.h" -@@ -28,7 +29,6 @@ - - #include - #include --#include - #include - #include - #include -@@ -287,7 +287,7 @@ void InitializePlatform() { - int ExtractResolvFDs(void *state, int *fds, int nfd) { - #if SANITIZER_LINUX && !SANITIZER_ANDROID - int cnt = 0; -- __res_state *statp = (__res_state*)state; -+ res_state statp = (res_state)state; - for (int i = 0; i < MAXNS && cnt < nfd; i++) { - if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1) - fds[cnt++] = statp->_u._ext.nssocks[i]; -Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc -=================================================================== ---- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc -+++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc -@@ -14,6 +14,7 @@ - - #if SANITIZER_FREEBSD || SANITIZER_LINUX - -+#include - #include "sanitizer_allocator_internal.h" - #include "sanitizer_atomic.h" - #include "sanitizer_common.h" -@@ -30,7 +31,6 @@ - - #include - #include --#include - #include - #include - -Index: gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc -=================================================================== ---- gcc-7.1.0.orig/libsanitizer/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc -+++ gcc-7.1.0/libsanitizer/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cc -@@ -12,6 +12,7 @@ - - #include "sanitizer_platform.h" - #if SANITIZER_POSIX -+#include - #include "sanitizer_allocator_internal.h" - #include "sanitizer_common.h" - #include "sanitizer_flags.h" diff --git a/packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch b/packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch deleted file mode 100644 index e814992e44..0000000000 --- a/packages/lang/gcc/patches/gcc-0002-replace-struct-ucontext-with-ucontext_t.patch +++ /dev/null @@ -1,149 +0,0 @@ -From 7b3cb36ab07d0c36b500bb5d0548b190d4b5a9f6 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 28 Jun 2017 00:25:57 -0700 -Subject: [PATCH 50/50] replace struct ucontext with ucontext_t - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - libgcc/config/aarch64/linux-unwind.h | 2 +- - libgcc/config/alpha/linux-unwind.h | 2 +- - libgcc/config/bfin/linux-unwind.h | 2 +- - libgcc/config/i386/linux-unwind.h | 4 ++-- - libgcc/config/pa/linux-unwind.h | 2 +- - libgcc/config/riscv/linux-unwind.h | 2 +- - libgcc/config/sh/linux-unwind.h | 2 +- - libgcc/config/tilepro/linux-unwind.h | 2 +- - libgcc/config/xtensa/linux-unwind.h | 2 +- - 9 files changed, 10 insertions(+), 10 deletions(-) - -diff --git a/libgcc/config/aarch64/linux-unwind.h b/libgcc/config/aarch64/linux-unwind.h -index d5d6980442f..d46d5f53be3 100644 ---- a/libgcc/config/aarch64/linux-unwind.h -+++ b/libgcc/config/aarch64/linux-unwind.h -@@ -55,7 +55,7 @@ aarch64_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe - { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - }; - - struct rt_sigframe *rt_; -diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h -index a91a5f4fe26..7202516581d 100644 ---- a/libgcc/config/alpha/linux-unwind.h -+++ b/libgcc/config/alpha/linux-unwind.h -@@ -51,7 +51,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - sc = &rt_->uc.uc_mcontext; - } -diff --git a/libgcc/config/bfin/linux-unwind.h b/libgcc/config/bfin/linux-unwind.h -index 9412c7652b8..37e9feb6965 100644 ---- a/libgcc/config/bfin/linux-unwind.h -+++ b/libgcc/config/bfin/linux-unwind.h -@@ -52,7 +52,7 @@ bfin_fallback_frame_state (struct _Unwind_Context *context, - void *puc; - char retcode[8]; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - - /* The void * cast is necessary to avoid an aliasing warning. -diff --git a/libgcc/config/i386/linux-unwind.h b/libgcc/config/i386/linux-unwind.h -index b1d5040a687..2009ad72260 100644 ---- a/libgcc/config/i386/linux-unwind.h -+++ b/libgcc/config/i386/linux-unwind.h -@@ -58,7 +58,7 @@ x86_64_fallback_frame_state (struct _Unwind_Context *context, - if (*(unsigned char *)(pc+0) == 0x48 - && *(unsigned long long *)(pc+1) == RT_SIGRETURN_SYSCALL) - { -- struct ucontext *uc_ = context->cfa; -+ ucontext_t *uc_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem - because it does not alias anything. */ -@@ -138,7 +138,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context, - siginfo_t *pinfo; - void *puc; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem -diff --git a/libgcc/config/pa/linux-unwind.h b/libgcc/config/pa/linux-unwind.h -index 580c18dad69..c2c3409bcc1 100644 ---- a/libgcc/config/pa/linux-unwind.h -+++ b/libgcc/config/pa/linux-unwind.h -@@ -80,7 +80,7 @@ pa32_fallback_frame_state (struct _Unwind_Context *context, - struct sigcontext *sc; - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *frame; - - /* rt_sigreturn trampoline: -diff --git a/libgcc/config/riscv/linux-unwind.h b/libgcc/config/riscv/linux-unwind.h -index a051a2869d4..1c8aeff7ef0 100644 ---- a/libgcc/config/riscv/linux-unwind.h -+++ b/libgcc/config/riscv/linux-unwind.h -@@ -42,7 +42,7 @@ riscv_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe - { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - }; - - struct rt_sigframe *rt_; -diff --git a/libgcc/config/sh/linux-unwind.h b/libgcc/config/sh/linux-unwind.h -index 1038caeb5c3..a8c98220282 100644 ---- a/libgcc/config/sh/linux-unwind.h -+++ b/libgcc/config/sh/linux-unwind.h -@@ -82,7 +82,7 @@ sh_fallback_frame_state (struct _Unwind_Context *context, - { - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_ = context->cfa; - /* The void * cast is necessary to avoid an aliasing warning. - The aliasing warning is correct, but should not be a problem -diff --git a/libgcc/config/tilepro/linux-unwind.h b/libgcc/config/tilepro/linux-unwind.h -index a8dc4405715..dba3b410279 100644 ---- a/libgcc/config/tilepro/linux-unwind.h -+++ b/libgcc/config/tilepro/linux-unwind.h -@@ -61,7 +61,7 @@ tile_fallback_frame_state (struct _Unwind_Context *context, - struct rt_sigframe { - unsigned char save_area[C_ABI_SAVE_AREA_SIZE]; - siginfo_t info; -- struct ucontext uc; -+ ucontext_t uc; - } *rt_; - - /* Return if this is not a signal handler. */ -diff --git a/libgcc/config/xtensa/linux-unwind.h b/libgcc/config/xtensa/linux-unwind.h -index 67c272820d0..b37b8b31bbf 100644 ---- a/libgcc/config/xtensa/linux-unwind.h -+++ b/libgcc/config/xtensa/linux-unwind.h -@@ -67,7 +67,7 @@ xtensa_fallback_frame_state (struct _Unwind_Context *context, - - struct rt_sigframe { - siginfo_t info; -- struct ucontext uc; -+ struct ucontext_t uc; - } *rt_; - - /* movi a2, __NR_rt_sigreturn; syscall */ --- -2.13.2 - From 4fef8ae16b2f9cf0b205c4815fc930e25d9b531d Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Sat, 12 Aug 2017 14:47:08 +0200 Subject: [PATCH 25/27] glib: update to 2.53.5 --- packages/devel/glib/package.mk | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/packages/devel/glib/package.mk b/packages/devel/glib/package.mk index 7f6d6ad38d..78d515e003 100644 --- a/packages/devel/glib/package.mk +++ b/packages/devel/glib/package.mk @@ -18,12 +18,12 @@ ################################################################################ PKG_NAME="glib" -PKG_VERSION="2.52.3" -PKG_SHA256="25ee7635a7c0fcd4ec91cbc3ae07c7f8f5ce621d8183511f414ded09e7e4e128" +PKG_VERSION="2.53.5" +PKG_SHA256="991421f41a4ed4cc1637e5f9db0d03fd236d2cbd19f3c5b097a343bec5126602" PKG_ARCH="any" PKG_LICENSE="LGPL" PKG_SITE="http://www.gtk.org/" -PKG_URL="http://ftp.gnome.org/pub/gnome/sources/glib/2.52/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_URL="http://ftp.gnome.org/pub/gnome/sources/glib/${PKG_VERSION%.*}/$PKG_NAME-$PKG_VERSION.tar.xz" PKG_DEPENDS_TARGET="toolchain zlib libffi Python:host util-linux" PKG_DEPENDS_HOST="libffi:host pcre:host" PKG_SECTION="devel" @@ -37,11 +37,7 @@ PKG_CONFIGURE_OPTS_HOST="PCRE_LIBS=-l:libpcre.a \ --enable-static \ --disable-shared \ --disable-libmount" -PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_mmap_fixed_mapped=yes \ - ac_cv_func_posix_getpwuid_r=yes \ - ac_cv_func_posix_getgrgid_r=yes \ - ac_cv_func_printf_unix98=yes \ - ac_cv_func_snprintf_c99=yes \ +PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_snprintf_c99=yes \ ac_cv_func_vsnprintf_c99=yes \ glib_cv_stack_grows=no \ glib_cv_uscore=no \ @@ -51,6 +47,7 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_mmap_fixed_mapped=yes \ --enable-xattr \ --disable-libelf \ --disable-gtk-doc \ + --disable-gtk-doc-html \ --disable-man \ --disable-dtrace \ --disable-systemtap \ From 05a53263fb9761521d25a072351fa61ea9c978d6 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Wed, 16 Aug 2017 20:24:01 +0200 Subject: [PATCH 26/27] glib: fix build with long shebangs shebang length is limited in the kernel by BINPRM_BUF_SIZE, set in include/linux/binfmts.h solution found by @MilhouseVH --- packages/devel/glib/package.mk | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/devel/glib/package.mk b/packages/devel/glib/package.mk index 78d515e003..b18f278171 100644 --- a/packages/devel/glib/package.mk +++ b/packages/devel/glib/package.mk @@ -36,7 +36,8 @@ PKG_AUTORECONF="yes" PKG_CONFIGURE_OPTS_HOST="PCRE_LIBS=-l:libpcre.a \ --enable-static \ --disable-shared \ - --disable-libmount" + --disable-libmount \ + --with-python=python" PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_snprintf_c99=yes \ ac_cv_func_vsnprintf_c99=yes \ glib_cv_stack_grows=no \ @@ -54,7 +55,8 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_snprintf_c99=yes \ --enable-Bsymbolic \ --with-gnu-ld \ --with-threads=posix \ - --with-pcre=internal" + --with-pcre=internal \ + --with-python=python" post_makeinstall_target() { mkdir -p $SYSROOT_PREFIX/usr/lib/pkgconfig From b61ed4cfc0b4099f5b6af0a22d9461a2a3eecf44 Mon Sep 17 00:00:00 2001 From: "Sascha Kuehndel (InuSasha)" Date: Thu, 17 Aug 2017 20:01:11 +0200 Subject: [PATCH 27/27] vdr-plugin-satip: update to ee88aad --- .../vdr-plugins/vdr-plugin-satip/package.mk | 4 ++-- .../patches/vdr-plugin-satip-02-needs-ctype.patch | 10 ---------- 2 files changed, 2 insertions(+), 12 deletions(-) delete mode 100644 packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk index 1134e91c71..d1cb9b114f 100644 --- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk +++ b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/package.mk @@ -17,8 +17,8 @@ ################################################################################ PKG_NAME="vdr-plugin-satip" -PKG_VERSION="ed99cfb" -PKG_SHA256="279a31fb7550280afdb7508e463dbc750751aa03213aeeb6a27e96869ec68337" +PKG_VERSION="ee88aad" +PKG_SHA256="340fa7366b63ec6760f41c204a993df336e2f571c2ff6b8cb5517ceccbc0e249" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.saunalahti.fi/~rahrenbe/vdr/satip/" diff --git a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch b/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch deleted file mode 100644 index a70eae4fa9..0000000000 --- a/packages/addons/addon-depends/vdr-plugins/vdr-plugin-satip/patches/vdr-plugin-satip-02-needs-ctype.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/satip.c 2017-08-08 16:27:16.362342364 +0200 -+++ b/satip.c 2017-08-08 16:23:32.465062777 +0200 -@@ -5,6 +5,7 @@ - * - */ - -+#include - #include - #include - #include "common.h"