From 862a48775e383f15e2e1227f8e26f643877e5a9d Mon Sep 17 00:00:00 2001 From: gixxpunk Date: Tue, 3 Oct 2017 14:51:01 +0200 Subject: [PATCH] - update several host-tools, devel-tools and some downloads --- .../u-boot-fix-build-error-under-gcc6.patch | 91 ------------------- ...oot-rsa-Fix-build-with-OpenSSL-1.1.x.patch | 86 ------------------ archive-patches/u-boot-support-gcc5.patch | 90 ------------------ make/archives.mk | 13 ++- make/bootstrap.mk | 22 ++--- make/devel-tools.mk | 8 +- make/system-tools.mk | 23 ++--- 7 files changed, 35 insertions(+), 298 deletions(-) delete mode 100644 archive-patches/u-boot-fix-build-error-under-gcc6.patch delete mode 100755 archive-patches/u-boot-rsa-Fix-build-with-OpenSSL-1.1.x.patch delete mode 100644 archive-patches/u-boot-support-gcc5.patch diff --git a/archive-patches/u-boot-fix-build-error-under-gcc6.patch b/archive-patches/u-boot-fix-build-error-under-gcc6.patch deleted file mode 100644 index 18c5e748..00000000 --- a/archive-patches/u-boot-fix-build-error-under-gcc6.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 07373b2e477ae61f9f6a0e2eff41be3276d92923 Mon Sep 17 00:00:00 2001 -From: yocto -Date: Thu, 2 Jun 2016 03:21:51 -0500 -Subject: [PATCH] fix build error under gcc6 - -Fix the following error: -| ../include/linux/compiler-gcc.h:114:30: fatal error: linux/compiler-gcc6.h: No such file or directory -| #include gcc_header(__GNUC__) - -Signed-off-by: Zhenhua Luo - -Upstream-Status: Pending ---- - include/linux/compiler-gcc6.h | 65 +++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 65 insertions(+) - create mode 100644 include/linux/compiler-gcc6.h - -diff --git a/include/linux/compiler-gcc6.h b/include/linux/compiler-gcc6.h -new file mode 100644 -index 0000000..c8c5659 ---- /dev/null -+++ b/include/linux/compiler-gcc6.h -@@ -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 */ --- -2.5.0 - diff --git a/archive-patches/u-boot-rsa-Fix-build-with-OpenSSL-1.1.x.patch b/archive-patches/u-boot-rsa-Fix-build-with-OpenSSL-1.1.x.patch deleted file mode 100755 index 8227ef61..00000000 --- a/archive-patches/u-boot-rsa-Fix-build-with-OpenSSL-1.1.x.patch +++ /dev/null @@ -1,86 +0,0 @@ -diff --git a/lib/rsa/rsa-sign.c b/lib/rsa/rsa-sign.c -index 8c6637e328..965fb00f95 100644 ---- a/lib/rsa/rsa-sign.c -+++ b/lib/rsa/rsa-sign.c -@@ -20,6 +20,19 @@ - #define HAVE_ERR_REMOVE_THREAD_STATE - #endif - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+void RSA_get0_key(const RSA *r, -+ const BIGNUM **n, const BIGNUM **e, const BIGNUM **d) -+{ -+ if (n != NULL) -+ *n = r->n; -+ if (e != NULL) -+ *e = r->e; -+ if (d != NULL) -+ *d = r->d; -+} -+#endif -+ - static int rsa_err(const char *msg) - { - unsigned long sslErr = ERR_get_error(); -@@ -409,7 +422,11 @@ static int rsa_sign_with_key(RSA *rsa, struct checksum_algo *checksum_algo, - ret = rsa_err("Could not obtain signature"); - goto err_sign; - } -- EVP_MD_CTX_cleanup(context); -+ #if OPENSSL_VERSION_NUMBER < 0x10100000L -+ EVP_MD_CTX_cleanup(context); -+ #else -+ EVP_MD_CTX_reset(context); -+ #endif - EVP_MD_CTX_destroy(context); - EVP_PKEY_free(key); - -@@ -479,6 +496,7 @@ static int rsa_get_exponent(RSA *key, uint64_t *e) - { - int ret; - BIGNUM *bn_te; -+ const BIGNUM *key_e; - uint64_t te; - - ret = -EINVAL; -@@ -487,17 +505,18 @@ static int rsa_get_exponent(RSA *key, uint64_t *e) - if (!e) - goto cleanup; - -- if (BN_num_bits(key->e) > 64) -+ RSA_get0_key(key, NULL, &key_e, NULL); -+ if (BN_num_bits(key_e) > 64) - goto cleanup; - -- *e = BN_get_word(key->e); -+ *e = BN_get_word(key_e); - -- if (BN_num_bits(key->e) < 33) { -+ if (BN_num_bits(key_e) < 33) { - ret = 0; - goto cleanup; - } - -- bn_te = BN_dup(key->e); -+ bn_te = BN_dup(key_e); - if (!bn_te) - goto cleanup; - -@@ -527,6 +546,7 @@ int rsa_get_params(RSA *key, uint64_t *exponent, uint32_t *n0_invp, - { - BIGNUM *big1, *big2, *big32, *big2_32; - BIGNUM *n, *r, *r_squared, *tmp; -+ const BIGNUM *key_n; - BN_CTX *bn_ctx = BN_CTX_new(); - int ret = 0; - -@@ -548,7 +568,8 @@ int rsa_get_params(RSA *key, uint64_t *exponent, uint32_t *n0_invp, - if (0 != rsa_get_exponent(key, exponent)) - ret = -1; - -- if (!BN_copy(n, key->n) || !BN_set_word(big1, 1L) || -+ RSA_get0_key(key, NULL, &key_n, NULL); -+ if (!BN_copy(n, key_n) || !BN_set_word(big1, 1L) || - !BN_set_word(big2, 2L) || !BN_set_word(big32, 32L)) - ret = -1; - diff --git a/archive-patches/u-boot-support-gcc5.patch b/archive-patches/u-boot-support-gcc5.patch deleted file mode 100644 index c269df06..00000000 --- a/archive-patches/u-boot-support-gcc5.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 3afcde1104f3fa9102911467929d5752eff484aa Mon Sep 17 00:00:00 2001 -From: Chunrong Guo -Date: Thu, 29 Oct 2015 03:18:58 -0500 -Subject: [PATCH] uboot : support gcc5 - - -Fixed the following build errors with gcc5: - |error: linux/compiler-gcc5.h: No such file or directory - -Upstream-Status: Pending - ---- - include/linux/compiler-gcc5.h | 65 +++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 65 insertions(+) - create mode 100644 include/linux/compiler-gcc5.h - -diff --git a/include/linux/compiler-gcc5.h b/include/linux/compiler-gcc5.h -new file mode 100644 -index 0000000..c8c5659 ---- /dev/null -+++ b/include/linux/compiler-gcc5.h -@@ -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 */ --- -2.3.3 - diff --git a/make/archives.mk b/make/archives.mk index b484c653..ac885c58 100644 --- a/make/archives.mk +++ b/make/archives.mk @@ -36,8 +36,13 @@ LIBTIRPC_VER=1.0.1 $(ARCHIVE)/libtirpc-$(LIBTIRPC_VER).tar.bz2: $(WGET) http://sourceforge.net/projects/libtirpc/files/libtirpc/$(LIBTIRPC_VER)/libtirpc-$(LIBTIRPC_VER).tar.bz2 -$(ARCHIVE)/strace-4.8.tar.xz: - $(WGET) http://sourceforge.net/projects/strace/files/strace/4.8/strace-4.8.tar.xz +STRACE_VER=4.8 +$(ARCHIVE)/strace-$(STRACE_VER).tar.xz: + $(WGET) http://sourceforge.net/projects/strace/files/strace/$(STRACE_VER)/strace-$(STRACE_VER).tar.xz + +MTD-UTILS_VER=2.0.1 +$(ARCHIVE)/mtd-utils-$(MTD-UTILS_VER).tar.bz2: + $(WGET) ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-$(MTD-UTILS_VER).tar.bz2 PARTED_VER=3.2 $(ARCHIVE)/parted-$(PARTED_VER).tar.xz: @@ -226,7 +231,7 @@ NANO_VER_MAJ=2.8 $(ARCHIVE)/nano-$(NANO_VER).tar.gz: $(WGET) http://www.nano-editor.org/dist/v$(NANO_VER_MAJ)/nano-$(NANO_VER).tar.gz -MINICOM_VER=2.7 +MINICOM_VER=2.7.1 $(ARCHIVE)/minicom-$(MINICOM_VER).tar.gz: $(WGET) http://fossies.org/linux/misc/minicom-$(MINICOM_VER).tar.gz @@ -312,7 +317,7 @@ CORTEX-STRINGS_VER=48fd30c346ff2ab14ca574b770b5c1bcbefadba8 $(ARCHIVE)/cortex-strings-$(CORTEX-STRINGS_VER).tar.bz2: get-git-archive.sh http://git.linaro.org/git-ro/toolchain/cortex-strings.git $(CORTEX-STRINGS_VER) $(notdir $@) $(ARCHIVE) -U_BOOT_VER=2015.01 +U_BOOT_VER=2017.09 $(ARCHIVE)/u-boot-$(U_BOOT_VER).tar.bz2: $(WGET) ftp://ftp.denx.de/pub/u-boot/u-boot-$(U_BOOT_VER).tar.bz2 diff --git a/make/bootstrap.mk b/make/bootstrap.mk index c146325c..93dc936f 100644 --- a/make/bootstrap.mk +++ b/make/bootstrap.mk @@ -106,7 +106,8 @@ pkg-config: $(HOSTPREFIX)/bin/pkg-config $(HOSTPREFIX)/bin/pkg-config: $(ARCHIVE)/pkg-config-$(PKGCONF_VER).tar.gz | $(HOSTPREFIX)/bin pkg-config-preqs $(UNTAR)/pkg-config-$(PKGCONF_VER).tar.gz set -e; cd $(BUILD_TMP)/pkg-config-$(PKGCONF_VER); \ - ./configure --with-pc_path=$(PKG_CONFIG_PATH); \ + ./configure \ + --with-pc_path=$(PKG_CONFIG_PATH); \ $(MAKE); \ cp -a pkg-config $(HOSTPREFIX)/bin; \ ln -sf pkg-config $(HOSTPREFIX)/bin/arm-cx2450x-linux-gnueabi-pkg-config @@ -116,10 +117,9 @@ $(HOSTPREFIX)/bin/pkg-config: $(ARCHIVE)/pkg-config-$(PKGCONF_VER).tar.gz | $(HO mkfs.jffs2: $(HOSTPREFIX)/bin/mkfs.jffs2 sumtool: $(HOSTPREFIX)/bin/sumtool $(HOSTPREFIX)/bin/mkfs.jffs2 \ -$(HOSTPREFIX)/bin/sumtool: | $(HOSTPREFIX)/bin - git clone git://git.infradead.org/mtd-utils.git $(BUILD_TMP)/mtd-utils && \ - pushd $(BUILD_TMP)/mtd-utils && \ - ./autogen.sh -fi && \ +$(HOSTPREFIX)/bin/sumtool: $(ARCHIVE)/mtd-utils-$(MTD-UTILS_VER).tar.bz2 | $(HOSTPREFIX)/bin + $(UNTAR)/mtd-utils-$(MTD-UTILS_VER).tar.bz2 + pushd $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER) && \ ./configure \ ZLIB_CFLAGS=" " \ ZLIB_LIBS="-lz" \ @@ -127,19 +127,17 @@ $(HOSTPREFIX)/bin/sumtool: | $(HOSTPREFIX)/bin UUID_LIBS="-luuid" \ --enable-silent-rules \ --without-ubifs \ + --without-xattr \ --disable-tests && \ - $(MAKE) WITHOUT_XATTR=1 - install -D -m 0755 $(BUILD_TMP)/mtd-utils/sumtool $(HOSTPREFIX)/bin/ - install -D -m 0755 $(BUILD_TMP)/mtd-utils/mkfs.jffs2 $(HOSTPREFIX)/bin/ - $(REMOVE)/mtd-utils + $(MAKE) + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/sumtool $(HOSTPREFIX)/bin/ + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/mkfs.jffs2 $(HOSTPREFIX)/bin/ + $(REMOVE)/mtd-utils-$(MTD-UTILS_VER) mkimage: $(HOSTPREFIX)/bin/mkimage $(HOSTPREFIX)/bin/mkimage: $(ARCHIVE)/u-boot-$(U_BOOT_VER).tar.bz2 | $(HOSTPREFIX)/bin $(UNTAR)/u-boot-$(U_BOOT_VER).tar.bz2 pushd $(BUILD_TMP)/u-boot-$(U_BOOT_VER) && \ - $(PATCH)/u-boot-fix-build-error-under-gcc6.patch && \ - $(PATCH)/u-boot-support-gcc5.patch && \ - $(PATCH)/u-boot-rsa-Fix-build-with-OpenSSL-1.1.x.patch && \ $(MAKE) defconfig && \ $(MAKE) silentoldconfig && \ $(MAKE) tools-only diff --git a/make/devel-tools.mk b/make/devel-tools.mk index 6bdb1776..761710d1 100644 --- a/make/devel-tools.mk +++ b/make/devel-tools.mk @@ -45,9 +45,9 @@ $(D)/valgrind-hd1: # strace 4.9 needs newer kernel or at least a kernel-patch # https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=79b5dc0c64d88cda3da23b2e22a5cec0964372ac -$(D)/strace: $(ARCHIVE)/strace-4.8.tar.xz | $(TARGETPREFIX) - $(UNTAR)/strace-4.8.tar.xz - cd $(BUILD_TMP)/strace-4.8 && \ +$(D)/strace: $(ARCHIVE)/strace-$(STRACE_VER).tar.xz | $(TARGETPREFIX) + $(UNTAR)/strace-$(STRACE_VER).tar.xz + cd $(BUILD_TMP)/strace-$(STRACE_VER) && \ $(CONFIGURE) \ --prefix= \ --mandir=$(BUILD_TMP)/.remove \ @@ -56,7 +56,7 @@ $(D)/strace: $(ARCHIVE)/strace-4.8.tar.xz | $(TARGETPREFIX) make install prefix=$(TARGETPREFIX) rm $(TARGETPREFIX)/bin/strace-graph rm $(TARGETPREFIX)/bin/strace-log-merge - $(REMOVE)/strace-4.8 + $(REMOVE)/strace-$(STRACE_VER) touch $@ $(D)/gdb: $(ARCHIVE)/gdb-$(GDB_VER).tar.xz $(D)/zlib $(D)/libncurses | $(TARGETPREFIX) diff --git a/make/system-tools.mk b/make/system-tools.mk index 2c3efe36..178caaa4 100644 --- a/make/system-tools.mk +++ b/make/system-tools.mk @@ -84,26 +84,27 @@ $(D)/timezone: $(ARCHIVE)/tzdata$(TZDATA_VER).tar.gz | $(TARGETPREFIX) $(REMOVE)/timezone touch $@ -$(D)/mtd-utils: $(D)/zlib $(D)/lzo $(D)/e2fsprogs | $(TARGETPREFIX) - git clone git://git.infradead.org/mtd-utils.git $(BUILD_TMP)/mtd-utils && \ - pushd $(BUILD_TMP)/mtd-utils && \ +$(D)/mtd-utils: $(D)/zlib $(D)/lzo $(D)/e2fsprogs $(ARCHIVE)/mtd-utils-$(MTD-UTILS_VER).tar.bz2 | $(TARGETPREFIX) + $(UNTAR)/mtd-utils-$(MTD-UTILS_VER).tar.bz2 + pushd $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER) && \ $(CONFIGURE) \ --prefix= \ --target=$(TARGET) \ --mandir=/.remove \ --enable-silent-rules \ --disable-tests \ + --without-xattr \ && \ - $(MAKE) WITHOUT_XATTR=1 + $(MAKE) ifeq ($(BOXSERIES), hd2) - install -D -m 0755 $(BUILD_TMP)/mtd-utils/nanddump $(TARGETPREFIX)/sbin - install -D -m 0755 $(BUILD_TMP)/mtd-utils/nandtest $(TARGETPREFIX)/sbin - install -D -m 0755 $(BUILD_TMP)/mtd-utils/nandwrite $(TARGETPREFIX)/sbin - install -D -m 0755 $(BUILD_TMP)/mtd-utils/mtd_debug $(TARGETPREFIX)/sbin - install -D -m 0755 $(BUILD_TMP)/mtd-utils/mkfs.jffs2 $(TARGETPREFIX)/sbin + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/nanddump $(TARGETPREFIX)/sbin + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/nandtest $(TARGETPREFIX)/sbin + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/nandwrite $(TARGETPREFIX)/sbin + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/mtd_debug $(TARGETPREFIX)/sbin + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/mkfs.jffs2 $(TARGETPREFIX)/sbin endif - install -D -m 0755 $(BUILD_TMP)/mtd-utils/flash_erase $(TARGETPREFIX)/sbin - $(REMOVE)/mtd-utils + install -D -m 0755 $(BUILD_TMP)/mtd-utils-$(MTD-UTILS_VER)/flash_erase $(TARGETPREFIX)/sbin + $(REMOVE)/mtd-utils-$(MTD-UTILS_VER) touch $@ $(D)/iperf: $(ARCHIVE)/iperf-$(IPERF_VER)-source.tar.gz | $(TARGETPREFIX)