From b6f025b42429ec809afeb0956b35535c248b6c1b Mon Sep 17 00:00:00 2001 From: Tony Ambardar Date: Sun, 3 Mar 2024 21:04:36 -0800 Subject: [PATCH] tools/elfutils: update to 1.91 Release Notes: https://sourceware.org/pipermail/elfutils-devel/2024q1/006876.html Manually refresh: - 100-portability.patch Change: - replace libgen.h with gnulib "dirname" module for compilation errors: In file included from ./../libdw/libdwP.h:38, from eblobjnote.c:42: /usr/include/libgen.h:35:9: error: attempt to use poisoned "basename" 35 | #define basename __xpg_basename | ^ Tested-by: Georgi Valkov # MacOS Co-Developed-by: Nick Hainke Signed-off-by: Nick Hainke Signed-off-by: Tony Ambardar --- tools/elfutils/Makefile | 6 +- tools/elfutils/patches/100-portability.patch | 79 +++++++++++++++----- 2 files changed, 65 insertions(+), 20 deletions(-) diff --git a/tools/elfutils/Makefile b/tools/elfutils/Makefile index a701827248..adf8770783 100644 --- a/tools/elfutils/Makefile +++ b/tools/elfutils/Makefile @@ -3,12 +3,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=elfutils -PKG_VERSION:=0.189 +PKG_VERSION:=0.191 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION) -PKG_HASH:=39bd8f1a338e2b7cd4abc3ff11a0eddc6e690f69578a57478d8179b4148708c8 +PKG_HASH:=df76db71366d1d708365fc7a6c60ca48398f14367eb2b8954efc8897147ad871 PKG_LICENSE:=GPL-3.0-or-later PKG_LICENSE_FILES:=COPYING COPYING-GPLV2 COPYING-LGPLV3 @@ -43,7 +43,7 @@ endif Hooks/HostConfigure/Pre := Host/Gnulib $(Hooks/HostConfigure/Pre) define Host/Gnulib - cd $(HOST_BUILD_DIR); $(STAGING_DIR_HOST)/bin/gnulib-tool --libtool --source-base=libgnu --import argp obstack fts strchrnul progname tsearch; + cd $(HOST_BUILD_DIR); $(STAGING_DIR_HOST)/bin/gnulib-tool --libtool --source-base=libgnu --import argp dirname fts obstack progname strchrnul tsearch; ln -sf ../lib/eu-config.h $(HOST_BUILD_DIR)/libgnu/; endef diff --git a/tools/elfutils/patches/100-portability.patch b/tools/elfutils/patches/100-portability.patch index 0d650549ee..0a3dd63a85 100644 --- a/tools/elfutils/patches/100-portability.patch +++ b/tools/elfutils/patches/100-portability.patch @@ -2,7 +2,7 @@ +++ b/configure.ac @@ -20,6 +20,7 @@ dnl You should have received a copy of dnl along with this program. If not, see . - AC_INIT([elfutils],[0.189],[https://sourceware.org/bugzilla],[elfutils],[http://elfutils.org/]) + AC_INIT([elfutils],[0.191],[https://sourceware.org/bugzilla],[elfutils],[http://elfutils.org/]) +AC_CONFIG_MACRO_DIRS([m4]) dnl Workaround for older autoconf < 2.64 @@ -15,7 +15,7 @@ -AC_CONFIG_FILES([config/Makefile]) +AC_CONFIG_FILES([config/Makefile libgnu/Makefile]) - AC_COPYRIGHT([Copyright (C) 1996-2023 The elfutils developers.]) + AC_COPYRIGHT([Copyright (C) 1996-2024 The elfutils developers.]) -AC_PREREQ(2.63) dnl Minimum Autoconf version required. +AC_PREREQ(2.64) dnl Minimum Autoconf version required. @@ -99,7 +99,7 @@ - libasm debuginfod src po doc tests +SUBDIRS = libgnu config lib libelf libcpu backends libebl libdwelf libdwfl libdw - EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING \ + EXTRA_DIST = elfutils.spec GPG-KEY NOTES CONTRIBUTING SECURITY \ - COPYING COPYING-GPLV2 COPYING-LGPLV3 + COPYING COPYING-GPLV2 COPYING-LGPLV3 \ + m4/gnulib-cache.m4 @@ -144,8 +144,8 @@ write_file (Elf *elf, int64_t size, int change_bo, size_t shnum) --- a/lib/eu-config.h +++ b/lib/eu-config.h -@@ -52,14 +52,18 @@ - # define rwlock_unlock(lock) ((void) (lock)) +@@ -59,14 +59,18 @@ + # define once(once_control, init_routine) init_routine() #endif /* USE_LOCKS */ -#include @@ -164,7 +164,7 @@ #ifdef __i386__ # define internal_function __attribute__ ((regparm (3), stdcall)) -@@ -70,12 +74,7 @@ +@@ -77,12 +81,7 @@ #define internal_strong_alias(name, aliasname) \ extern __typeof (name) aliasname __attribute__ ((alias (#name))) internal_function; @@ -177,7 +177,7 @@ #ifdef HAVE_GCC_STRUCT #define attribute_packed \ -@@ -159,7 +158,7 @@ asm (".section predict_data, \"aw\"; .pr +@@ -166,7 +165,7 @@ asm (".section predict_data, \"aw\"; .pr #endif /* Avoid PLT entries. */ @@ -597,7 +597,7 @@ modules = i386 sh x86_64 ia64 alpha arm aarch64 sparc ppc ppc64 s390 \ m68k bpf riscv csky loongarch arc -@@ -100,17 +100,13 @@ loongarch_SRCS = loongarch_init.c loonga +@@ -102,17 +102,13 @@ loongarch_SRCS = loongarch_init.c loonga arc_SRCS = arc_init.c arc_symbol.c @@ -779,7 +779,7 @@ +++ b/src/Makefile.am @@ -29,9 +29,9 @@ bin_PROGRAMS = readelf nm size strip elf elfcmp objdump ranlib strings ar unstrip stack elfcompress \ - elfclassify + elfclassify srcfiles -noinst_LIBRARIES = libar.a +noinst_LTLIBRARIES = libar.la @@ -789,30 +789,41 @@ EXTRA_DIST = arlib.h debugpred.h -@@ -39,17 +39,11 @@ bin_SCRIPTS = make-debug-archive +@@ -39,27 +39,16 @@ bin_SCRIPTS = make-debug-archive EXTRA_DIST += make-debug-archive.in CLEANFILES += make-debug-archive -if BUILD_STATIC -libasm = ../libasm/libasm.a -libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) -ldl -lpthread --libelf = ../libelf/libelf.a -lz +-libelf = ../libelf/libelf.a -lz $(zstd_LIBS) ++libasm = ../libasm/libasm.la ++libdw = ../libdw/libdw.la -lz $(zip_LIBS) $(libelf) -ldl -lpthread ++libelf = ../libelf/libelf.la -lz $(zstd_LIBS) + if LIBDEBUGINFOD +-libdebuginfod = ../debuginfod/libdebuginfod.a -lpthread $(libcurl_LIBS) ++libdebuginfod = ../debuginfod/libdebuginfod.la -lpthread $(libcurl_LIBS) + else + libdebuginfod = + endif -else -libasm = ../libasm/libasm.so -libdw = ../libdw/libdw.so -libelf = ../libelf/libelf.so +-if LIBDEBUGINFOD +-libdebuginfod = ../debuginfod/libdebuginfod.so +-else +-libdebuginfod = +-endif -endif -libebl = ../libebl/libebl.a ../backends/libebl_backends.a ../libcpu/libcpu.a -libeu = ../lib/libeu.a -+libasm = ../libasm/libasm.la -+libdw = ../libdw/libdw.la -lz $(zip_LIBS) $(libelf) -ldl -lpthread -+libelf = ../libelf/libelf.la +libebl = ../libebl/libebl.la ../backends/libebl_backends.la ../libcpu/libcpu.la +libeu = ../lib/libeu.la if DEMANGLE demanglelib = -lstdc++ -@@ -77,9 +71,9 @@ findtextrel_LDADD = $(libdw) $(libelf) $ +@@ -87,9 +76,9 @@ findtextrel_LDADD = $(libdw) $(libelf) $ addr2line_LDADD = $(libdw) $(libelf) $(libeu) $(argp_LDADD) $(demanglelib) elfcmp_LDADD = $(libebl) $(libdw) $(libelf) $(libeu) $(argp_LDADD) objdump_LDADD = $(libasm) $(libebl) $(libdw) $(libelf) $(libeu) $(argp_LDADD) @@ -826,13 +837,13 @@ elfcompress_LDADD = $(libebl) $(libelf) $(libdw) $(libeu) $(argp_LDADD) --- a/tests/Makefile.am +++ b/tests/Makefile.am -@@ -662,17 +662,11 @@ installcheck-local: +@@ -689,17 +689,11 @@ installcheck-local: TESTS_ENVIRONMENT="$(installed_TESTS_ENVIRONMENT)" \ LOG_COMPILER="$(installed_LOG_COMPILER)" check-TESTS -if BUILD_STATIC -libdw = ../libdw/libdw.a -lz $(zip_LIBS) $(libelf) $(libebl) -ldl -lpthread --libelf = ../libelf/libelf.a -lz +-libelf = ../libelf/libelf.a -lz $(zstd_LIBS) -libasm = ../libasm/libasm.a -else -libdw = ../libdw/libdw.so @@ -908,3 +919,37 @@ Cflags: -I${includedir} Requires.private: zlib @LIBZSTD@ +--- a/lib/next_prime.c ++++ b/lib/next_prime.c +@@ -27,6 +27,7 @@ + the GNU Lesser General Public License along with this program. If + not, see . */ + ++#include + #include + + +--- a/libdw/libdwP.h ++++ b/libdw/libdwP.h +@@ -35,7 +35,7 @@ + #include + #include + #include +-#include ++#include + + + /* Known location expressions already decoded. */ + +--- a/libdwfl/libdwflP.h ++++ b/libdwfl/libdwflP.h +@@ -32,7 +32,7 @@ + #include + #include + #include +-#include ++#include + #include + #include + #include + -- 2.30.2