diff --git a/Config.in.legacy b/Config.in.legacy index 36296ca843..e6fc22a3d2 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -144,6 +144,15 @@ endif ############################################################################### +comment "Legacy options removed in 2026.02" + +config BR2_BINUTILS_VERSION_2_42_X + bool "binutils 2.42 has been removed" + select BR2_LEGACY + help + binutils 2.42 has been removed, select a newer version + instead. + comment "Legacy options removed in 2025.11" config BR2_PACKAGE_OLA diff --git a/package/binutils/2.42/0001-sh-conf.patch b/package/binutils/2.42/0001-sh-conf.patch deleted file mode 100644 index c381017850..0000000000 --- a/package/binutils/2.42/0001-sh-conf.patch +++ /dev/null @@ -1,50 +0,0 @@ -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 deleted file mode 100644 index 5c790999d4..0000000000 --- a/package/binutils/2.42/0002-poison-system-directories.patch +++ /dev/null @@ -1,309 +0,0 @@ -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/2.42/0003-PR27597-nios-assertion-fail-in-nios2_elf32_install_i.patch b/package/binutils/2.42/0003-PR27597-nios-assertion-fail-in-nios2_elf32_install_i.patch deleted file mode 100644 index 4753ae13c4..0000000000 --- a/package/binutils/2.42/0003-PR27597-nios-assertion-fail-in-nios2_elf32_install_i.patch +++ /dev/null @@ -1,125 +0,0 @@ -From 900c0f0aa3d78cd9e67ccd26fbc86224cef4c5b1 Mon Sep 17 00:00:00 2001 -From: Alan Modra -Date: Fri, 16 Feb 2024 22:33:29 +1030 -Subject: [PATCH] PR27597, nios: assertion fail in nios2_elf32_install_imm16 - -The assertion in nios2_elf32_install_imm16 triggers when the PLT is -twice the maximum allowable size for a branch from PLTn to reach -.PLTresolve, and on no other call to nios2_elf32_install_imm16. That -makes the assertion completely useless. We can handle a PIC PLT -exceeding 0x8000 in size by bouncing branches that won't reach through -previous branches. - - PR 27597 - * elf32-nios2.c (nios2_elf32_install_imm16): Delete BFD_ASSERT. - (nios2_build_one_stub): Don't bother masking value passed to - nios2_elf32_install_imm16. - (nios2_elf32_finish_dynamic_symbol): Likewise. Handle overflow - of PLTn branch to .PLTresolve by bouncing through prior branches. - -Upstream: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=900c0f0aa3d78cd9e67ccd26fbc86224cef4c5b1 - -Signed-off-by: Giulio Benetti ---- - bfd/elf32-nios2.c | 40 ++++++++++++++++++++++++---------------- - 1 file changed, 24 insertions(+), 16 deletions(-) - -diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c -index bebf4239958..7f61e2f8507 100644 ---- a/bfd/elf32-nios2.c -+++ b/bfd/elf32-nios2.c -@@ -1878,8 +1878,6 @@ nios2_elf32_install_imm16 (asection *sec, bfd_vma offset, bfd_vma value) - { - bfd_vma word = bfd_get_32 (sec->owner, sec->contents + offset); - -- BFD_ASSERT (value <= 0xffff || ((bfd_signed_vma) value) >= -0xffff); -- - bfd_put_32 (sec->owner, word | ((value & 0xffff) << 6), - sec->contents + offset); - } -@@ -2518,7 +2516,7 @@ nios2_build_one_stub (struct bfd_hash_entry *gen_entry, void *in_arg ATTRIBUTE_U - nios2_elf32_install_imm16 (stub_sec, hsh->stub_offset, - hiadj (sym_value)); - nios2_elf32_install_imm16 (stub_sec, hsh->stub_offset + 4, -- (sym_value & 0xffff)); -+ sym_value); - stub_sec->size += 12; - break; - default: -@@ -4986,16 +4984,28 @@ nios2_elf32_finish_dynamic_symbol (bfd *output_bfd, - /* Emit the PLT entry. */ - if (bfd_link_pic (info)) - { -+ bfd_vma br_offset; -+ - nios2_elf32_install_data (splt, nios2_so_plt_entry, h->plt.offset, - 3); - plt_index = (h->plt.offset - 24) / 12; - got_offset = (plt_index + 3) * 4; - nios2_elf32_install_imm16 (splt, h->plt.offset, -- hiadj(plt_index * 4)); -+ hiadj (plt_index * 4)); - nios2_elf32_install_imm16 (splt, h->plt.offset + 4, -- (plt_index * 4) & 0xffff); -- nios2_elf32_install_imm16 (splt, h->plt.offset + 8, -- 0xfff4 - h->plt.offset); -+ plt_index * 4); -+ br_offset = -(h->plt.offset + 12); -+ /* If this plt entry is too far away from the start of .plt -+ for the "br" to reach .PLTresolve, bounce through one or -+ more of the previous "br" instructions. */ -+ if (br_offset < (bfd_vma) -32768) -+ { -+ br_offset += 32768 / 12 * 12 - 4; -+ while (br_offset < (bfd_vma) -32768) -+ br_offset += 32768 / 12 * 12; -+ } -+ nios2_elf32_install_imm16 (splt, h->plt.offset + 8, br_offset); -+ - got_address = (sgotplt->output_section->vma + sgotplt->output_offset - + got_offset); - -@@ -5014,9 +5024,8 @@ nios2_elf32_finish_dynamic_symbol (bfd *output_bfd, - nios2_elf32_install_data (splt, nios2_plt_entry, h->plt.offset, 3); - got_address = (sgotplt->output_section->vma + sgotplt->output_offset - + got_offset); -- nios2_elf32_install_imm16 (splt, h->plt.offset, hiadj(got_address)); -- nios2_elf32_install_imm16 (splt, h->plt.offset + 4, -- got_address & 0xffff); -+ nios2_elf32_install_imm16 (splt, h->plt.offset, hiadj (got_address)); -+ nios2_elf32_install_imm16 (splt, h->plt.offset + 4, got_address); - - /* Fill in the entry in the global offset table. */ - bfd_put_32 (output_bfd, -@@ -5217,8 +5226,8 @@ nios2_elf32_finish_dynamic_sections (bfd *output_bfd, - BFD_ASSERT ((got_pcrel & 0xf) == 0); - nios2_elf32_install_data (splt, nios2_so_plt0_entry, 0, 6); - nios2_elf32_install_imm16 (splt, 4, hiadj (got_pcrel)); -- nios2_elf32_install_imm16 (splt, 12, got_pcrel & 0xffff); -- nios2_elf32_install_imm16 (splt, 16, (got_pcrel + 4) & 0xffff); -+ nios2_elf32_install_imm16 (splt, 12, got_pcrel); -+ nios2_elf32_install_imm16 (splt, 16, got_pcrel + 4); - } - else - { -@@ -5240,14 +5249,13 @@ nios2_elf32_finish_dynamic_sections (bfd *output_bfd, - - nios2_elf32_install_data (splt, nios2_plt0_entry, res_size, 7); - nios2_elf32_install_imm16 (splt, res_size, hiadj (res_start)); -- nios2_elf32_install_imm16 (splt, res_size + 4, -- res_start & 0xffff); -+ nios2_elf32_install_imm16 (splt, res_size + 4, res_start); - nios2_elf32_install_imm16 (splt, res_size + 12, - hiadj (got_address)); - nios2_elf32_install_imm16 (splt, res_size + 16, -- (got_address + 4) & 0xffff); -+ got_address + 4); - nios2_elf32_install_imm16 (splt, res_size + 20, -- (got_address + 8) & 0xffff); -+ got_address + 8); - } - } - } --- -2.34.1 - diff --git a/package/binutils/2.42/0004-opcodes-fix-std-gnu23-compatibility-wrt-static_asser.patch b/package/binutils/2.42/0004-opcodes-fix-std-gnu23-compatibility-wrt-static_asser.patch deleted file mode 100644 index f9b870afa2..0000000000 --- a/package/binutils/2.42/0004-opcodes-fix-std-gnu23-compatibility-wrt-static_asser.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 8ebe62f3f0d27806b1bf69f301f5e188b4acd2b4 Mon Sep 17 00:00:00 2001 -From: Sam James -Date: Sat, 16 Nov 2024 05:03:52 +0000 -Subject: [PATCH] opcodes: fix -std=gnu23 compatibility wrt static_assert - -static_assert is declared in C23 so we can't reuse that identifier: -* Define our own static_assert conditionally; - -* Rename "static assert" hacks to _N as we do already in some places - to avoid a conflict. - -ChangeLog: - PR ld/32372 - - * i386-gen.c (static_assert): Define conditionally. - * mips-formats.h (MAPPED_INT): Rename identifier. - (MAPPED_REG): Rename identifier. - (OPTIONAL_MAPPED_REG): Rename identifier. - * s390-opc.c (static_assert): Define conditionally. - -Upstream: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=8ebe62f3f0d27806b1bf69f301f5e188b4acd2b4 -Signed-off-by: Raphaël Mélotte ---- - opcodes/i386-gen.c | 2 ++ - opcodes/mips-formats.h | 6 +++--- - opcodes/s390-opc.c | 2 ++ - 3 files changed, 7 insertions(+), 3 deletions(-) - -diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c -index 053b66675c5..7ee8a30310c 100644 ---- a/opcodes/i386-gen.c -+++ b/opcodes/i386-gen.c -@@ -30,7 +30,9 @@ - - /* Build-time checks are preferrable over runtime ones. Use this construct - in preference where possible. */ -+#ifndef static_assert - #define static_assert(e) ((void)sizeof (struct { int _:1 - 2 * !(e); })) -+#endif - - static const char *program_name = NULL; - static int debug = 0; -diff --git a/opcodes/mips-formats.h b/opcodes/mips-formats.h -index 90df7100803..c4dec6352bf 100644 ---- a/opcodes/mips-formats.h -+++ b/opcodes/mips-formats.h -@@ -49,7 +49,7 @@ - #define MAPPED_INT(SIZE, LSB, MAP, PRINT_HEX) \ - { \ - typedef char ATTRIBUTE_UNUSED \ -- static_assert[(1 << (SIZE)) == ARRAY_SIZE (MAP)]; \ -+ static_assert_3[(1 << (SIZE)) == ARRAY_SIZE (MAP)]; \ - static const struct mips_mapped_int_operand op = { \ - { OP_MAPPED_INT, SIZE, LSB }, MAP, PRINT_HEX \ - }; \ -@@ -83,7 +83,7 @@ - #define MAPPED_REG(SIZE, LSB, BANK, MAP) \ - { \ - typedef char ATTRIBUTE_UNUSED \ -- static_assert[(1 << (SIZE)) == ARRAY_SIZE (MAP)]; \ -+ static_assert_4[(1 << (SIZE)) == ARRAY_SIZE (MAP)]; \ - static const struct mips_reg_operand op = { \ - { OP_REG, SIZE, LSB }, OP_REG_##BANK, MAP \ - }; \ -@@ -93,7 +93,7 @@ - #define OPTIONAL_MAPPED_REG(SIZE, LSB, BANK, MAP) \ - { \ - typedef char ATTRIBUTE_UNUSED \ -- static_assert[(1 << (SIZE)) == ARRAY_SIZE (MAP)]; \ -+ static_assert_5[(1 << (SIZE)) == ARRAY_SIZE (MAP)]; \ - static const struct mips_reg_operand op = { \ - { OP_OPTIONAL_REG, SIZE, LSB }, OP_REG_##BANK, MAP \ - }; \ -diff --git a/opcodes/s390-opc.c b/opcodes/s390-opc.c -index 9d9f0973e55..49efd714157 100644 ---- a/opcodes/s390-opc.c -+++ b/opcodes/s390-opc.c -@@ -36,7 +36,9 @@ - - /* Build-time checks are preferrable over runtime ones. Use this construct - in preference where possible. */ -+#ifndef static_assert - #define static_assert(e) ((void)sizeof (struct { int _:1 - 2 * !(e); })) -+#endif - - #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0])) - --- -2.34.1 - diff --git a/package/binutils/2.42/0005-Fix-32097-Warnings-when-building-gprofng-with-Clang.patch b/package/binutils/2.42/0005-Fix-32097-Warnings-when-building-gprofng-with-Clang.patch deleted file mode 100644 index 2f75861434..0000000000 --- a/package/binutils/2.42/0005-Fix-32097-Warnings-when-building-gprofng-with-Clang.patch +++ /dev/null @@ -1,770 +0,0 @@ -From 0cec0418dacd30f4215d0d778b4e5d23f6a93801 Mon Sep 17 00:00:00 2001 -From: Vladimir Mezentsev -Date: Tue, 3 Sep 2024 21:30:31 -0700 -Subject: [PATCH] Fix 32097 Warnings when building gprofng with Clang - -gprofng/ChangeLog -2024-09-03 Vladimir Mezentsev . - - PR gprofng/32097 - * common/hwcdrv.c: Fix -Wempty-body warnings. - * common/hwcentry.h: Fix -Wdeprecated-non-prototype warnings. - * common/hwctable.c: Fix -Wdeprecated-non-prototype warnings. - * libcollector/collector.c: Likewise. - * libcollector/collector.h: Likewise. - * libcollector/collectorAPI.c: Likewise. - * libcollector/dispatcher.c: Likewise. - * libcollector/iotrace.c: Likewise. - * libcollector/libcol_util.c: Fix -Wunused-but-set-variable warnings. - * libcollector/libcol_util.h: Remove unused declarations. - * libcollector/linetrace.c: Fix -Wdeprecated-non-prototype warnings. - * src/BaseMetricTreeNode.h: Fix -Wunused-private-field warnings. - * src/Dbe.cc: Fix -Wself-assign warnings. - * src/DbeSession.cc: Fix -Wunused-but-set-variable warnings. - * src/Disasm.cc: Fix -Wunused-const-variable warnings. - * src/Experiment.cc: Fix -Wunused-private-field warnings. - * src/HashMap.h: Fix -Wself-assign warnings. - * src/IOActivity.h: Fix -Wunused-private-field warnings. - * src/collctrl.cc: Fix -Wself-assign, -Wparentheses-equality warnings. - * src/collctrl.h: Fix -Wunused-private-field warnings. - * src/collector_module.h: Fix -Wdeprecated-non-prototype warnings. - * src/gp-display-src.cc: Fix -Wunused-private-field warnings. - * src/gp-print.h: Fix -Wheader-guard warnings. - * src/hwc_intel_icelake.h: Fix -Winitializer-overrides warnings. - * src/util.cc: Fix -Wunused-but-set-variable warnings. - -Upstream: b79c457ca01df82dbe1facb708e45def4584c903 -Signed-off-by: Thomas Petazzoni ---- - gprofng/common/hwcdrv.c | 3 ++- - gprofng/common/hwcentry.h | 7 +---- - gprofng/common/hwctable.c | 13 +--------- - gprofng/libcollector/collector.c | 15 ++++------- - gprofng/libcollector/collector.h | 2 +- - gprofng/libcollector/collectorAPI.c | 15 ++++++----- - gprofng/libcollector/dispatcher.c | 19 ++++++++------ - gprofng/libcollector/iotrace.c | 12 ++++----- - gprofng/libcollector/libcol_util.c | 2 -- - gprofng/libcollector/libcol_util.h | 6 ----- - gprofng/libcollector/linetrace.c | 40 +++++++++++++++++------------ - gprofng/src/BaseMetricTreeNode.h | 1 - - gprofng/src/Dbe.cc | 12 ++++----- - gprofng/src/DbeSession.cc | 3 --- - gprofng/src/Disasm.cc | 1 - - gprofng/src/Experiment.cc | 2 -- - gprofng/src/HashMap.h | 3 +-- - gprofng/src/IOActivity.h | 1 - - gprofng/src/collctrl.cc | 14 +++++----- - gprofng/src/collector_module.h | 20 +++++++-------- - gprofng/src/gp-display-src.cc | 8 ------ - gprofng/src/gp-print.h | 2 +- - gprofng/src/util.cc | 10 +++----- - 23 files changed, 84 insertions(+), 127 deletions(-) - -diff --git a/gprofng/common/hwcdrv.c b/gprofng/common/hwcdrv.c -index 2d549b0d6a5..fa1ad32430b 100644 ---- a/gprofng/common/hwcdrv.c -+++ b/gprofng/common/hwcdrv.c -@@ -650,6 +650,7 @@ read_sample (counter_state_t *ctr_state, int msgsz, uint64_t *rvalue, - static void - dump_perf_event_attr (struct perf_event_attr *at) - { -+#if defined(DEBUG) - TprintfT (DBG_LT2, "dump_perf_event_attr: size=%d type=%d sample_period=%lld\n" - " config=0x%llx config1=0x%llx config2=0x%llx wakeup_events=%lld __reserved_1=%lld\n", - (int) at->size, (int) at->type, (unsigned long long) at->sample_period, -@@ -665,13 +666,13 @@ dump_perf_event_attr (struct perf_event_attr *at) - DUMP_F (exclude_kernel); - DUMP_F (exclude_hv); - DUMP_F (exclude_idle); -- // DUMP_F(xmmap); - DUMP_F (comm); - DUMP_F (freq); - DUMP_F (inherit_stat); - DUMP_F (enable_on_exec); - DUMP_F (task); - DUMP_F (watermark); -+#endif - } - - static void -diff --git a/gprofng/common/hwcentry.h b/gprofng/common/hwcentry.h -index a35a363e693..7899875cf96 100644 ---- a/gprofng/common/hwcentry.h -+++ b/gprofng/common/hwcentry.h -@@ -202,17 +202,12 @@ extern "C" - extern char *hwc_get_docref (char *buf, size_t buflen); - /* Return a CPU HWC document reference, or NULL. */ - -- // TBR -- extern char *hwc_get_default_cntrs (); -- /* Return a default HW counter string; may be NULL, or zero-length */ -- /* NULL means none is defined in the table; or zero-length means string defined could not be loaded */ -- - extern char *hwc_get_default_cntrs2 (int forKernel, int style); - /* like hwc_get_default_cntrs() for style==1 */ - /* but allows other styles of formatting as well */ - /* deprecate and eventually remove hwc_get_default_cntrs() */ - -- extern char *hwc_get_orig_default_cntrs (); -+ extern char *hwc_get_orig_default_cntrs (int forKernel); - /* Get the default HW counter string as set in the table */ - /* NULL means none is defined in the table */ - -diff --git a/gprofng/common/hwctable.c b/gprofng/common/hwctable.c -index d0735132fac..fe9153190e7 100644 ---- a/gprofng/common/hwctable.c -+++ b/gprofng/common/hwctable.c -@@ -3231,7 +3231,7 @@ check_tables () - } - #endif - --static int try_a_counter (); -+static int try_a_counter (int forKernel); - static void hwc_process_raw_ctrs (int forKernel, Hwcentry ***pstd_out, - Hwcentry ***praw_out, Hwcentry ***phidden_out, - Hwcentry**static_tables, -@@ -4321,17 +4321,6 @@ hwc_get_docref (char *buf, size_t buflen) - return buf; - } - --//TBR: -- --extern char* --hwc_get_default_cntrs () --{ -- setup_cpcx (); -- if (cpcx_default_hwcs[0] != NULL) -- return strdup (cpcx_default_hwcs[0]); // TBR deprecate this -- return NULL; --} -- - extern char* - hwc_get_default_cntrs2 (int forKernel, int style) - { -diff --git a/gprofng/libcollector/collector.c b/gprofng/libcollector/collector.c -index 39529758600..ef580dcbdd9 100644 ---- a/gprofng/libcollector/collector.c -+++ b/gprofng/libcollector/collector.c -@@ -210,15 +210,10 @@ get_collector_interface () - static void - collector_module_init (CollectorInterface *col_intf) - { -- int nmodules = 0; -- - ModuleInitFunc next_init = (ModuleInitFunc) dlsym (RTLD_DEFAULT, "__collector_module_init"); - if (next_init != NULL) -- { -- nmodules++; -- next_init (col_intf); -- } -- TprintfT (DBG_LT1, "collector_module_init: %d modules\n", nmodules); -+ next_init (col_intf); -+ TprintfT (DBG_LT1, "collector_module_init: %d modules\n", next_init ? 1 : 0); - } - - /* Routines concerned with general experiment start and stop */ -@@ -1784,7 +1779,7 @@ __collector_pause () - } - - void --__collector_pause_m (char *reason) -+__collector_pause_m (const char *reason) - { - hrtime_t now; - char xreason[MAXPATHLEN]; -@@ -2451,8 +2446,8 @@ __collector_dlog (int tflag, int level, char *format, ...) - - static void (*__real__exit) (int status) = NULL; /* libc only: _exit */ - static void (*__real__Exit) (int status) = NULL; /* libc only: _Exit */ --void _exit () __attribute__ ((weak, alias ("__collector_exit"))); --void _Exit () __attribute__ ((weak, alias ("__collector_Exit"))); -+void _exit (int status) __attribute__ ((weak, alias ("__collector_exit"))); -+void _Exit (int status) __attribute__ ((weak, alias ("__collector_Exit"))); - - void - __collector_exit (int status) -diff --git a/gprofng/libcollector/collector.h b/gprofng/libcollector/collector.h -index 07a03bdd17a..eda68a0e4f5 100644 ---- a/gprofng/libcollector/collector.h -+++ b/gprofng/libcollector/collector.h -@@ -123,7 +123,7 @@ extern void __collector_terminate_expt (); - extern void __collector_terminate_hook (); - extern void __collector_sample (char *name); - extern void __collector_pause (); --extern void __collector_pause_m (); -+extern void __collector_pause_m (const char *reason); - extern void __collector_resume (); - extern int collector_sigemt_sigaction (const struct sigaction*, - struct sigaction*); -diff --git a/gprofng/libcollector/collectorAPI.c b/gprofng/libcollector/collectorAPI.c -index 5fa6403ad49..449bbbaab65 100644 ---- a/gprofng/libcollector/collectorAPI.c -+++ b/gprofng/libcollector/collectorAPI.c -@@ -26,16 +26,17 @@ - #include "collectorAPI.h" - #include "gp-experiment.h" - --static void *__real_collector_sample = NULL; --static void *__real_collector_pause = NULL; --static void *__real_collector_resume = NULL; --static void *__real_collector_terminate_expt = NULL; --static void *__real_collector_func_load = NULL; --static void *__real_collector_func_unload = NULL; -+static void (*__real_collector_sample)(const char *) = NULL; -+static void (*__real_collector_pause)() = NULL; -+static void (*__real_collector_resume)() = NULL; -+static void (*__real_collector_terminate_expt)() = NULL; -+static void (*__real_collector_func_load)(const char *, const char *, -+ const char *, void *, int, int, Lineno *) = NULL; -+static void (*__real_collector_func_unload)(void *) = NULL; - - #define INIT_API if (init_API == 0) collectorAPI_initAPI() - #define NULL_PTR(x) (__real_##x == NULL) --#define CALL_REAL(x) (*(void(*)())__real_##x) -+#define CALL_REAL(x) (__real_##x) - #define CALL_IF_REAL(x) INIT_API; if (!NULL_PTR(x)) CALL_REAL(x) - - static int init_API = 0; -diff --git a/gprofng/libcollector/dispatcher.c b/gprofng/libcollector/dispatcher.c -index d2a4ad0b60b..867753a22ec 100644 ---- a/gprofng/libcollector/dispatcher.c -+++ b/gprofng/libcollector/dispatcher.c -@@ -909,8 +909,9 @@ sigset (int sig, sighandler_t handler) - - // map interposed symbol versions - static int --gprofng_timer_create (int (real_func) (), clockid_t clockid, -- struct sigevent *sevp, timer_t *timerid) -+gprofng_timer_create (int (real_func) (clockid_t, struct sigevent *, timer_t *), -+ clockid_t clockid, -+ struct sigevent *sevp, timer_t *timerid) - { - // collector reserves SIGPROF - if (sevp == NULL || sevp->sigev_notify != SIGEV_SIGNAL || -@@ -1045,7 +1046,7 @@ __collector_thr_sigsetmask (int how, const sigset_t* iset, sigset_t* oset) - // map interposed symbol versions - - static int --gprofng_pthread_sigmask (int (real_func) (), -+gprofng_pthread_sigmask (int (real_func) (int, const sigset_t *, sigset_t*), - int how, const sigset_t *iset, sigset_t* oset) - { - sigset_t lsigset; -@@ -1140,9 +1141,10 @@ collector_root (void *cargs) - // map interposed symbol versions - - static int --gprofng_pthread_create (int (real_func) (), pthread_t *thread, -- const pthread_attr_t *attr, -- void *(*func)(void*), void *arg) -+gprofng_pthread_create (int (real_func) (pthread_t *, const pthread_attr_t *, -+ void *(*)(void *), void *), -+ pthread_t *thread, const pthread_attr_t *attr, -+ void *(*func)(void*), void *arg) - { - TprintfT (DBG_LTT, "gprofng_pthread_create @%p\n", real_func); - if (dispatch_mode != DISPATCH_ON) -@@ -1277,6 +1279,7 @@ __collector_ext_clone_pthread (int (*fn)(void *), void *child_stack, int flags, - } - - // weak symbols: --int sigprocmask () __attribute__ ((weak, alias ("__collector_sigprocmask"))); --int thr_sigsetmask () __attribute__ ((weak, alias ("__collector_thr_sigsetmask"))); -+int sigprocmask (int, const sigset_t*, sigset_t*) __attribute__ ((weak, alias ("__collector_sigprocmask"))); -+int thr_sigsetmask (int, const sigset_t*, sigset_t*) __attribute__ ((weak, alias ("__collector_thr_sigsetmask"))); - int setitimer () __attribute__ ((weak, alias ("_setitimer"))); -+ -diff --git a/gprofng/libcollector/iotrace.c b/gprofng/libcollector/iotrace.c -index 18060864796..3deb441d9c7 100644 ---- a/gprofng/libcollector/iotrace.c -+++ b/gprofng/libcollector/iotrace.c -@@ -1350,7 +1350,7 @@ mkstemp (char *template) - unsigned pktSize; - if (NULL_PTR (mkstemp)) - init_io_intf (); -- if (CHCK_REENTRANCE (guard) || template == NULL) -+ if (CHCK_REENTRANCE (guard)) - return CALL_REAL (mkstemp)(template); - PUSH_REENTRANCE (guard); - hrtime_t reqt = gethrtime (); -@@ -1405,7 +1405,7 @@ mkstemps (char *template, int slen) - unsigned pktSize; - if (NULL_PTR (mkstemps)) - init_io_intf (); -- if (CHCK_REENTRANCE (guard) || template == NULL) -+ if (CHCK_REENTRANCE (guard)) - return CALL_REAL (mkstemps)(template, slen); - PUSH_REENTRANCE (guard); - hrtime_t reqt = gethrtime (); -@@ -1485,7 +1485,7 @@ close (int fildes) - - /*------------------------------------------------------------- fopen */ - static FILE* --gprofng_fopen (FILE*(real_fopen) (), const char *filename, const char *mode) -+gprofng_fopen (FILE*(real_fopen) (const char *, const char *), const char *filename, const char *mode) - { - int *guard; - FILE *fp = NULL; -@@ -1559,7 +1559,7 @@ DCL_FOPEN (fopen) - - /*------------------------------------------------------------- fclose */ - static int --gprofng_fclose (int(real_fclose) (), FILE *stream) -+gprofng_fclose (int(real_fclose) (FILE *), FILE *stream) - { - int *guard; - int stat; -@@ -1645,7 +1645,7 @@ fflush (FILE *stream) - - /*------------------------------------------------------------- fdopen */ - static FILE* --gprofng_fdopen (FILE*(real_fdopen) (), int fildes, const char *mode) -+gprofng_fdopen (FILE*(real_fdopen) (int, const char *), int fildes, const char *mode) - { - int *guard; - FILE *fp = NULL; -@@ -2957,7 +2957,7 @@ DCL_FGETPOS (fgetpos) - - /*------------------------------------------------------------- fgetpos64 */ - static int --gprofng_fgetpos64 (int(real_fgetpos64) (), FILE *stream, fpos64_t *pos) -+gprofng_fgetpos64 (int(real_fgetpos64) (FILE *, fpos64_t *), FILE *stream, fpos64_t *pos) - { - int *guard; - int ret; -diff --git a/gprofng/libcollector/libcol_util.c b/gprofng/libcollector/libcol_util.c -index 15ba24d2ab5..c2b82894e6b 100644 ---- a/gprofng/libcollector/libcol_util.c -+++ b/gprofng/libcollector/libcol_util.c -@@ -1013,7 +1013,6 @@ __collector_open (const char *path, int oflag, ...) - mode_t mode = 0; - - hrtime_t t_timeout = __collector_gethrtime () + 5 * ((hrtime_t) NANOSEC); -- int nretries = 0; - long long delay = 100; /* start at some small, arbitrary value */ - - /* get optional mode argument if it's expected/required */ -@@ -1058,7 +1057,6 @@ __collector_open (const char *path, int oflag, ...) - delay *= 2; - if (delay > 100000000) - delay = 100000000; /* cap at some large, arbitrary value */ -- nretries++; - } - return fd; - } -diff --git a/gprofng/libcollector/libcol_util.h b/gprofng/libcollector/libcol_util.h -index 2eeeaeed50b..1b1b928180a 100644 ---- a/gprofng/libcollector/libcol_util.h -+++ b/gprofng/libcollector/libcol_util.h -@@ -81,12 +81,6 @@ extern int __collector_mutex_trylock (collector_mutex_t *mp); - #define __collector_mutex_init(xx) \ - do { collector_mutex_t tmp=COLLECTOR_MUTEX_INITIALIZER; *(xx)=tmp; } while(0) - --void __collector_sample (char *name); --void __collector_terminate_expt (); --void __collector_pause (); --void __collector_pause_m (); --void __collector_resume (); -- - struct DT_lineno; - - typedef enum -diff --git a/gprofng/libcollector/linetrace.c b/gprofng/libcollector/linetrace.c -index 67b2d7e9030..66844bc1337 100644 ---- a/gprofng/libcollector/linetrace.c -+++ b/gprofng/libcollector/linetrace.c -@@ -1207,7 +1207,7 @@ __collector_vfork (void) - } - - /*------------------------------------------------------------- execve */ --int execve () __attribute__ ((weak, alias ("__collector_execve"))); -+int execve (const char *, char *const [], char *const []) __attribute__ ((weak, alias ("__collector_execve"))); - - int - __collector_execve (const char* path, char *const argv[], char *const envp[]) -@@ -1237,7 +1237,7 @@ __collector_execve (const char* path, char *const argv[], char *const envp[]) - return ret; - } - --int execvp () __attribute__ ((weak, alias ("__collector_execvp"))); -+int execvp (const char *, char *const []) __attribute__ ((weak, alias ("__collector_execvp"))); - - int - __collector_execvp (const char* file, char *const argv[]) -@@ -1269,7 +1269,7 @@ __collector_execvp (const char* file, char *const argv[]) - return ret; - } - --int execv () __attribute__ ((weak, alias ("__collector_execv"))); -+int execv (const char *, char *const []) __attribute__ ((weak, alias ("__collector_execv"))); - - int - __collector_execv (const char* path, char *const argv[]) -@@ -1408,7 +1408,10 @@ __collector_execl (const char* path, const char *arg0, ...) - /*-------------------------------------------------------- posix_spawn */ - // map interposed symbol versions - static int --gprofng_posix_spawn (int(real_posix_spawn) (), -+gprofng_posix_spawn (int(real_posix_spawn) (pid_t *, const char *, -+ const posix_spawn_file_actions_t *, -+ const posix_spawnattr_t *, -+ char *const [], char *const []), - pid_t *pidp, const char *path, - const posix_spawn_file_actions_t *file_actions, - const posix_spawnattr_t *attrp, -@@ -1466,7 +1469,10 @@ DCL_POSIX_SPAWN (posix_spawn) - - /*-------------------------------------------------------- posix_spawnp */ - static int --gprofng_posix_spawnp (int (real_posix_spawnp) (), -+gprofng_posix_spawnp (int (real_posix_spawnp) (pid_t *, const char *, -+ const posix_spawn_file_actions_t *, -+ const posix_spawnattr_t *, -+ char *const [], char *const []), - pid_t *pidp, const char *path, - const posix_spawn_file_actions_t *file_actions, - const posix_spawnattr_t *attrp, -@@ -1754,8 +1760,8 @@ __collector_clone (int (*fn)(void *), void *child_stack, int flags, void *arg, - } - - /*-------------------------------------------------------------------- setuid */ --int setuid () __attribute__ ((weak, alias ("__collector_setuid"))); --int _setuid () __attribute__ ((weak, alias ("__collector_setuid"))); -+int setuid (uid_t) __attribute__ ((weak, alias ("__collector_setuid"))); -+int _setuid (uid_t) __attribute__ ((weak, alias ("__collector_setuid"))); - - int - __collector_setuid (uid_t ruid) -@@ -1770,8 +1776,8 @@ __collector_setuid (uid_t ruid) - } - - /*------------------------------------------------------------------- seteuid */ --int seteuid () __attribute__ ((weak, alias ("__collector_seteuid"))); --int _seteuid () __attribute__ ((weak, alias ("__collector_seteuid"))); -+int seteuid (uid_t) __attribute__ ((weak, alias ("__collector_seteuid"))); -+int _seteuid (uid_t) __attribute__ ((weak, alias ("__collector_seteuid"))); - - int - __collector_seteuid (uid_t euid) -@@ -1786,8 +1792,8 @@ __collector_seteuid (uid_t euid) - } - - /*------------------------------------------------------------------ setreuid */ --int setreuid () __attribute__ ((weak, alias ("__collector_setreuid"))); --int _setreuid () __attribute__ ((weak, alias ("__collector_setreuid"))); -+int setreuid (uid_t, uid_t) __attribute__ ((weak, alias ("__collector_setreuid"))); -+int _setreuid (uid_t, uid_t) __attribute__ ((weak, alias ("__collector_setreuid"))); - - int - __collector_setreuid (uid_t ruid, uid_t euid) -@@ -1802,8 +1808,8 @@ __collector_setreuid (uid_t ruid, uid_t euid) - } - - /*-------------------------------------------------------------------- setgid */ --int setgid () __attribute__ ((weak, alias ("__collector_setgid"))); --int _setgid () __attribute__ ((weak, alias ("__collector_setgid"))); -+int setgid (gid_t) __attribute__ ((weak, alias ("__collector_setgid"))); -+int _setgid (gid_t) __attribute__ ((weak, alias ("__collector_setgid"))); - - int - __collector_setgid (gid_t rgid) -@@ -1818,8 +1824,8 @@ __collector_setgid (gid_t rgid) - } - - /*------------------------------------------------------------------- setegid */ --int setegid () __attribute__ ((weak, alias ("__collector_setegid"))); --int _setegid () __attribute__ ((weak, alias ("__collector_setegid"))); -+int setegid (gid_t) __attribute__ ((weak, alias ("__collector_setegid"))); -+int _setegid (gid_t) __attribute__ ((weak, alias ("__collector_setegid"))); - - int - __collector_setegid (gid_t egid) -@@ -1834,8 +1840,8 @@ __collector_setegid (gid_t egid) - } - - /*------------------------------------------------------------------ setregid */ --int setregid () __attribute__ ((weak, alias ("__collector_setregid"))); --int _setregid () __attribute__ ((weak, alias ("__collector_setregid"))); -+int setregid (gid_t, gid_t) __attribute__ ((weak, alias ("__collector_setregid"))); -+int _setregid (gid_t, gid_t) __attribute__ ((weak, alias ("__collector_setregid"))); - - int - __collector_setregid (gid_t rgid, gid_t egid) -diff --git a/gprofng/src/BaseMetricTreeNode.h b/gprofng/src/BaseMetricTreeNode.h -index d73d244e27e..7698f9c6eaf 100644 ---- a/gprofng/src/BaseMetricTreeNode.h -+++ b/gprofng/src/BaseMetricTreeNode.h -@@ -85,7 +85,6 @@ private: - - BaseMetricTreeNode *root; // root of tree - BaseMetricTreeNode *parent; // my parent -- bool aggregation; // value is based on children's values - char *name; // bm->get_cmd() for metrics, unique string otherwise - char *uname; // user-visible text - char *unit; // see UNIT_* defines -diff --git a/gprofng/src/Dbe.cc b/gprofng/src/Dbe.cc -index 91a5aa5ef05..bcbf4694565 100644 ---- a/gprofng/src/Dbe.cc -+++ b/gprofng/src/Dbe.cc -@@ -9594,14 +9594,12 @@ dbeGetTLDataRepVals (VMode view_mode, hrtime_t start_ts, hrtime_t delta, - } - if (sampleVals != NULL) - { -- Sample* sample = (Sample*) packets->getObjValue (PROP_SMPLOBJ, packetIdx); -- if (!sample || !sample->get_usage ()) -- sample = sample; -- else -+ Sample *sample = (Sample*) packets->getObjValue (PROP_SMPLOBJ, packetIdx); -+ if (sample != NULL) - { -- PrUsage* prusage = sample->get_usage (); -- Vector *mstateVals = prusage->getMstateValues (); -- sampleVals->store (eventIdx, mstateVals); -+ PrUsage *prusage = sample->get_usage (); -+ if (prusage != NULL) -+ sampleVals->store (eventIdx, prusage->getMstateValues ()); - } - } - } -diff --git a/gprofng/src/DbeSession.cc b/gprofng/src/DbeSession.cc -index 20329091167..5d6bab75638 100644 ---- a/gprofng/src/DbeSession.cc -+++ b/gprofng/src/DbeSession.cc -@@ -1162,8 +1162,6 @@ DbeSession::open_experiment (Experiment *exp, char *path) - closedir (exp_dir); - exp_names->sort (dir_name_cmp); - Experiment **t_exp_list = new Experiment *[exp_names->size ()]; -- int nsubexps = 0; -- - for (int j = 0, jsz = exp_names->size (); j < jsz; j++) - { - t_exp_list[j] = NULL; -@@ -1220,7 +1218,6 @@ DbeSession::open_experiment (Experiment *exp, char *path) - dexp->open (dpath); - append (dexp); - t_exp_list[j] = dexp; -- nsubexps++; - dexp->set_clock (exp->clock); - - // DbeView add_experiment() is split into two parts -diff --git a/gprofng/src/Disasm.cc b/gprofng/src/Disasm.cc -index 1396e4fb072..d78212cee39 100644 ---- a/gprofng/src/Disasm.cc -+++ b/gprofng/src/Disasm.cc -@@ -49,7 +49,6 @@ struct DisContext - }; - - static const int MAX_DISASM_STR = 2048; --static const int MAX_INSTR_SIZE = 8; - - Disasm::Disasm (char *fname) - { -diff --git a/gprofng/src/Experiment.cc b/gprofng/src/Experiment.cc -index 02a24ebc40d..a31550aff66 100644 ---- a/gprofng/src/Experiment.cc -+++ b/gprofng/src/Experiment.cc -@@ -1935,8 +1935,6 @@ private: - } - - Experiment *exp; -- char *hostname; -- hrtime_t time, tstamp; - }; - - void -diff --git a/gprofng/src/HashMap.h b/gprofng/src/HashMap.h -index 918c0dc95f9..c5fdd345ba8 100644 ---- a/gprofng/src/HashMap.h -+++ b/gprofng/src/HashMap.h -@@ -78,9 +78,8 @@ copy_key (uint64_t a) - } - - template<> inline void --delete_key (uint64_t a) -+delete_key (uint64_t) - { -- a = a; - } - - template<> inline int -diff --git a/gprofng/src/IOActivity.h b/gprofng/src/IOActivity.h -index cf462cf8d55..f3a22ada6b1 100644 ---- a/gprofng/src/IOActivity.h -+++ b/gprofng/src/IOActivity.h -@@ -78,7 +78,6 @@ private: - Hist_data *hist_data_file_all; - Hist_data *hist_data_vfd_all; - Hist_data *hist_data_callstack_all; -- Hist_data *hist_data_callstack; - - DbeView *dbev; - }; -diff --git a/gprofng/src/collctrl.cc b/gprofng/src/collctrl.cc -index ebf888c5a20..b0ed66efcdc 100644 ---- a/gprofng/src/collctrl.cc -+++ b/gprofng/src/collctrl.cc -@@ -952,9 +952,7 @@ Coll_Ctrl::set_clkprof (const char *string, char** warn) - double dval = strtod (string, &endchar); - if (*endchar == 'm' || *endchar == 0) /* user specified milliseconds */ - dval = dval * 1000.; -- else if (*endchar == 'u') /* user specified microseconds */ -- dval = dval; -- else -+ else if (*endchar != 'u') - return dbe_sprintf (GTXT ("Unrecognized clock-profiling interval `%s'\n"), string); - nclkprof_timer = (int) (dval + 0.5); - } -@@ -2901,7 +2899,7 @@ Coll_Ctrl::get (char * control) - } - if (!strncmp (control, ipc_str_javaprof, len)) - { -- if ((java_mode == 0)) -+ if (java_mode == 0) - return strdup (ipc_str_off); - return strdup (ipc_str_on); - } -@@ -2917,7 +2915,7 @@ Coll_Ctrl::get (char * control) - } - if (!strncmp (control, ipc_str_sample_sig, len)) - { -- if ((sample_sig == 0)) -+ if (sample_sig == 0) - return strdup (ipc_str_off); - char *str_signal = find_signal_name (sample_sig); - if (str_signal != NULL) -@@ -2951,15 +2949,15 @@ Coll_Ctrl::get (char * control) - } - if (!strncmp (control, ipc_str_iotrace, len)) - { -- if ((iotrace_enabled == 0)) -+ if (iotrace_enabled == 0) - return strdup (ipc_str_off); - return strdup (ipc_str_on); - } - if (!strncmp (control, ipc_str_count, len)) - { -- if ((count_enabled == 0)) -+ if (count_enabled == 0) - return strdup (ipc_str_off); -- if ((count_enabled < 0)) -+ if (count_enabled < 0) - return strdup ("on\nstatic"); - return strdup (ipc_str_on); - } -diff --git a/gprofng/src/collector_module.h b/gprofng/src/collector_module.h -index bb48eadb9f8..ebcdbca561f 100644 ---- a/gprofng/src/collector_module.h -+++ b/gprofng/src/collector_module.h -@@ -40,12 +40,12 @@ struct tm; - * If you add any, please put it in the right place */ - typedef struct CollectorUtilFuncs - { -- int (*access)(); -+ int (*access)(const char *, int); - int (*atoi)(const char *nptr); - void *(*calloc)(size_t nelem, size_t elsize); - int (*clearenv)(void); - int (*close)(int); -- int (*closedir)(); -+ int (*closedir)(DIR *); - int (*execv)(const char *path, char *const argv[]); - void (*exit)(int status); - int (*fclose)(FILE *stream); -@@ -66,20 +66,20 @@ typedef struct CollectorUtilFuncs - off_t (*lseek)(int fd, off_t offset, int whence); - void *(*malloc)(size_t size); - void *(*memset)(void *s1, int c, size_t n); -- int (*mkdir)(); -+ int (*mkdir)(const char *, mode_t); - time_t (*mktime)(struct tm *timeptr); - void *(*mmap)(void *, size_t, int, int, int, off_t); -- void *(*mmap64_)(); -- int (*munmap)(); -+ void *(*mmap64_)(void *, size_t, int, int, int, off_t); -+ int (*munmap)(void *, size_t); - int (*open)(const char *, int, ...); - int (*open_bare)(const char *, int, ...); -- DIR *(*opendir)(); -+ DIR *(*opendir)(const char *); - int (*pclose)(FILE *stream); - FILE *(*popen)(const char *command, const char *mode); - int (*putenv)(char *string); -- ssize_t (*pwrite)(); -- ssize_t (*pwrite64_)(); -- ssize_t (*read)(); -+ ssize_t (*pwrite)(int, const void *, size_t, off_t); -+ ssize_t (*pwrite64_)(int, const void *, size_t, off_t); -+ ssize_t (*read)(int, void *, size_t); - int (*setenv)(const char *name, const char *value, int overwrite); - int (*sigfillset)(sigset_t *set); - int (*sigprocmask)(int how, const sigset_t *set, sigset_t *oldset); -@@ -112,7 +112,7 @@ typedef struct CollectorUtilFuncs - int (*unsetenv)(const char *name); - int (*vsnprintf)(char *str, size_t size, const char *format, va_list ap); - pid_t (*waitpid)(pid_t pid, int *stat_loc, int options); -- ssize_t (*write)(); -+ ssize_t (*write)(int, void *, size_t); - double (*atof)(); - void *n_a; - } CollectorUtilFuncs; -diff --git a/gprofng/src/gp-display-src.cc b/gprofng/src/gp-display-src.cc -index 200e6080d2e..24af375edf1 100644 ---- a/gprofng/src/gp-display-src.cc -+++ b/gprofng/src/gp-display-src.cc -@@ -75,14 +75,6 @@ private: - bool v_opt; - int multiple; - char *str_compcom; -- bool hex_visible; -- int src_visible; -- int vis_src; -- int vis_dis; -- int threshold_src; -- int threshold_dis; -- int threshold; -- int vis_bits; - }; - - static int -diff --git a/gprofng/src/gp-print.h b/gprofng/src/gp-print.h -index 1b748ea60a3..1a8ad3b6c13 100644 ---- a/gprofng/src/gp-print.h -+++ b/gprofng/src/gp-print.h -@@ -19,7 +19,7 @@ - MA 02110-1301, USA. */ - - #ifndef _GP_PRINT_H --#define _ER_PRINT_H -+#define _GP_PRINT_H - - #include "Command.h" - #include "DbeApplication.h" -diff --git a/gprofng/src/util.cc b/gprofng/src/util.cc -index 201f7088b66..228140b61ae 100644 ---- a/gprofng/src/util.cc -+++ b/gprofng/src/util.cc -@@ -741,17 +741,13 @@ get_relative_link (const char *path_from, const char *path_to) - s2 = canonical_path (s2); - long l = dbe_sstrlen (s1); - // try to find common directories -- int common_slashes = 0; - int last_common_slash = -1; - for (int i = 0; i < l; i++) - { -- if (s1[i] != s2[i]) break; -- if (s1[i] == 0) break; -+ if (s1[i] != s2[i] || s1[i] == 0) -+ break; - if (s1[i] == '/') -- { -- common_slashes++; -- last_common_slash = i; -- } -+ last_common_slash = i; - } - // find slashes in remaining path_to - int slashes = 0; --- -2.50.1 - diff --git a/package/binutils/2.42/0006-gprofng-fix-std-gnu23-compatibility-wrt-unprototyped.patch b/package/binutils/2.42/0006-gprofng-fix-std-gnu23-compatibility-wrt-unprototyped.patch deleted file mode 100644 index 06ca165570..0000000000 --- a/package/binutils/2.42/0006-gprofng-fix-std-gnu23-compatibility-wrt-unprototyped.patch +++ /dev/null @@ -1,619 +0,0 @@ -From 2e59be3bc9dad69af4f62d26107b6ace23e9998a Mon Sep 17 00:00:00 2001 -From: Sam James -Date: Sat, 16 Nov 2024 05:13:48 +0000 -Subject: [PATCH] gprofng: fix -std=gnu23 compatibility wrt unprototyped - functions - -C23 removes support for unprototyped functions. Fix function pointer types -accordingly. - -This does not fix all instances, there's a few left as I commented on in -PR32374 (e.g. setitimer which I have a local workaround for but it involves -a glibc implementation detail; the Linaro precommit CI tester pointed that -out too, so dropped that). - -ChangeLog: - PR gprofng/32374 - - * libcollector/collector.c (collector_sample): Fix prototype. - * libcollector/envmgmt.c (putenv): Ditto. - (_putenv): Ditto. - (__collector_putenv): Ditto. - (setenv): Ditto. - (_setenv): Ditto. - (__collector_setenv): Ditto. - (unsetenv): Ditto. - (_unsetenv): Ditto. - (__collector_unsetenv): Ditto. - * libcollector/jprofile.c (open_experiment): Ditto. - (__collector_jprofile_enable_synctrace): Ditto. - (jprof_find_asyncgetcalltrace): Ditto. - * libcollector/libcol_util.c (__collector_util_init): Ditto. - (ARCH): Ditto. - * libcollector/mmaptrace.c (collector_func_load): Ditto. - (collector_func_unload): Ditto. - * libcollector/unwind.c (__collector_ext_unwind_init): Ditto. - * src/collector_module.h: Ditto. - -Upstream: a2f774427e078f3da2c06bdea25f77a61979a695 -Signed-off-by: Thomas Petazzoni ---- - gprofng/libcollector/collector.c | 2 +- - gprofng/libcollector/dispatcher.c | 1 - - gprofng/libcollector/envmgmt.c | 24 ++++----- - gprofng/libcollector/jprofile.c | 10 ++-- - gprofng/libcollector/libcol_util.c | 84 +++++++++++++++--------------- - gprofng/libcollector/mmaptrace.c | 4 +- - gprofng/libcollector/unwind.c | 2 +- - gprofng/src/collector_module.h | 2 +- - 8 files changed, 64 insertions(+), 65 deletions(-) - -diff --git a/gprofng/libcollector/collector.c b/gprofng/libcollector/collector.c -index ef580dcbdd9..899f08a5381 100644 ---- a/gprofng/libcollector/collector.c -+++ b/gprofng/libcollector/collector.c -@@ -1579,7 +1579,7 @@ __collector_resume_experiment () - } - - /* Code to support Samples and Pause/Resume */ --void collector_sample () __attribute__ ((weak, alias ("__collector_sample"))); -+void collector_sample (char *name) __attribute__ ((weak, alias ("__collector_sample"))); - void - __collector_sample (char *name) - { -diff --git a/gprofng/libcollector/dispatcher.c b/gprofng/libcollector/dispatcher.c -index 867753a22ec..5ee0bf895bf 100644 ---- a/gprofng/libcollector/dispatcher.c -+++ b/gprofng/libcollector/dispatcher.c -@@ -1282,4 +1282,3 @@ __collector_ext_clone_pthread (int (*fn)(void *), void *child_stack, int flags, - int sigprocmask (int, const sigset_t*, sigset_t*) __attribute__ ((weak, alias ("__collector_sigprocmask"))); - int thr_sigsetmask (int, const sigset_t*, sigset_t*) __attribute__ ((weak, alias ("__collector_thr_sigsetmask"))); - int setitimer () __attribute__ ((weak, alias ("_setitimer"))); -- -diff --git a/gprofng/libcollector/envmgmt.c b/gprofng/libcollector/envmgmt.c -index ebe08f82007..0ff7621070d 100644 ---- a/gprofng/libcollector/envmgmt.c -+++ b/gprofng/libcollector/envmgmt.c -@@ -692,8 +692,8 @@ __collector_env_update (char *envp[]) - - - /*------------------------------------------------------------- putenv */ --int putenv () __attribute__ ((weak, alias ("__collector_putenv"))); --int _putenv () __attribute__ ((weak, alias ("__collector_putenv"))); -+int putenv (char*) __attribute__ ((weak, alias ("__collector_putenv"))); -+int _putenv (char*) __attribute__ ((weak, alias ("__collector_putenv"))); - - int - __collector_putenv (char * string) -@@ -701,9 +701,9 @@ __collector_putenv (char * string) - if (CALL_UTIL (putenv) == __collector_putenv || - CALL_UTIL (putenv) == NULL) - { // __collector_libc_funcs_init failed -- CALL_UTIL (putenv) = (int(*)())dlsym (RTLD_NEXT, "putenv"); -+ CALL_UTIL (putenv) = (int(*)(char*))dlsym (RTLD_NEXT, "putenv"); - if (CALL_UTIL (putenv) == NULL || CALL_UTIL (putenv) == __collector_putenv) -- CALL_UTIL (putenv) = (int(*)())dlsym (RTLD_DEFAULT, "putenv"); -+ CALL_UTIL (putenv) = (int(*)(char*))dlsym (RTLD_DEFAULT, "putenv"); - if (CALL_UTIL (putenv) == NULL || CALL_UTIL (putenv) == __collector_putenv) - { - TprintfT (DBG_LT2, "__collector_putenv(): ERROR: no pointer found.\n"); -@@ -719,8 +719,8 @@ __collector_putenv (char * string) - } - - /*------------------------------------------------------------- setenv */ --int setenv () __attribute__ ((weak, alias ("__collector_setenv"))); --int _setenv () __attribute__ ((weak, alias ("__collector_setenv"))); -+int setenv (const char*, const char*, int) __attribute__ ((weak, alias ("__collector_setenv"))); -+int _setenv (const char*, const char*, int) __attribute__ ((weak, alias ("__collector_setenv"))); - - int - __collector_setenv (const char *name, const char *value, int overwrite) -@@ -728,9 +728,9 @@ __collector_setenv (const char *name, const char *value, int overwrite) - if (CALL_UTIL (setenv) == __collector_setenv || - CALL_UTIL (setenv) == NULL) - { // __collector_libc_funcs_init failed -- CALL_UTIL (setenv) = (int(*)())dlsym (RTLD_NEXT, "setenv"); -+ CALL_UTIL (setenv) = (int(*)(const char*, const char*, int))dlsym (RTLD_NEXT, "setenv"); - if (CALL_UTIL (setenv) == NULL || CALL_UTIL (setenv) == __collector_setenv) -- CALL_UTIL (setenv) = (int(*)())dlsym (RTLD_DEFAULT, "setenv"); -+ CALL_UTIL (setenv) = (int(*)(const char*, const char*, int))dlsym (RTLD_DEFAULT, "setenv"); - if (CALL_UTIL (setenv) == NULL || CALL_UTIL (setenv) == __collector_setenv) - { - TprintfT (DBG_LT2, "__collector_setenv(): ERROR: no pointer found.\n"); -@@ -765,8 +765,8 @@ __collector_setenv (const char *name, const char *value, int overwrite) - } - - /*------------------------------------------------------------- unsetenv */ --int unsetenv () __attribute__ ((weak, alias ("__collector_unsetenv"))); --int _unsetenv () __attribute__ ((weak, alias ("__collector_unsetenv"))); -+int unsetenv (const char*) __attribute__ ((weak, alias ("__collector_unsetenv"))); -+int _unsetenv (const char*) __attribute__ ((weak, alias ("__collector_unsetenv"))); - - int - __collector_unsetenv (const char *name) -@@ -774,9 +774,9 @@ __collector_unsetenv (const char *name) - if (CALL_UTIL (unsetenv) == __collector_unsetenv || - CALL_UTIL (unsetenv) == NULL) - { // __collector_libc_funcs_init failed -- CALL_UTIL (unsetenv) = (int(*)())dlsym (RTLD_NEXT, "unsetenv"); -+ CALL_UTIL (unsetenv) = (int(*)(const char*))dlsym (RTLD_NEXT, "unsetenv"); - if (CALL_UTIL (unsetenv) == NULL || CALL_UTIL (unsetenv) == __collector_unsetenv) -- CALL_UTIL (unsetenv) = (int(*)())dlsym (RTLD_DEFAULT, "unsetenv"); -+ CALL_UTIL (unsetenv) = (int(*)(const char*))dlsym (RTLD_DEFAULT, "unsetenv"); - if (CALL_UTIL (unsetenv) == NULL || CALL_UTIL (unsetenv) == __collector_unsetenv) - { - TprintfT (DBG_LT2, "__collector_unsetenv(): ERROR: no pointer found.\n"); -diff --git a/gprofng/libcollector/jprofile.c b/gprofng/libcollector/jprofile.c -index 1bacacc1a2a..11051f937ef 100644 ---- a/gprofng/libcollector/jprofile.c -+++ b/gprofng/libcollector/jprofile.c -@@ -105,8 +105,8 @@ static void rwrite (int fd, const void *buf, size_t nbyte); - static void addToDynamicArchive (const char* name, const unsigned char* class_data, int class_data_len); - static void (*AsyncGetCallTrace)(JVMPI_CallTrace*, jint, ucontext_t*) = NULL; - static void (*collector_heap_record)(int, int, void*) = NULL; --static void (*collector_jsync_begin)() = NULL; --static void (*collector_jsync_end)(hrtime_t, void *) = NULL; -+static void (*collector_jsync_begin)(void) = NULL; -+static void (*collector_jsync_end)(hrtime_t, void*) = NULL; - - #define gethrtime collector_interface->getHiResTime - -@@ -230,7 +230,7 @@ open_experiment (const char *exp) - else if (__collector_strStartWith (args, "s:") == 0) - { - java_sync_mode = 1; -- collector_jsync_begin = (void(*)(hrtime_t, void *))dlsym (RTLD_DEFAULT, "__collector_jsync_begin"); -+ collector_jsync_begin = (void(*)(void))dlsym (RTLD_DEFAULT, "__collector_jsync_begin"); - collector_jsync_end = (void(*)(hrtime_t, void *))dlsym (RTLD_DEFAULT, "__collector_jsync_end"); - } - #endif -@@ -255,7 +255,7 @@ __collector_jprofile_enable_synctrace () - return; - } - java_sync_mode = 1; -- collector_jsync_begin = (void(*)(hrtime_t, void *))dlsym (RTLD_DEFAULT, "__collector_jsync_begin"); -+ collector_jsync_begin = (void(*)(void))dlsym (RTLD_DEFAULT, "__collector_jsync_begin"); - collector_jsync_end = (void(*)(hrtime_t, void *))dlsym (RTLD_DEFAULT, "__collector_jsync_end"); - TprintfT (DBG_LT1, "jprofile: turning on Java synctrace, and requesting events\n"); - } -@@ -1129,7 +1129,7 @@ jprof_find_asyncgetcalltrace () - { - void *jvmhandle; - if (__collector_VM_ReadByteInstruction == NULL) -- __collector_VM_ReadByteInstruction = (int(*)()) dlsym (RTLD_DEFAULT, "Async_VM_ReadByteInstruction"); -+ __collector_VM_ReadByteInstruction = (int(*)(unsigned char*)) dlsym (RTLD_DEFAULT, "Async_VM_ReadByteInstruction"); - - /* look for stack unwind function using default path */ - AsyncGetCallTrace = (void (*)(JVMPI_CallTrace*, jint, ucontext_t*)) -diff --git a/gprofng/libcollector/libcol_util.c b/gprofng/libcollector/libcol_util.c -index c2b82894e6b..688bdf19c6d 100644 ---- a/gprofng/libcollector/libcol_util.c -+++ b/gprofng/libcollector/libcol_util.c -@@ -1114,7 +1114,7 @@ __collector_util_init () - - ptr = dlsym (libc, "munmap"); - if (ptr) -- __collector_util_funcs.munmap = (int(*)())ptr; -+ __collector_util_funcs.munmap = (int(*)(void *, size_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT munmap: %s\n", dlerror ()); -@@ -1123,7 +1123,7 @@ __collector_util_init () - - ptr = dlsym (libc, "close"); - if (ptr) -- __collector_util_funcs.close = (int(*)())ptr; -+ __collector_util_funcs.close = (int(*)(int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT close: %s\n", dlerror ()); -@@ -1158,7 +1158,7 @@ __collector_util_init () - - ptr = dlsym (libc, "close"); - if (ptr) -- __collector_util_funcs.close = (int(*)())ptr; -+ __collector_util_funcs.close = (int(*)(int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT close: %s\n", dlerror ()); -@@ -1167,7 +1167,7 @@ __collector_util_init () - - ptr = dlsym (libc, "read"); - if (ptr) -- __collector_util_funcs.read = (ssize_t (*)())ptr; -+ __collector_util_funcs.read = (ssize_t (*)(int, void*, size_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT read: %s\n", dlerror ()); -@@ -1176,7 +1176,7 @@ __collector_util_init () - - ptr = dlsym (libc, "write"); - if (ptr) -- __collector_util_funcs.write = (ssize_t (*)())ptr; -+ __collector_util_funcs.write = (ssize_t (*)(int, void*, size_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT write: %s\n", dlerror ()); -@@ -1186,14 +1186,14 @@ __collector_util_init () - #if ARCH(Intel) && WSIZE(32) - ptr = dlvsym (libc, "pwrite", "GLIBC_2.2"); // it is in /lib/libpthread.so.0 - if (ptr) -- __collector_util_funcs.pwrite = (ssize_t (*)())ptr; -+ __collector_util_funcs.pwrite = (ssize_t (*)(int, void*, size_t, off_t))ptr; - else - { - Tprintf (DBG_LT0, "libcol_util: WARNING: dlvsym for %s@%s failed. Using dlsym() instead.", "pwrite", "GLIBC_2.2"); - #endif /* ARCH(Intel) && WSIZE(32) */ - ptr = dlsym (libc, "pwrite"); - if (ptr) -- __collector_util_funcs.pwrite = (ssize_t (*)())ptr; -+ __collector_util_funcs.pwrite = (ssize_t (*)(int, const void*, size_t, off_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT pwrite: %s\n", dlerror ()); -@@ -1213,7 +1213,7 @@ __collector_util_init () - #endif /* ARCH(Intel) && WSIZE(32) */ - ptr = dlsym (libc, "pwrite64"); - if (ptr) -- __collector_util_funcs.pwrite64_ = (ssize_t (*)())ptr; -+ __collector_util_funcs.pwrite64_ = (ssize_t (*)(int, const void*, size_t, off_t))ptr; - else - __collector_util_funcs.pwrite64_ = __collector_util_funcs.pwrite; - #if ARCH(Intel) && WSIZE(32) -@@ -1222,7 +1222,7 @@ __collector_util_init () - - ptr = dlsym (libc, "lseek"); - if (ptr) -- __collector_util_funcs.lseek = (off_t (*)())ptr; -+ __collector_util_funcs.lseek = (off_t (*)(int, off_t, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT lseek: %s\n", dlerror ()); -@@ -1231,7 +1231,7 @@ __collector_util_init () - - ptr = dlsym (libc, "access"); - if (ptr) -- __collector_util_funcs.access = (int(*)())ptr; -+ __collector_util_funcs.access = (int(*)(const char*, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT access: %s\n", dlerror ()); -@@ -1240,7 +1240,7 @@ __collector_util_init () - - ptr = dlsym (libc, "mkdir"); - if (ptr) -- __collector_util_funcs.mkdir = (int(*)())ptr; -+ __collector_util_funcs.mkdir = (int(*)(const char*, mode_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT mkdir: %s\n", dlerror ()); -@@ -1249,7 +1249,7 @@ __collector_util_init () - - ptr = dlsym (libc, "opendir"); - if (ptr) -- __collector_util_funcs.opendir = (DIR * (*)())ptr; -+ __collector_util_funcs.opendir = (DIR * (*)(const char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT opendir: %s\n", dlerror ()); -@@ -1258,7 +1258,7 @@ __collector_util_init () - - ptr = dlsym (libc, "closedir"); - if (ptr) -- __collector_util_funcs.closedir = (int(*)())ptr; -+ __collector_util_funcs.closedir = (int(*)(DIR*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT closedir: %s\n", dlerror ()); -@@ -1267,7 +1267,7 @@ __collector_util_init () - - ptr = dlsym (libc, "execv"); - if (ptr) -- __collector_util_funcs.execv = (int(*)())ptr; -+ __collector_util_funcs.execv = (int(*)(const char*, char* const*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT execv: %s\n", dlerror ()); -@@ -1276,7 +1276,7 @@ __collector_util_init () - - ptr = dlsym (libc, "exit"); - if (ptr) -- __collector_util_funcs.exit = (void(*)())ptr; -+ __collector_util_funcs.exit = (void(*)(int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT exit: %s\n", dlerror ()); -@@ -1285,7 +1285,7 @@ __collector_util_init () - - ptr = dlsym (libc, "vfork"); - if (ptr) -- __collector_util_funcs.vfork = (pid_t (*)())ptr; -+ __collector_util_funcs.vfork = (pid_t (*)(void))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT vfork: %s\n", dlerror ()); -@@ -1294,7 +1294,7 @@ __collector_util_init () - - ptr = dlsym (libc, "waitpid"); - if (ptr) -- __collector_util_funcs.waitpid = (pid_t (*)())ptr; -+ __collector_util_funcs.waitpid = (pid_t (*)(pid_t, int*, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT waitpid: %s\n", dlerror ()); -@@ -1313,7 +1313,7 @@ __collector_util_init () - - ptr = dlsym (libc, "getcontext"); - if (ptr) -- __collector_util_funcs.getcontext = (int(*)())ptr; -+ __collector_util_funcs.getcontext = (int(*)(ucontext_t*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT getcontext: %s\n", dlerror ()); -@@ -1331,7 +1331,7 @@ __collector_util_init () - - ptr = dlsym (libc, "putenv"); - if (ptr) -- __collector_util_funcs.putenv = (int(*)())ptr; -+ __collector_util_funcs.putenv = (int(*)(char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT putenv: %s\n", dlerror ()); -@@ -1340,7 +1340,7 @@ __collector_util_init () - - ptr = dlsym (libc, "getenv"); - if (ptr) -- __collector_util_funcs.getenv = (char*(*)())ptr; -+ __collector_util_funcs.getenv = (char*(*)(const char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT getenv: %s\n", dlerror ()); -@@ -1349,7 +1349,7 @@ __collector_util_init () - - ptr = dlsym (libc, "time"); - if (ptr) -- __collector_util_funcs.time = (time_t (*)())ptr; -+ __collector_util_funcs.time = (time_t (*)(time_t*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT time: %s\n", dlerror ()); -@@ -1358,7 +1358,7 @@ __collector_util_init () - - ptr = dlsym (libc, "mktime"); - if (ptr) -- __collector_util_funcs.mktime = (time_t (*)())ptr; -+ __collector_util_funcs.mktime = (time_t (*)(struct tm*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT mktime: %s\n", dlerror ()); -@@ -1372,7 +1372,7 @@ __collector_util_init () - - ptr = dlsym (libc, "gmtime_r"); - if (ptr) -- __collector_util_funcs.gmtime_r = (struct tm * (*)())ptr; -+ __collector_util_funcs.gmtime_r = (struct tm * (*)(const time_t*, struct tm*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT gmtime_r: %s\n", dlerror ()); -@@ -1381,7 +1381,7 @@ __collector_util_init () - - ptr = dlsym (libc, "strtol"); - if (ptr) -- __collector_util_funcs.strtol = (long (*)())ptr; -+ __collector_util_funcs.strtol = (long (*)(const char*, char**, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strtol: %s\n", dlerror ()); -@@ -1390,7 +1390,7 @@ __collector_util_init () - - ptr = dlsym (libc, "strtoll"); - if (ptr) -- __collector_util_funcs.strtoll = (long long (*)())ptr; -+ __collector_util_funcs.strtoll = (long long (*)(const char*, char**, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strtoll: %s\n", dlerror ()); -@@ -1402,7 +1402,7 @@ __collector_util_init () - - ptr = dlsym (libc, "setenv"); - if (ptr) -- __collector_util_funcs.setenv = (int(*)())ptr; -+ __collector_util_funcs.setenv = (int(*)(const char*, const char*, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT setenv: %s\n", dlerror ()); -@@ -1411,7 +1411,7 @@ __collector_util_init () - - ptr = dlsym (libc, "unsetenv"); - if (ptr) -- __collector_util_funcs.unsetenv = (int(*)())ptr; -+ __collector_util_funcs.unsetenv = (int(*)(const char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT unsetenv: %s\n", dlerror ()); -@@ -1498,7 +1498,7 @@ __collector_util_init () - - ptr = dlsym (libc, "pclose"); - if (ptr) -- __collector_util_funcs.pclose = (int(*)())ptr; -+ __collector_util_funcs.pclose = (int(*)(FILE*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT pclose: %s\n", dlerror ()); -@@ -1507,7 +1507,7 @@ __collector_util_init () - - ptr = dlsym (libc, "fgets"); - if (ptr) -- __collector_util_funcs.fgets = (char*(*)())ptr; -+ __collector_util_funcs.fgets = (char*(*)(char*, int, FILE*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT fgets: %s\n", dlerror ()); -@@ -1534,7 +1534,7 @@ __collector_util_init () - - ptr = dlsym (libc, "vsnprintf"); - if (ptr) -- __collector_util_funcs.vsnprintf = (int(*)())ptr; -+ __collector_util_funcs.vsnprintf = (int(*)(char*, size_t, const char*, ...))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT vsnprintf: %s\n", dlerror ()); -@@ -1543,7 +1543,7 @@ __collector_util_init () - - ptr = dlsym (libc, "atoi"); - if (ptr) -- __collector_util_funcs.atoi = (int(*)())ptr; -+ __collector_util_funcs.atoi = (int(*)(const char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT atoi: %s\n", dlerror ()); -@@ -1552,7 +1552,7 @@ __collector_util_init () - - ptr = dlsym (libc, "calloc"); - if (ptr) -- __collector_util_funcs.calloc = (void*(*)())ptr; -+ __collector_util_funcs.calloc = (void*(*)(size_t, size_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT calloc: %s\n", dlerror ()); -@@ -1562,7 +1562,7 @@ __collector_util_init () - ptr = dlsym (libc, "free"); - if (ptr) - { -- __collector_util_funcs.free = (void(*)())ptr; -+ __collector_util_funcs.free = (void(*)(void*))ptr; - } - else - { -@@ -1572,7 +1572,7 @@ __collector_util_init () - - ptr = dlsym (libc, "strdup"); - if (ptr) -- __collector_util_funcs.libc_strdup = (char*(*)())ptr; -+ __collector_util_funcs.libc_strdup = (char*(*)(const char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strdup: %s\n", dlerror ()); -@@ -1585,7 +1585,7 @@ __collector_util_init () - - ptr = dlsym (libc, "strerror"); - if (ptr) -- __collector_util_funcs.strerror = (char*(*)())ptr; -+ __collector_util_funcs.strerror = (char*(*)(int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strerror: %s\n", dlerror ()); -@@ -1593,7 +1593,7 @@ __collector_util_init () - } - ptr = dlsym (libc, "strerror_r"); - if (ptr) -- __collector_util_funcs.strerror_r = (int(*)())ptr; -+ __collector_util_funcs.strerror_r = (int(*)(int, char*, size_t))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strerror_r: %s\n", dlerror ()); -@@ -1601,7 +1601,7 @@ __collector_util_init () - } - ptr = dlsym (libc, "strspn"); - if (ptr) -- __collector_util_funcs.strspn = (size_t (*)())ptr; -+ __collector_util_funcs.strspn = (size_t (*)(const char*, const char*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strspn: %s\n", dlerror ()); -@@ -1610,7 +1610,7 @@ __collector_util_init () - - ptr = dlsym (libc, "strtoul"); - if (ptr) -- __collector_util_funcs.strtoul = (unsigned long int(*)())ptr; -+ __collector_util_funcs.strtoul = (unsigned long int(*)(const char*, char**, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strtoul: %s\n", dlerror ()); -@@ -1619,7 +1619,7 @@ __collector_util_init () - - ptr = dlsym (libc, "strtoull"); - if (ptr) -- __collector_util_funcs.strtoull = (unsigned long long int(*)())ptr; -+ __collector_util_funcs.strtoull = (unsigned long long int(*)(const char*, char**, int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT strtoull: %s\n", dlerror ()); -@@ -1664,7 +1664,7 @@ __collector_util_init () - - ptr = dlsym (libc, "sysconf"); - if (ptr) -- __collector_util_funcs.sysconf = (long(*)())ptr; -+ __collector_util_funcs.sysconf = (long(*)(int))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT sysconf: %s\n", dlerror ()); -@@ -1673,7 +1673,7 @@ __collector_util_init () - - ptr = dlsym (libc, "sigfillset"); - if (ptr) -- __collector_util_funcs.sigfillset = (int(*)())ptr; -+ __collector_util_funcs.sigfillset = (int(*)(sigset_t*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT sigfillset: %s\n", dlerror ()); -@@ -1682,7 +1682,7 @@ __collector_util_init () - - ptr = dlsym (libc, "sigprocmask"); - if (ptr) -- __collector_util_funcs.sigprocmask = (int(*)())ptr; -+ __collector_util_funcs.sigprocmask = (int(*)(int, const sigset_t*, sigset_t*))ptr; - else - { - CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT sigprocmask: %s\n", dlerror ()); -diff --git a/gprofng/libcollector/mmaptrace.c b/gprofng/libcollector/mmaptrace.c -index f07f4d76513..2a6857ab58e 100644 ---- a/gprofng/libcollector/mmaptrace.c -+++ b/gprofng/libcollector/mmaptrace.c -@@ -1209,7 +1209,7 @@ process_vsyscall_page () - /* - * collector API for dynamic functions - */ --void collector_func_load () __attribute__ ((weak, alias ("__collector_func_load"))); -+void collector_func_load (char*, char*, char*, void*, int, int, DT_lineno *) __attribute__ ((weak, alias ("__collector_func_load"))); - void - __collector_func_load (char *name, char *alias, char *sourcename, - void *vaddr, int size, int lntsize, DT_lineno *lntable) -@@ -1218,7 +1218,7 @@ __collector_func_load (char *name, char *alias, char *sourcename, - vaddr, size, lntsize, lntable); - } - --void collector_func_unload () __attribute__ ((weak, alias ("__collector_func_unload"))); -+void collector_func_unload (void *vaddr) __attribute__ ((weak, alias ("__collector_func_unload"))); - void - __collector_func_unload (void *vaddr) - { -diff --git a/gprofng/libcollector/unwind.c b/gprofng/libcollector/unwind.c -index 91678b1e334..cd47d4fbe0f 100644 ---- a/gprofng/libcollector/unwind.c -+++ b/gprofng/libcollector/unwind.c -@@ -416,7 +416,7 @@ __collector_ext_unwind_init (int record) - omp_no_walk = 1; - - if (__collector_VM_ReadByteInstruction == NULL) -- __collector_VM_ReadByteInstruction = (int(*)()) dlsym (RTLD_DEFAULT, "Async_VM_ReadByteInstruction"); -+ __collector_VM_ReadByteInstruction = (int(*)(unsigned char*)) dlsym (RTLD_DEFAULT, "Async_VM_ReadByteInstruction"); - - #if ARCH(SPARC) - #if WSIZE(64) -diff --git a/gprofng/src/collector_module.h b/gprofng/src/collector_module.h -index ebcdbca561f..fd888cd58dd 100644 ---- a/gprofng/src/collector_module.h -+++ b/gprofng/src/collector_module.h -@@ -110,7 +110,7 @@ typedef struct CollectorUtilFuncs - long (*sysinfo)(int command, char *buf, long count); - time_t (*time)(time_t *tloc); - int (*unsetenv)(const char *name); -- int (*vsnprintf)(char *str, size_t size, const char *format, va_list ap); -+ int (*vsnprintf)(char *str, size_t size, const char *format, ...); - pid_t (*waitpid)(pid_t pid, int *stat_loc, int options); - ssize_t (*write)(int, void *, size_t); - double (*atof)(); --- -2.50.1 - diff --git a/package/binutils/2.42/0007-gprofng-fix-build-with-std-gnu23.patch b/package/binutils/2.42/0007-gprofng-fix-build-with-std-gnu23.patch deleted file mode 100644 index 15a56f14af..0000000000 --- a/package/binutils/2.42/0007-gprofng-fix-build-with-std-gnu23.patch +++ /dev/null @@ -1,199 +0,0 @@ -From e91e1fd342c9ded87f53bc7e9e8d5d693b9a570a Mon Sep 17 00:00:00 2001 -From: Vladimir Mezentsev -Date: Thu, 21 Nov 2024 14:48:20 -0800 -Subject: [PATCH] gprofng: fix build with -std=gnu23 - -Fix function pointer types accordingly. -Remove unused function pointers. - -gprofng/ChangeLog -2024-11-21 Vladimir Mezentsev - - PR gprofng/32374 - PR gprofng/32373 - * common/cpuid.c: Define ATTRIBUTE_UNUSED if necessary. - * libcollector/libcol_util.c (sysinfo): Remove unused pointer. - * src/collector_module.h: Likewise. - * libcollector/dispatcher.c (setitimer): Fix prototype. - * libcollector/linetrace.c (system, grantpt, ptsname): Likewise. - * testsuite/gprofng.display/mttest/mttest.c (dump_arrays): Likewise. - * testsuite/gprofng.display/synprog/endcases.c (xinline_code, - s_inline_code): Likewise. - * testsuite/gprofng.display/synprog/inc_inline.h (ext_inline_code): - Likewise. - * testsuite/gprofng.display/synprog/synprog.c (doabort): Rename nullptr. - -Upstream: 4e943705e3e8a5a9448d087502bcb390a694ad02 -Signed-off-by: Thomas Petazzoni ---- - gprofng/common/cpuid.c | 2 ++ - gprofng/libcollector/dispatcher.c | 2 +- - gprofng/libcollector/libcol_util.c | 9 --------- - gprofng/libcollector/linetrace.c | 10 +++++----- - gprofng/src/collector_module.h | 1 - - gprofng/testsuite/gprofng.display/mttest/mttest.c | 2 +- - gprofng/testsuite/gprofng.display/synprog/endcases.c | 4 ++-- - gprofng/testsuite/gprofng.display/synprog/inc_inline.h | 2 +- - gprofng/testsuite/gprofng.display/synprog/synprog.c | 4 ++-- - 9 files changed, 14 insertions(+), 22 deletions(-) - -diff --git a/gprofng/common/cpuid.c b/gprofng/common/cpuid.c -index af15439eb27..0373969693b 100644 ---- a/gprofng/common/cpuid.c -+++ b/gprofng/common/cpuid.c -@@ -21,7 +21,9 @@ - #if defined(__i386__) || defined(__x86_64) - #include /* GCC-provided */ - #elif defined(__aarch64__) -+#if !defined(ATTRIBUTE_UNUSED) - #define ATTRIBUTE_UNUSED __attribute__((unused)) -+#endif - - static inline uint_t __attribute_const__ - __get_cpuid (unsigned int op ATTRIBUTE_UNUSED, unsigned int *eax, -diff --git a/gprofng/libcollector/dispatcher.c b/gprofng/libcollector/dispatcher.c -index 5ee0bf895bf..e85c343c776 100644 ---- a/gprofng/libcollector/dispatcher.c -+++ b/gprofng/libcollector/dispatcher.c -@@ -1281,4 +1281,4 @@ __collector_ext_clone_pthread (int (*fn)(void *), void *child_stack, int flags, - // weak symbols: - int sigprocmask (int, const sigset_t*, sigset_t*) __attribute__ ((weak, alias ("__collector_sigprocmask"))); - int thr_sigsetmask (int, const sigset_t*, sigset_t*) __attribute__ ((weak, alias ("__collector_thr_sigsetmask"))); --int setitimer () __attribute__ ((weak, alias ("_setitimer"))); -+__typeof(setitimer) setitimer __attribute__ ((weak, alias ("_setitimer"))); -diff --git a/gprofng/libcollector/libcol_util.c b/gprofng/libcollector/libcol_util.c -index 688bdf19c6d..46f8b80ccb4 100644 ---- a/gprofng/libcollector/libcol_util.c -+++ b/gprofng/libcollector/libcol_util.c -@@ -1427,15 +1427,6 @@ __collector_util_init () - err = COL_ERROR_UTIL_INIT; - } - -- ptr = dlsym (libc, "sysinfo"); -- if (ptr) -- __collector_util_funcs.sysinfo = (long (*)())ptr; -- else -- { -- CALL_UTIL (fprintf)(stderr, "collector_util_init COL_ERROR_UTIL_INIT sysinfo: %s\n", dlerror ()); -- err = COL_ERROR_UTIL_INIT; -- } -- - ptr = dlsym (libc, "clearenv"); - if (ptr) - __collector_util_funcs.clearenv = (int(*)())ptr; -diff --git a/gprofng/libcollector/linetrace.c b/gprofng/libcollector/linetrace.c -index 66844bc1337..c81ae1a2272 100644 ---- a/gprofng/libcollector/linetrace.c -+++ b/gprofng/libcollector/linetrace.c -@@ -1527,7 +1527,7 @@ DCL_FUNC_VER (DCL_POSIX_SPAWNP, posix_spawnp_2_2, posix_spawnp@GLIBC_2.2) - DCL_POSIX_SPAWNP (posix_spawnp) - - /*------------------------------------------------------------- system */ --int system () __attribute__ ((weak, alias ("__collector_system"))); -+int system (const char *cmd) __attribute__ ((weak, alias ("__collector_system"))); - - int - __collector_system (const char *cmd) -@@ -1582,10 +1582,10 @@ DCL_FUNC_VER (DCL_POPEN, popen_2_0, popen@GLIBC_2.0) - DCL_POPEN (popen) - - /*------------------------------------------------------------- grantpt */ --int grantpt () __attribute__ ((weak, alias ("__collector_grantpt"))); -+int grantpt (int fildes) __attribute__ ((weak, alias ("__collector_grantpt"))); - - int --__collector_grantpt (const int fildes) -+__collector_grantpt (int fildes) - { - if (NULL_PTR (grantpt)) - init_lineage_intf (); -@@ -1607,10 +1607,10 @@ __collector_grantpt (const int fildes) - } - - /*------------------------------------------------------------- ptsname */ --char *ptsname () __attribute__ ((weak, alias ("__collector_ptsname"))); -+char *ptsname (int fildes) __attribute__ ((weak, alias ("__collector_ptsname"))); - - char * --__collector_ptsname (const int fildes) -+__collector_ptsname (int fildes) - { - if (NULL_PTR (ptsname)) - init_lineage_intf (); -diff --git a/gprofng/src/collector_module.h b/gprofng/src/collector_module.h -index fd888cd58dd..6640f12fa3c 100644 ---- a/gprofng/src/collector_module.h -+++ b/gprofng/src/collector_module.h -@@ -107,7 +107,6 @@ typedef struct CollectorUtilFuncs - int (*symlink)(const char *s1, const char *s2); - int (*syscall)(int number, ...); - long (*sysconf)(int name); -- long (*sysinfo)(int command, char *buf, long count); - time_t (*time)(time_t *tloc); - int (*unsetenv)(const char *name); - int (*vsnprintf)(char *str, size_t size, const char *format, ...); -diff --git a/gprofng/testsuite/gprofng.display/mttest/mttest.c b/gprofng/testsuite/gprofng.display/mttest/mttest.c -index e0835c833e5..3db5b8d8e86 100644 ---- a/gprofng/testsuite/gprofng.display/mttest/mttest.c -+++ b/gprofng/testsuite/gprofng.display/mttest/mttest.c -@@ -171,7 +171,7 @@ void computeJ (workStruct_t *x); - void computeK (workStruct_t *x); - void addone (workCtr_t *x); - void init_arrays (int strat); --void dump_arrays (); -+void dump_arrays (hrtime_t real, hrtime_t cpu, int case_index); - void *do_work (void *v); - void thread_work (); - void nothreads (Workblk *array, struct scripttab *k); -diff --git a/gprofng/testsuite/gprofng.display/synprog/endcases.c b/gprofng/testsuite/gprofng.display/synprog/endcases.c -index a6a1389658a..6f1c83b6859 100644 ---- a/gprofng/testsuite/gprofng.display/synprog/endcases.c -+++ b/gprofng/testsuite/gprofng.display/synprog/endcases.c -@@ -40,8 +40,8 @@ static void s_inline_code (int); - void ext_inline_code (int); - - #ifndef NO_INLINE --void xinline_code () __attribute__ ((always_inline)); --void s_inline_code () __attribute__ ((always_inline)); -+void xinline_code (int) __attribute__ ((always_inline)); -+void s_inline_code (int) __attribute__ ((always_inline)); - #endif - - #include "inc_inline.h" -diff --git a/gprofng/testsuite/gprofng.display/synprog/inc_inline.h b/gprofng/testsuite/gprofng.display/synprog/inc_inline.h -index da42563c828..6600eacb66d 100644 ---- a/gprofng/testsuite/gprofng.display/synprog/inc_inline.h -+++ b/gprofng/testsuite/gprofng.display/synprog/inc_inline.h -@@ -19,7 +19,7 @@ - MA 02110-1301, USA. */ - - #ifndef NO_INLINE --void ext_inline_code() __attribute__ ((always_inline)); -+void ext_inline_code(int) __attribute__ ((always_inline)); - #endif - - void -diff --git a/gprofng/testsuite/gprofng.display/synprog/synprog.c b/gprofng/testsuite/gprofng.display/synprog/synprog.c -index cf1bc5b0909..05920dc7419 100644 ---- a/gprofng/testsuite/gprofng.display/synprog/synprog.c -+++ b/gprofng/testsuite/gprofng.display/synprog/synprog.c -@@ -528,14 +528,14 @@ reapchildren () - int - doabort (int k) - { -- char *nullptr = NULL; -+ char *p = NULL; - char c; - - /* Log the event */ - wlog ("start of doabort", NULL); - - /* and dereference a NULL */ -- c = *nullptr; -+ c = *p; - - /* this should never be reached */ - return (int) c; --- -2.50.1 - diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index dfd702a6cf..a043771339 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -16,9 +16,6 @@ config BR2_BINUTILS_VERSION_ARC bool "binutils arc (2.43)" depends on BR2_arc -config BR2_BINUTILS_VERSION_2_42_X - bool "binutils 2.42" - config BR2_BINUTILS_VERSION_2_43_X bool "binutils 2.43.1" @@ -33,7 +30,6 @@ endchoice config BR2_BINUTILS_VERSION string default "arc-2024.12-release" if BR2_BINUTILS_VERSION_ARC - default "2.42" if BR2_BINUTILS_VERSION_2_42_X default "2.43.1" if BR2_BINUTILS_VERSION_2_43_X default "2.44" if BR2_BINUTILS_VERSION_2_44_X default "2.45.1" if BR2_BINUTILS_VERSION_2_45_X diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash index 9e7a029461..183b7c1f4e 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 155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6 binutils-2.42.tar.xz sha512 20977ad17729141a2c26d358628f44a0944b84dcfefdec2ba029c2d02f40dfc41cc91c0631044560d2bd6f9a51e1f15846b4b311befbe14f1239f14ff7d57824 binutils-2.43.1.tar.xz sha512 b85d3bbc0e334cf67a96219d3c7c65fbf3e832b2c98a7417bf131f3645a0307057ec81cd2b29ff2563cec53e3d42f73e2c60cc5708e80d4a730efdcc6ae14ad7 binutils-2.44.tar.xz sha512 ea030419eba387579ab717be7e3223fc99e93b586860b06003c12489f93441640d4082736f76aa5e98233db4f46e232f536a45e471486de1f5b64e1b827c167e binutils-2.45.1.tar.xz