From patchwork Sun Mar 3 08:40:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Petazzoni X-Patchwork-Id: 1907223 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4TnZz32gPZz23qX for ; Sun, 3 Mar 2024 19:40:31 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 96B6E82361; Sun, 3 Mar 2024 08:40:28 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cBXPLn3tgy6v; Sun, 3 Mar 2024 08:40:27 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 0B0758226C Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 0B0758226C; Sun, 3 Mar 2024 08:40:27 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id 301301BF38B for ; Sun, 3 Mar 2024 08:40:23 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 1932C4014D for ; Sun, 3 Mar 2024 08:40:23 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id E8psB4E_Ly5o for ; Sun, 3 Mar 2024 08:40:21 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4b98:dc4:8::228; helo=relay8-d.mail.gandi.net; envelope-from=thomas.petazzoni@bootlin.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp2.osuosl.org DACA240136 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org DACA240136 Received: from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::228]) by smtp2.osuosl.org (Postfix) with ESMTPS id DACA240136 for ; Sun, 3 Mar 2024 08:40:20 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPA id 9B7231BF205; Sun, 3 Mar 2024 08:40:18 +0000 (UTC) To: buildroot@buildroot.org Date: Sun, 3 Mar 2024 09:40:09 +0100 Message-ID: <20240303084014.156991-2-thomas.petazzoni@bootlin.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> References: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> MIME-Version: 1.0 X-GND-Sasl: thomas.petazzoni@bootlin.com X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1709455219; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=w5DxMF1y0E3nj2KRTmiDI+nrlj/VMvJkAfQP03Lix54=; b=JqE+rnRNxu2HfJdgOIBOrJz/BWeOj5GO2+qtMxSSULNNKph0AyskxQAgnJbzD2dcHIzP6p pJZCe4aiJzD6ucICVqfX54KABUkdPjBvfvECm6hR5iR30LaXDY0EhMmgYo2/EPaln+gBWf hHxDwScj3LdWw1xm8b//Gg8NcSfVFPquIDv546FAPR31cqj3AOWFKUZGlrqZ/qVq8PJOQy XrQGdLmOrhW12t7e6Gkaw0DCXW/eg9M8EZV117M4241IFj48BIJOJqC+E5x69ZVVJIqwAu R7v6C0FfxZ6b506zyg2qjuyLriymsf7khht6vnMqiAQlfJRI6veDBz63I4Rt5Q== X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=bootlin.com header.i=@bootlin.com header.a=rsa-sha256 header.s=gm1 header.b=JqE+rnRN Subject: [Buildroot] [PATCH next 1/4] package/binutils: add support for 2.42 X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Petazzoni via buildroot From: Thomas Petazzoni Reply-To: Thomas Petazzoni Cc: Romain Naour , Giulio Benetti , Thomas Petazzoni Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Note that the hash of the tarball does not need to be added, as it was already added as part of commit 11b439ce1bd28506051fff14646f8bbdbbbe58d8 ("package/binutils-bare-metal: new package"). Our existing 2 patches are simply rebased, with minor conflict resolution required. Signed-off-by: Thomas Petazzoni --- package/binutils/2.42/0001-sh-conf.patch | 50 +++ .../2.42/0002-poison-system-directories.patch | 309 ++++++++++++++++++ package/binutils/Config.in.host | 4 + 3 files changed, 363 insertions(+) create mode 100644 package/binutils/2.42/0001-sh-conf.patch create mode 100644 package/binutils/2.42/0002-poison-system-directories.patch diff --git a/package/binutils/2.42/0001-sh-conf.patch b/package/binutils/2.42/0001-sh-conf.patch new file mode 100644 index 0000000000..c381017850 --- /dev/null +++ b/package/binutils/2.42/0001-sh-conf.patch @@ -0,0 +1,50 @@ +From d71fb5a9999ee7c8963342caa0d5cbb16872ab07 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:38:13 +0100 +Subject: [PATCH] sh-conf + +Likewise, binutils has no idea about any of these new targets either, so we +fix that up too.. now we're able to actually build a real toolchain for +sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more +inept targets than that one, really. Go look, I promise). + +Upstream: N/A [Buildroot specific] + +[Romain: rebase on top of 2.32] +Signed-off-by: Romain Naour +[Thomas: rebase on top of 2.29, in which sh64 support was removed.] +Signed-off-by: Thomas Petazzoni +--- + configure | 2 +- + configure.ac | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 670684d83d1..967c6708a0c 100755 +--- a/configure ++++ b/configure +@@ -4042,7 +4042,7 @@ case "${target}" in + nvptx*-*-*) + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; +- sh-*-*) ++ sh*-*-*) + case "${target}" in + sh*-*-elf) + ;; +diff --git a/configure.ac b/configure.ac +index 88b4800e298..2c8d08ff6ec 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1269,7 +1269,7 @@ case "${target}" in + nvptx*-*-*) + noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" + ;; +- sh-*-*) ++ sh*-*-*) + case "${target}" in + sh*-*-elf) + ;; +-- +2.43.0 + diff --git a/package/binutils/2.42/0002-poison-system-directories.patch b/package/binutils/2.42/0002-poison-system-directories.patch new file mode 100644 index 0000000000..5c790999d4 --- /dev/null +++ b/package/binutils/2.42/0002-poison-system-directories.patch @@ -0,0 +1,309 @@ +From 00f6b0a7d31085831429834b2bc8f511b8fab6ce Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 25 Dec 2015 11:45:38 +0100 +Subject: [PATCH] poison-system-directories + +Patch adapted to binutils 2.23.2 and extended to use +BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. + +[Waldemar: rebase on top of 2.39] +Signed-off-by: Waldemar Brodkorb +[Romain: rebase on top of 2.33.1] +Signed-off-by: Romain Naour +[Gustavo: adapt to binutils 2.25] +Signed-off-by: Thomas Petazzoni +Signed-off-by: Gustavo Zacarias + +Upstream-Status: Inappropriate [distribution: codesourcery] +Upstream: N/A [Buildroot specific] + +Patch originally created by Mark Hatle, forward-ported to +binutils 2.21 by Scott Garman. + +purpose: warn for uses of system directories when cross linking + +Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 + +2008-07-02 Joseph Myers + + ld/ + * ld.h (args_type): Add error_poison_system_directories. + * ld.texinfo (--error-poison-system-directories): Document. + * ldfile.c (ldfile_add_library_path): Check + command_line.error_poison_system_directories. + * ldmain.c (main): Initialize + command_line.error_poison_system_directories. + * lexsup.c (enum option_values): Add + OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. + (ld_options): Add --error-poison-system-directories. + (parse_args): Handle new option. + +2007-06-13 Joseph Myers + + ld/ + * config.in: Regenerate. + * ld.h (args_type): Add poison_system_directories. + * ld.texinfo (--no-poison-system-directories): Document. + * ldfile.c (ldfile_add_library_path): Check + command_line.poison_system_directories. + * ldmain.c (main): Initialize + command_line.poison_system_directories. + * lexsup.c (enum option_values): Add + OPTION_NO_POISON_SYSTEM_DIRECTORIES. + (ld_options): Add --no-poison-system-directories. + (parse_args): Handle new option. + +2007-04-20 Joseph Myers + + Merge from Sourcery G++ binutils 2.17: + + 2007-03-20 Joseph Myers + Based on patch by Mark Hatle . + ld/ + * configure.ac (--enable-poison-system-directories): New option. + * configure, config.in: Regenerate. + * ldfile.c (ldfile_add_library_path): If + ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, + /usr/lib, /usr/local/lib or /usr/X11R6/lib. + +Signed-off-by: Mark Hatle +Signed-off-by: Scott Garman +--- + ld/config.in | 3 +++ + ld/configure | 14 ++++++++++++++ + ld/configure.ac | 10 ++++++++++ + ld/ld.h | 8 ++++++++ + ld/ld.texi | 12 ++++++++++++ + ld/ldfile.c | 17 +++++++++++++++++ + ld/ldlex.h | 2 ++ + ld/ldmain.c | 2 ++ + ld/lexsup.c | 21 +++++++++++++++++++++ + 9 files changed, 89 insertions(+) + +diff --git a/ld/config.in b/ld/config.in +index 52d62f06ff0..b5944e7ba55 100644 +--- a/ld/config.in ++++ b/ld/config.in +@@ -70,6 +70,9 @@ + language is requested. */ + #undef ENABLE_NLS + ++/* Define to warn for use of native system library directories */ ++#undef ENABLE_POISON_SYSTEM_DIRECTORIES ++ + /* Additional extension a shared object might have. */ + #undef EXTRA_SHLIB_EXTENSION + +diff --git a/ld/configure b/ld/configure +index ba1e5e2a215..2220d7afe2a 100755 +--- a/ld/configure ++++ b/ld/configure +@@ -844,6 +844,7 @@ with_lib_path + enable_targets + enable_64_bit_bfd + with_sysroot ++enable_poison_system_directories + enable_gold + enable_got + enable_compressed_debug_sections +@@ -1534,6 +1535,8 @@ Optional Features: + --enable-checking enable run-time checks + --enable-targets alternative target configurations + --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes) ++ --enable-poison-system-directories ++ warn for use of native system library directories + --enable-gold[=ARG] build gold [ARG={default,yes,no}] + --enable-got= GOT handling scheme (target, single, negative, + multigot) +@@ -15587,7 +15590,18 @@ else + fi + + ++# Check whether --enable-poison-system-directories was given. ++if test "${enable_poison_system_directories+set}" = set; then : ++ enableval=$enable_poison_system_directories; ++else ++ enable_poison_system_directories=no ++fi ++ ++if test "x${enable_poison_system_directories}" = "xyes"; then + ++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h ++ ++fi + + # Check whether --enable-got was given. + if test "${enable_got+set}" = set; then : +diff --git a/ld/configure.ac b/ld/configure.ac +index 4a11787ae71..104a531fb0f 100644 +--- a/ld/configure.ac ++++ b/ld/configure.ac +@@ -103,6 +103,16 @@ AC_SUBST(use_sysroot) + AC_SUBST(TARGET_SYSTEM_ROOT) + AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) + ++AC_ARG_ENABLE([poison-system-directories], ++ AS_HELP_STRING([--enable-poison-system-directories], ++ [warn for use of native system library directories]),, ++ [enable_poison_system_directories=no]) ++if test "x${enable_poison_system_directories}" = "xyes"; then ++ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], ++ [1], ++ [Define to warn for use of native system library directories]) ++fi ++ + dnl Use --enable-gold to decide if this linker should be the default. + dnl "install_as_default" is set to false if gold is the default linker. + dnl "installed_linker" is the installed BFD linker name. +diff --git a/ld/ld.h b/ld/ld.h +index 54d9079678c..9f0163b2911 100644 +--- a/ld/ld.h ++++ b/ld/ld.h +@@ -166,6 +166,14 @@ typedef struct + in the linker script. */ + bool force_group_allocation; + ++ /* If TRUE (the default) warn for uses of system directories when ++ cross linking. */ ++ bool poison_system_directories; ++ ++ /* If TRUE (default FALSE) give an error for uses of system ++ directories when cross linking instead of a warning. */ ++ bool error_poison_system_directories; ++ + /* Big or little endian as set on command line. */ + enum endian_enum endian; + +diff --git a/ld/ld.texi b/ld/ld.texi +index 4fda259a552..11fd8f7547b 100644 +--- a/ld/ld.texi ++++ b/ld/ld.texi +@@ -3108,6 +3108,18 @@ string identifying the original linked file does not change. + Passing @code{none} for @var{style} disables the setting from any + @code{--build-id} options earlier on the command line. + ++@kindex --no-poison-system-directories ++@item --no-poison-system-directories ++Do not warn for @option{-L} options using system directories such as ++@file{/usr/lib} when cross linking. This option is intended for use ++in chroot environments when such directories contain the correct ++libraries for the target system rather than the host. ++ ++@kindex --error-poison-system-directories ++@item --error-poison-system-directories ++Give an error instead of a warning for @option{-L} options using ++system directories when cross linking. ++ + @kindex --package-metadata=@var{JSON} + @item --package-metadata=@var{JSON} + Request the creation of a @code{.note.package} ELF note section. The +diff --git a/ld/ldfile.c b/ld/ldfile.c +index dc9875d8813..49d899ee49d 100644 +--- a/ld/ldfile.c ++++ b/ld/ldfile.c +@@ -327,6 +327,23 @@ ldfile_add_library_path (const char *name, bool cmdline) + new_dirs->name = concat (ld_sysroot, name + strlen ("$SYSROOT"), (const char *) NULL); + else + new_dirs->name = xstrdup (name); ++ ++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES ++ if (command_line.poison_system_directories ++ && ((!strncmp (name, "/lib", 4)) ++ || (!strncmp (name, "/usr/lib", 8)) ++ || (!strncmp (name, "/usr/local/lib", 14)) ++ || (!strncmp (name, "/usr/X11R6/lib", 14)))) ++ { ++ if (command_line.error_poison_system_directories) ++ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " ++ "cross-compilation\n"), name); ++ else ++ einfo (_("%P: warning: library search path \"%s\" is unsafe for " ++ "cross-compilation\n"), name); ++ } ++#endif ++ + } + + /* Try to open a BFD for a lang_input_statement. */ +diff --git a/ld/ldlex.h b/ld/ldlex.h +index 161a9d4d8dc..4ca50b9c299 100644 +--- a/ld/ldlex.h ++++ b/ld/ldlex.h +@@ -168,6 +168,8 @@ enum option_values + OPTION_CTF_VARIABLES, + OPTION_NO_CTF_VARIABLES, + OPTION_CTF_SHARE_TYPES, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, + OPTION_ERROR_EXECSTACK, + OPTION_NO_ERROR_EXECSTACK, + OPTION_WARN_EXECSTACK_OBJECTS, +diff --git a/ld/ldmain.c b/ld/ldmain.c +index e90c2021b33..43fe888eba8 100644 +--- a/ld/ldmain.c ++++ b/ld/ldmain.c +@@ -325,6 +325,8 @@ main (int argc, char **argv) + command_line.warn_mismatch = true; + command_line.warn_search_mismatch = true; + command_line.check_section_addresses = -1; ++ command_line.poison_system_directories = true; ++ command_line.error_poison_system_directories = false; + + /* We initialize DEMANGLING based on the environment variable + COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the +diff --git a/ld/lexsup.c b/ld/lexsup.c +index 099dff8ecde..01626712c77 100644 +--- a/ld/lexsup.c ++++ b/ld/lexsup.c +@@ -642,6 +642,14 @@ static const struct ld_option ld_options[] = + " is: share-unconflicted (default),\n" + " share-duplicated"), + TWO_DASHES }, ++ { {"no-poison-system-directories", no_argument, NULL, ++ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, ++ '\0', NULL, N_("Do not warn for -L options using system directories"), ++ TWO_DASHES }, ++ { {"error-poison-system-directories", no_argument, NULL, ++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, ++ '\0', NULL, N_("Give an error for -L options using system directories"), ++ TWO_DASHES }, + }; + + #define OPTION_COUNT ARRAY_SIZE (ld_options) +@@ -654,6 +662,7 @@ parse_args (unsigned argc, char **argv) + int ingroup = 0; + char *default_dirlist = NULL; + char *shortopts; ++ char *BR_paranoid_env; + struct option *longopts; + struct option *really_longopts; + int last_optind; +@@ -1769,6 +1778,14 @@ parse_args (unsigned argc, char **argv) + } + break; + ++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: ++ command_line.poison_system_directories = false; ++ break; ++ ++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: ++ command_line.error_poison_system_directories = true; ++ break; ++ + case OPTION_PUSH_STATE: + input_flags.pushed = xmemdup (&input_flags, + sizeof (input_flags), +@@ -1922,6 +1939,10 @@ parse_args (unsigned argc, char **argv) + command_line.soname = NULL; + } + ++ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); ++ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) ++ command_line.error_poison_system_directories = true; ++ + while (ingroup) + { + einfo (_("%P: missing --end-group; added as last command line option\n")); +-- +2.43.0 + diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index 2f1ddf4bdc..f1cc175cf9 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -25,6 +25,9 @@ config BR2_BINUTILS_VERSION_2_40_X config BR2_BINUTILS_VERSION_2_41_X bool "binutils 2.41" +config BR2_BINUTILS_VERSION_2_42_X + bool "binutils 2.42" + config BR2_BINUTILS_VERSION_ARC bool "binutils arc (2.41)" depends on BR2_arc @@ -37,6 +40,7 @@ config BR2_BINUTILS_VERSION default "2.39" if BR2_BINUTILS_VERSION_2_39_X default "2.40" if BR2_BINUTILS_VERSION_2_40_X default "2.41" if BR2_BINUTILS_VERSION_2_41_X + default "2.42" if BR2_BINUTILS_VERSION_2_42_X config BR2_BINUTILS_GPROFNG bool "gprofng support" From patchwork Sun Mar 3 08:40:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Petazzoni X-Patchwork-Id: 1907224 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=140.211.166.138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4TnZz55PK9z23qX for ; Sun, 3 Mar 2024 19:40:33 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id DF31682512; Sun, 3 Mar 2024 08:40:31 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tpPKTowgVH7m; Sun, 3 Mar 2024 08:40:31 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org BECCB827BA Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id BECCB827BA; Sun, 3 Mar 2024 08:40:30 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id AECAF1BF38B for ; Sun, 3 Mar 2024 08:40:23 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id A735560631 for ; Sun, 3 Mar 2024 08:40:22 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CCUFhyQl7Caj for ; Sun, 3 Mar 2024 08:40:22 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=217.70.183.201; helo=relay8-d.mail.gandi.net; envelope-from=thomas.petazzoni@bootlin.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp3.osuosl.org B9FC36064E DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org B9FC36064E Received: from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net [217.70.183.201]) by smtp3.osuosl.org (Postfix) with ESMTPS id B9FC36064E for ; Sun, 3 Mar 2024 08:40:21 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPA id 9ADC71BF203; Sun, 3 Mar 2024 08:40:19 +0000 (UTC) To: buildroot@buildroot.org Date: Sun, 3 Mar 2024 09:40:10 +0100 Message-ID: <20240303084014.156991-3-thomas.petazzoni@bootlin.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> References: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> MIME-Version: 1.0 X-GND-Sasl: thomas.petazzoni@bootlin.com X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1709455220; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8FPZ6Nsqv8U/pV85PazJiGG8AulGQE2LMJfAyNDLn+s=; b=n+cZ4SW9XnH2rSBy+ALXkkTs0wUktpTIgPxbskyvuociWA7iLiMD1MDMPlcBwqYlKZa9u5 NGicIWu0RTHbgybynlI51hnHZ1KSztcrlWXhzP5ejklggr781Oi39P35Bus+3+RXi08eb6 sED78+Ug5OErUlWtaclmEoZ6mKwvD0bmnSjxChznYSem54pNWBcQAhmkPCn5GDXOK9GguU QoOG/pzkmyoI5oisfxbQwB3IE565OjtT+9JegJuCaTJtUdZZ8qxJNUXhxQkxTJAT4q1DzU WrZgRUPJUvnsN7nxc4UMrCbrwKJml1yCL5kJPhK2Bm9ba0ILJdxdYWRVcLyuBA== X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=bootlin.com header.i=@bootlin.com header.a=rsa-sha256 header.s=gm1 header.b=n+cZ4SW9 Subject: [Buildroot] [PATCH next 2/4] package/binutils: make 2.41 the default version X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Petazzoni via buildroot From: Thomas Petazzoni Reply-To: Thomas Petazzoni Cc: Giulio Benetti , Romain Naour , Thomas Petazzoni Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Now that 2.42 has been introduced, let's make 2.41 the latest version, following the traditional Buildroot policy. Signed-off-by: Thomas Petazzoni --- package/binutils/Config.in.host | 2 +- package/binutils/binutils.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index f1cc175cf9..7c2797e5fd 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -10,7 +10,7 @@ config BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME choice prompt "Binutils Version" - default BR2_BINUTILS_VERSION_2_40_X if !BR2_arc + default BR2_BINUTILS_VERSION_2_41_X if !BR2_arc default BR2_BINUTILS_VERSION_ARC if BR2_arc help Select the version of binutils you wish to use. diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk index 6846933646..5209da0252 100644 --- a/package/binutils/binutils.mk +++ b/package/binutils/binutils.mk @@ -11,7 +11,7 @@ ifeq ($(BINUTILS_VERSION),) ifeq ($(BR2_arc),y) BINUTILS_VERSION = arc-2023.09-release else -BINUTILS_VERSION = 2.40 +BINUTILS_VERSION = 2.41 endif endif # BINUTILS_VERSION From patchwork Sun Mar 3 08:40:11 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Petazzoni X-Patchwork-Id: 1907226 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4TnZzF1fcxz23qX for ; Sun, 3 Mar 2024 19:40:41 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id DBF0383521; Sun, 3 Mar 2024 08:40:38 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xfh3PoNn--YT; Sun, 3 Mar 2024 08:40:36 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 2E54E833D3 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 2E54E833D3; Sun, 3 Mar 2024 08:40:36 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by ash.osuosl.org (Postfix) with ESMTP id B94541BF38B for ; Sun, 3 Mar 2024 08:40:25 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id A6C804014D for ; Sun, 3 Mar 2024 08:40:25 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ByxyNezpVA3s for ; Sun, 3 Mar 2024 08:40:23 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4b98:dc4:8::228; helo=relay8-d.mail.gandi.net; envelope-from=thomas.petazzoni@bootlin.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp2.osuosl.org 2D69640136 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 2D69640136 Received: from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::228]) by smtp2.osuosl.org (Postfix) with ESMTPS id 2D69640136 for ; Sun, 3 Mar 2024 08:40:22 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPA id 97EC21BF206; Sun, 3 Mar 2024 08:40:20 +0000 (UTC) To: buildroot@buildroot.org Date: Sun, 3 Mar 2024 09:40:11 +0100 Message-ID: <20240303084014.156991-4-thomas.petazzoni@bootlin.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> References: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> MIME-Version: 1.0 X-GND-Sasl: thomas.petazzoni@bootlin.com X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1709455221; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=7+K/XhXQFtGeK40Wql1eO36kUwyNK6ocbST5wh/LP94=; b=ZGAY8+eyFhkJjCQH0CowuaSsoC58EeQuGtJsWv80+BPF6A619xMNKUsT2OWU0o+zQUkSK9 LB7/ExfKNt+Gc67ARjbFRbWSZLKSmskKZ1CiyqeJ+9qgGUSnCTLWjvWqFx8heCy3r8bvS1 Z0ak1D7hff9tUiLxPI9BSBkznbSaYgOwmuU3nczeWL1csITRgkPm/Ovbhkn2KXeYamGY5l klmnHiF/yW8KuAmjh3KmviGfcf4i/96iCMH/T2FB9GmdPjex48cPE5T9hN+nBR+5As9KH1 Nwzf5SZdsNrr0WzXo+RTGmyQS4vA9mUhHbHeZ4ZaNtPOY1/V5uD1RC2tMNpTOg== X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com X-Mailman-Original-Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=bootlin.com header.i=@bootlin.com header.a=rsa-sha256 header.s=gm1 header.b=ZGAY8+ey Subject: [Buildroot] [PATCH next 3/4] package/binutils: drop support for binutils 2.39 X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Petazzoni via buildroot From: Thomas Petazzoni Reply-To: Thomas Petazzoni Cc: Romain Naour , Giulio Benetti , Thomas Petazzoni Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Now that we have integrated support for binutils 2.42, and made binutils 2.41 the default, following our tradition, we can drop support for binutils 2.39. In addition to the usual things, there is an additional minor change in elf2flt.mk, which had a special condition applicable to binutils 2.39 or 2.40, which can be simplified to only apply to binutils 2.40 now. Signed-off-by: Thomas Petazzoni --- .checkpackageignore | 3 - Config.in.legacy | 6 + package/binutils/2.39/0001-sh-conf.patch | 48 --- .../2.39/0002-poison-system-directories.patch | 298 ------------------ ...or1k-fix-building-with-gcc-version-5.patch | 50 --- package/binutils/Config.in.host | 5 - package/binutils/binutils.hash | 1 - package/elf2flt/elf2flt.mk | 2 +- 8 files changed, 7 insertions(+), 406 deletions(-) delete mode 100644 package/binutils/2.39/0001-sh-conf.patch delete mode 100644 package/binutils/2.39/0002-poison-system-directories.patch delete mode 100644 package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch diff --git a/.checkpackageignore b/.checkpackageignore index c18cc4d417..6a45e1593c 100644 --- a/.checkpackageignore +++ b/.checkpackageignore @@ -193,9 +193,6 @@ package/berkeleydb/0001-cwd-db_config.patch Upstream package/berkeleydb/0002-atomic_compare_exchange.patch Upstream package/bind/0001-cross.patch Upstream package/bind/S81named Indent Shellcheck Variables -package/binutils/2.39/0001-sh-conf.patch Upstream -package/binutils/2.39/0002-poison-system-directories.patch Upstream -package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch Upstream package/bird/0001-configure.ac-fix-build-with-autoconf-2.70.patch Upstream package/bitcoin/0001-src-randomenv.cpp-fix-build-on-uclibc.patch Upstream package/bmx7/0001-Fix-schedule.c-378-36-error-SIOCGSTAMP-undeclared.patch Upstream diff --git a/Config.in.legacy b/Config.in.legacy index a869279af7..94756a70ff 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -146,6 +146,12 @@ endif comment "Legacy options removed in 2024.02" +config BR2_BINUTILS_VERSION_2_39_X + bool "binutils 2.39 has been removed" + select BR2_LEGACY + help + binutils 2.39 has been removed, use a newer version. + config BR2_PACKAGE_TINYMEMBENCH bool "tinymembench removed" select BR2_LEGACY diff --git a/package/binutils/2.39/0001-sh-conf.patch b/package/binutils/2.39/0001-sh-conf.patch deleted file mode 100644 index fcc597e4d9..0000000000 --- a/package/binutils/2.39/0001-sh-conf.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 33f3c1f804efc2e4f97849081589efb70cda31e5 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 25 Dec 2015 11:38:13 +0100 -Subject: [PATCH] sh-conf - -Likewise, binutils has no idea about any of these new targets either, so we -fix that up too.. now we're able to actually build a real toolchain for -sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more -inept targets than that one, really. Go look, I promise). - -[Romain: rebase on top of 2.32] -Signed-off-by: Romain Naour -[Thomas: rebase on top of 2.29, in which sh64 support was removed.] -Signed-off-by: Thomas Petazzoni ---- - configure | 2 +- - configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure b/configure -index 3dd206525a7..6881ce632f5 100755 ---- a/configure -+++ b/configure -@@ -3892,7 +3892,7 @@ case "${target}" in - nvptx*-*-*) - noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" - ;; -- sh-*-*) -+ sh*-*-*) - case "${target}" in - sh*-*-elf) - ;; -diff --git a/configure.ac b/configure.ac -index 797a624621e..1f9256bbf18 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1175,7 +1175,7 @@ case "${target}" in - nvptx*-*-*) - noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc" - ;; -- sh-*-*) -+ sh*-*-*) - case "${target}" in - sh*-*-elf) - ;; --- -2.31.1 - diff --git a/package/binutils/2.39/0002-poison-system-directories.patch b/package/binutils/2.39/0002-poison-system-directories.patch deleted file mode 100644 index 1d9447b5c2..0000000000 --- a/package/binutils/2.39/0002-poison-system-directories.patch +++ /dev/null @@ -1,298 +0,0 @@ -From 4d8705ddb55897e8a74b617ab95736d520d9e1ea Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Fri, 25 Dec 2015 11:45:38 +0100 -Subject: [PATCH] poison-system-directories - -Patch adapted to binutils 2.23.2 and extended to use -BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni. - -[Waldemar: rebase on top of 2.39] -Signed-off-by: Waldemar Brodkorb -[Romain: rebase on top of 2.33.1] -Signed-off-by: Romain Naour -[Gustavo: adapt to binutils 2.25] -Signed-off-by: Thomas Petazzoni -Signed-off-by: Gustavo Zacarias - -Upstream-Status: Inappropriate [distribution: codesourcery] - -Patch originally created by Mark Hatle, forward-ported to -binutils 2.21 by Scott Garman. - -purpose: warn for uses of system directories when cross linking - -Code Merged from Sourcery G++ binutils 2.19 - 4.4-277 - -2008-07-02 Joseph Myers - - ld/ - * ld.h (args_type): Add error_poison_system_directories. - * ld.texinfo (--error-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.error_poison_system_directories. - * ldmain.c (main): Initialize - command_line.error_poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_ERROR_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --error-poison-system-directories. - (parse_args): Handle new option. - -2007-06-13 Joseph Myers - - ld/ - * config.in: Regenerate. - * ld.h (args_type): Add poison_system_directories. - * ld.texinfo (--no-poison-system-directories): Document. - * ldfile.c (ldfile_add_library_path): Check - command_line.poison_system_directories. - * ldmain.c (main): Initialize - command_line.poison_system_directories. - * lexsup.c (enum option_values): Add - OPTION_NO_POISON_SYSTEM_DIRECTORIES. - (ld_options): Add --no-poison-system-directories. - (parse_args): Handle new option. - -2007-04-20 Joseph Myers - - Merge from Sourcery G++ binutils 2.17: - - 2007-03-20 Joseph Myers - Based on patch by Mark Hatle . - ld/ - * configure.ac (--enable-poison-system-directories): New option. - * configure, config.in: Regenerate. - * ldfile.c (ldfile_add_library_path): If - ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib, - /usr/lib, /usr/local/lib or /usr/X11R6/lib. - -Signed-off-by: Mark Hatle -Signed-off-by: Scott Garman ---- - ld/config.in | 3 +++ - ld/configure | 14 ++++++++++++++ - ld/configure.ac | 10 ++++++++++ - ld/ld.h | 8 ++++++++ - ld/ld.texi | 12 ++++++++++++ - ld/ldfile.c | 17 +++++++++++++++++ - ld/ldlex.h | 2 ++ - ld/ldmain.c | 2 ++ - ld/lexsup.c | 21 +++++++++++++++++++++ - 9 files changed, 89 insertions(+) - -diff -Nur binutils-2.39.orig/ld/config.in binutils-2.39/ld/config.in ---- binutils-2.39.orig/ld/config.in 2022-08-05 11:56:56.000000000 +0200 -+++ binutils-2.39/ld/config.in 2022-08-11 13:00:55.310472243 +0200 -@@ -55,6 +55,9 @@ - language is requested. */ - #undef ENABLE_NLS - -+/* Define to warn for use of native system library directories */ -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+ - /* Additional extension a shared object might have. */ - #undef EXTRA_SHLIB_EXTENSION - -diff -Nur binutils-2.39.orig/ld/configure binutils-2.39/ld/configure ---- binutils-2.39.orig/ld/configure 2022-08-05 11:56:54.000000000 +0200 -+++ binutils-2.39/ld/configure 2022-08-11 13:00:55.370470806 +0200 -@@ -836,6 +836,7 @@ - enable_targets - enable_64_bit_bfd - with_sysroot -+enable_poison_system_directories - enable_gold - enable_got - enable_compressed_debug_sections -@@ -1514,6 +1515,8 @@ - --enable-checking enable run-time checks - --enable-targets alternative target configurations - --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes) -+ --enable-poison-system-directories -+ warn for use of native system library directories - --enable-gold[=ARG] build gold [ARG={default,yes,no}] - --enable-got= GOT handling scheme (target, single, negative, - multigot) -@@ -15370,7 +15373,18 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then - -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi - - # Check whether --enable-got was given. - if test "${enable_got+set}" = set; then : -diff -Nur binutils-2.39.orig/ld/configure.ac binutils-2.39/ld/configure.ac ---- binutils-2.39.orig/ld/configure.ac 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/configure.ac 2022-08-11 13:00:55.370470806 +0200 -@@ -102,6 +102,16 @@ - AC_SUBST(TARGET_SYSTEM_ROOT) - AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system library directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system library directories]) -+fi -+ - dnl Use --enable-gold to decide if this linker should be the default. - dnl "install_as_default" is set to false if gold is the default linker. - dnl "installed_linker" is the installed BFD linker name. -diff -Nur binutils-2.39.orig/ld/ldfile.c binutils-2.39/ld/ldfile.c ---- binutils-2.39.orig/ld/ldfile.c 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/ldfile.c 2022-08-11 13:00:55.394470231 +0200 -@@ -117,6 +117,23 @@ - new_dirs->name = concat (ld_sysroot, name + strlen ("$SYSROOT"), (const char *) NULL); - else - new_dirs->name = xstrdup (name); -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (command_line.poison_system_directories -+ && ((!strncmp (name, "/lib", 4)) -+ || (!strncmp (name, "/usr/lib", 8)) -+ || (!strncmp (name, "/usr/local/lib", 14)) -+ || (!strncmp (name, "/usr/X11R6/lib", 14)))) -+ { -+ if (command_line.error_poison_system_directories) -+ einfo (_("%X%P: error: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ else -+ einfo (_("%P: warning: library search path \"%s\" is unsafe for " -+ "cross-compilation\n"), name); -+ } -+#endif -+ - } - - /* Try to open a BFD for a lang_input_statement. */ -diff -Nur binutils-2.39.orig/ld/ld.h binutils-2.39/ld/ld.h ---- binutils-2.39.orig/ld/ld.h 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/ld.h 2022-08-11 13:00:55.382470519 +0200 -@@ -162,6 +162,14 @@ - in the linker script. */ - bool force_group_allocation; - -+ /* If TRUE (the default) warn for uses of system directories when -+ cross linking. */ -+ bool poison_system_directories; -+ -+ /* If TRUE (default FALSE) give an error for uses of system -+ directories when cross linking instead of a warning. */ -+ bool error_poison_system_directories; -+ - /* Big or little endian as set on command line. */ - enum endian_enum endian; - -diff -Nur binutils-2.39.orig/ld/ldlex.h binutils-2.39/ld/ldlex.h ---- binutils-2.39.orig/ld/ldlex.h 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/ldlex.h 2022-08-11 13:03:35.462636396 +0200 -@@ -164,6 +164,8 @@ - OPTION_CTF_VARIABLES, - OPTION_NO_CTF_VARIABLES, - OPTION_CTF_SHARE_TYPES, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES, - OPTION_WARN_EXECSTACK, - OPTION_NO_WARN_EXECSTACK, - OPTION_WARN_RWX_SEGMENTS, -diff -Nur binutils-2.39.orig/ld/ldmain.c binutils-2.39/ld/ldmain.c ---- binutils-2.39.orig/ld/ldmain.c 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/ldmain.c 2022-08-11 13:00:55.402470040 +0200 -@@ -321,6 +321,8 @@ - command_line.warn_mismatch = true; - command_line.warn_search_mismatch = true; - command_line.check_section_addresses = -1; -+ command_line.poison_system_directories = true; -+ command_line.error_poison_system_directories = false; - - /* We initialize DEMANGLING based on the environment variable - COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the -diff -Nur binutils-2.39.orig/ld/ld.texi binutils-2.39/ld/ld.texi ---- binutils-2.39.orig/ld/ld.texi 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/ld.texi 2022-08-11 13:02:44.627853889 +0200 -@@ -2936,6 +2936,18 @@ - Passing @code{none} for @var{style} disables the setting from any - @code{--build-id} options earlier on the command line. - -+@kindex --no-poison-system-directories -+@item --no-poison-system-directories -+Do not warn for @option{-L} options using system directories such as -+@file{/usr/lib} when cross linking. This option is intended for use -+in chroot environments when such directories contain the correct -+libraries for the target system rather than the host. -+ -+@kindex --error-poison-system-directories -+@item --error-poison-system-directories -+Give an error instead of a warning for @option{-L} options using -+system directories when cross linking. -+ - @kindex --package-metadata=@var{JSON} - @item --package-metadata=@var{JSON} - Request the creation of a @code{.note.package} ELF note section. The -diff -Nur binutils-2.39.orig/ld/lexsup.c binutils-2.39/ld/lexsup.c ---- binutils-2.39.orig/ld/lexsup.c 2022-07-08 11:46:48.000000000 +0200 -+++ binutils-2.39/ld/lexsup.c 2022-08-11 13:00:55.434469274 +0200 -@@ -608,6 +608,14 @@ - " is: share-unconflicted (default),\n" - " share-duplicated"), - TWO_DASHES }, -+ { {"no-poison-system-directories", no_argument, NULL, -+ OPTION_NO_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Do not warn for -L options using system directories"), -+ TWO_DASHES }, -+ { {"error-poison-system-directories", no_argument, NULL, -+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES}, -+ '\0', NULL, N_("Give an error for -L options using system directories"), -+ TWO_DASHES }, - }; - - #define OPTION_COUNT ARRAY_SIZE (ld_options) -@@ -620,6 +628,7 @@ - int ingroup = 0; - char *default_dirlist = NULL; - char *shortopts; -+ char *BR_paranoid_env; - struct option *longopts; - struct option *really_longopts; - int last_optind; -@@ -1679,6 +1688,14 @@ - } - break; - -+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES: -+ command_line.poison_system_directories = false; -+ break; -+ -+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES: -+ command_line.error_poison_system_directories = true; -+ break; -+ - case OPTION_PUSH_STATE: - input_flags.pushed = xmemdup (&input_flags, - sizeof (input_flags), -@@ -1824,6 +1841,10 @@ - command_line.soname = NULL; - } - -+ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0) -+ command_line.error_poison_system_directories = true; -+ - while (ingroup) - { - einfo (_("%P: missing --end-group; added as last command line option\n")); --- -2.31.1 diff --git a/package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch b/package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch deleted file mode 100644 index bfd531b818..0000000000 --- a/package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch +++ /dev/null @@ -1,50 +0,0 @@ -From ef4ba1da823e8366ea4f126f50885a44ebf4dcf0 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Wed, 9 Jun 2021 17:28:27 +0200 -Subject: [PATCH] bfd/elf32-or1k: fix building with gcc version < 5 - -Gcc version >= 5 has standard C mode not set to -std=gnu11, so if we use -an old compiler(i.e. gcc 4.9) build fails on: -``` -elf32-or1k.c:2251:3: error: 'for' loop initial declarations are only allowed in -C99 or C11 mode - for (size_t i = 0; i < insn_count; i++) - ^ -``` - -So let's declare `size_t i` at the top of the function instead of inside -for loop. - -Signed-off-by: Giulio Benetti ---- - bfd/elf32-or1k.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/bfd/elf32-or1k.c b/bfd/elf32-or1k.c -index 4ae7f324d33..32063ab0289 100644 ---- a/bfd/elf32-or1k.c -+++ b/bfd/elf32-or1k.c -@@ -2244,9 +2244,10 @@ or1k_write_plt_entry (bfd *output_bfd, bfd_byte *contents, unsigned insnj, - { - unsigned nodelay = elf_elfheader (output_bfd)->e_flags & EF_OR1K_NODELAY; - unsigned output_insns[PLT_MAX_INSN_COUNT]; -+ size_t i; - - /* Copy instructions into the output buffer. */ -- for (size_t i = 0; i < insn_count; i++) -+ for (i = 0; i < insn_count; i++) - output_insns[i] = insns[i]; - - /* Honor the no-delay-slot setting. */ -@@ -2277,7 +2278,7 @@ or1k_write_plt_entry (bfd *output_bfd, bfd_byte *contents, unsigned insnj, - } - - /* Write out the output buffer. */ -- for (size_t i = 0; i < (insn_count+1); i++) -+ for (i = 0; i < (insn_count+1); i++) - bfd_put_32 (output_bfd, output_insns[i], contents + (i*4)); - } - --- -2.31.1 - diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index 7c2797e5fd..85ec9b1d11 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -15,10 +15,6 @@ choice help Select the version of binutils you wish to use. -config BR2_BINUTILS_VERSION_2_39_X - bool "binutils 2.39" - select BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME - config BR2_BINUTILS_VERSION_2_40_X bool "binutils 2.40" @@ -37,7 +33,6 @@ endchoice config BR2_BINUTILS_VERSION string default "arc-2023.09-release" if BR2_BINUTILS_VERSION_ARC - default "2.39" if BR2_BINUTILS_VERSION_2_39_X default "2.40" if BR2_BINUTILS_VERSION_2_40_X default "2.41" if BR2_BINUTILS_VERSION_2_41_X default "2.42" if BR2_BINUTILS_VERSION_2_42_X diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash index e4c6a0b0b6..ac724d5c15 100644 --- a/package/binutils/binutils.hash +++ b/package/binutils/binutils.hash @@ -1,5 +1,4 @@ # From https://gcc.gnu.org/pub/binutils/releases/sha512.sum -sha512 68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3 binutils-2.39.tar.xz sha512 a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925 binutils-2.40.tar.xz sha512 5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374 binutils-2.41.tar.xz sha512 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6 binutils-2.42.tar.xz diff --git a/package/elf2flt/elf2flt.mk b/package/elf2flt/elf2flt.mk index 0def282c02..aa5595843f 100644 --- a/package/elf2flt/elf2flt.mk +++ b/package/elf2flt/elf2flt.mk @@ -23,7 +23,7 @@ HOST_ELF2FLT_AUTORECONF = YES # considered because Buildroot only supports ARC CPUs with a MMU and # therefore host-elf2flt is never used on ARC. libiberty.a has # remained at the same location. -ifeq ($(BR2_BINUTILS_VERSION_2_39_X)$(BR2_BINUTILS_VERSION_2_40_X),y) +ifeq ($(BR2_BINUTILS_VERSION_2_40_X),y) HOST_ELF2FLT_LIBBFD_PATH = $(HOST_BINUTILS_DIR)/bfd/libbfd.a else HOST_ELF2FLT_LIBBFD_PATH = $(HOST_BINUTILS_DIR)/bfd/.libs/libbfd.a From patchwork Sun Mar 3 08:40:12 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Petazzoni X-Patchwork-Id: 1907225 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org (client-ip=2605:bc80:3010::138; helo=smtp1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org) Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4TnZz90SCvz23qX for ; Sun, 3 Mar 2024 19:40:37 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id E88A181E1B; Sun, 3 Mar 2024 08:40:34 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 68ybUpfdBPHE; Sun, 3 Mar 2024 08:40:33 +0000 (UTC) X-Comment: SPF check N/A for local connections - client-ip=140.211.166.34; helo=ash.osuosl.org; envelope-from=buildroot-bounces@buildroot.org; receiver= DKIM-Filter: OpenDKIM Filter v2.11.0 smtp1.osuosl.org 93AC683147 Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp1.osuosl.org (Postfix) with ESMTP id 93AC683147; Sun, 3 Mar 2024 08:40:33 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 9FDFF1BF38B for ; Sun, 3 Mar 2024 08:40:24 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 8DE076064E for ; Sun, 3 Mar 2024 08:40:24 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9z-Lfa65wB6w for ; Sun, 3 Mar 2024 08:40:24 +0000 (UTC) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2001:4b98:dc4:8::228; helo=relay8-d.mail.gandi.net; envelope-from=thomas.petazzoni@bootlin.com; receiver= DMARC-Filter: OpenDMARC Filter v1.4.2 smtp3.osuosl.org B89C560631 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org B89C560631 Received: from relay8-d.mail.gandi.net (relay8-d.mail.gandi.net [IPv6:2001:4b98:dc4:8::228]) by smtp3.osuosl.org (Postfix) with ESMTPS id B89C560631 for ; Sun, 3 Mar 2024 08:40:23 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPA id 8C2FD1BF209; Sun, 3 Mar 2024 08:40:21 +0000 (UTC) To: buildroot@buildroot.org Date: Sun, 3 Mar 2024 09:40:12 +0100 Message-ID: <20240303084014.156991-5-thomas.petazzoni@bootlin.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> References: <20240303084014.156991-1-thomas.petazzoni@bootlin.com> MIME-Version: 1.0 X-GND-Sasl: thomas.petazzoni@bootlin.com X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1709455222; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=6EcN1LfRuwfJ5TeZCBQhKyMG/9dylds2uscz9bjb3ls=; b=F2EV3hJAElWTV1ryERsaOgx7yivy0pw79GXbBzl1cxZxmOEwgjClYVl+6ifFJ0Ik81Rfez PMaslzZBS6JU3o4mm8in5Tjia2NGgD6//kjnzgaEy6CcHCKP97Z/UEQoCokLKjf2Ei/RdQ bRVyE4OA897PbXHbIJaJAdxDP0Y42pMQeW1Mdt6XWW2glkyAvu/ICTgixAW7+3Lf0nlRS5 bC+jMSyXqryvTOZ5JAA0lw2WUF4bDGPVWvFOY9X0gbhLHJaoJWvSXB5NXhCNhTRKhX989X k7F7mfWyVtfAAZ3k4mi8zu3CWM6koI/86uXWHqBpoCWtTSvRgmWupblxD2Y7Zg== X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dmarc=pass (p=reject dis=none) header.from=bootlin.com X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key, unprotected) header.d=bootlin.com header.i=@bootlin.com header.a=rsa-sha256 header.s=gm1 header.b=F2EV3hJA Subject: [Buildroot] [PATCH next 4/4] package/binutils: drop BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME X-BeenThere: buildroot@buildroot.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Thomas Petazzoni via buildroot From: Thomas Petazzoni Reply-To: Thomas Petazzoni Cc: Romain Naour , Giulio Benetti , Thomas Petazzoni Errors-To: buildroot-bounces@buildroot.org Sender: "buildroot" Now that binutils 2.39 is gone, we can drop BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME, which was only used for binutils 2.39. This was a blind option, so Config.in.legacy handling is not needed. Signed-off-by: Thomas Petazzoni --- package/binutils/Config.in.host | 3 --- package/binutils/binutils.mk | 8 +------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index 85ec9b1d11..b67e9343dd 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -5,9 +5,6 @@ config BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI default y depends on !BR2_microblaze -config BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME - bool - choice prompt "Binutils Version" default BR2_BINUTILS_VERSION_2_41_X if !BR2_arc diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk index 5209da0252..d98dd7b830 100644 --- a/package/binutils/binutils.mk +++ b/package/binutils/binutils.mk @@ -105,19 +105,13 @@ endif # our TARGET_CONFIGURE_ARGS are taken into consideration for those BINUTILS_MAKE_ENV = $(TARGET_CONFIGURE_ARGS) -ifeq ($(BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME),) -define BINUTILS_INSTALL_STAGING_LIBSFRAME - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libsframe DESTDIR=$(STAGING_DIR) install -endef -endif - # We just want libbfd, libiberty and libopcodes, # not the full-blown binutils in staging define BINUTILS_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/bfd DESTDIR=$(STAGING_DIR) install $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/opcodes DESTDIR=$(STAGING_DIR) install $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install - $(BINUTILS_INSTALL_STAGING_LIBSFRAME) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libsframe DESTDIR=$(STAGING_DIR) install endef # If we don't want full binutils on target