Skip to content

Commit

Permalink
elfutils: sync upstream (coolsnowwolf#8652)
Browse files Browse the repository at this point in the history
* elfutils: enable host build

frr 8.0 needs host libelf dev
add option for host build
tested on x86, ramips, kirkwood

Signed-off-by: Lucian Cristian <[email protected]>
[changed commit author's email]
Signed-off-by: Christian Lamparter <[email protected]>

* elfutils: update to 0.186

Upstreamed patches (deleted):
0001-ppc_initreg.c-Incliude-asm-ptrace.h-for-pt_regs-defi.patch -
 https://sourceware.org/git/?p=elfutils.git;a=commitdiff;h=8382833a257b57b0d288be07d2d5e7af6c102869
110-no-cdefs.patch -
 https://sourceware.org/git/?p=elfutils.git;a=commitdiff;h=d390548df1942e98a1d836269a5e41ba52e121f1

Auto-refreshed:
006-Fix-build-on-aarch64-musl.patch
101-no-fts.patch

Manually updated and refreshed:
005-build_only_libs.patch
003-libintl-compatibility.patch
100-musl-compat.patch

Disabled _obstack_free check (via configure vars)

Signed-off-by: Sergey V. Lobanov <[email protected]>

* elfutils: Add missing musl-fts dependency

libdw depends on libfts.so when building with the musl-libc library, add
this missing dependency.

Fixes: 6835ea1 ("elfutils: update to 0.186")
Signed-off-by: Florian Fainelli <[email protected]>

Co-authored-by: Lucian Cristian <[email protected]>
Co-authored-by: Sergey V. Lobanov <[email protected]>
Co-authored-by: Florian Fainelli <[email protected]>
  • Loading branch information
4 people authored Jan 10, 2022
1 parent 5afa82e commit b0c25b7
Show file tree
Hide file tree
Showing 7 changed files with 39 additions and 146 deletions.
20 changes: 17 additions & 3 deletions package/libs/elfutils/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=elfutils
PKG_VERSION:=0.182
PKG_VERSION:=0.186
PKG_RELEASE:=1

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION)
PKG_HASH:=ecc406914edf335f0b7fc084ebe6c460c4d6d5175bfdd6688c1c78d9146b8858
PKG_HASH:=7f6fb9149b1673d38d9178a0d3e0fb8a1ec4f53a9f4c2ff89469609879641177

PKG_MAINTAINER:=Luiz Angelo Daros de Luca <[email protected]>
PKG_LICENSE:=GPL-3.0-or-later
Expand All @@ -26,6 +26,7 @@ PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone

include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/nls.mk
include $(INCLUDE_DIR)/host-build.mk

define Package/elfutils/Default
SECTION:=libs
Expand All @@ -43,7 +44,7 @@ endef

define Package/libdw
$(call Package/elfutils/Default)
DEPENDS:=+libelf +libbz2
DEPENDS:=+libelf +libbz2 +USE_MUSL:musl-fts
TITLE+= (libdw)
endef

Expand All @@ -60,13 +61,25 @@ else
CONFIGURE_ARGS += --disable-nls
endif

HOST_CONFIGURE_ARGS += \
--disable-debuginfod \
--disable-libdebuginfod \
--without-lzma \
--without-zstd

CONFIGURE_ARGS += \
--program-prefix=eu- \
--disable-debuginfod \
--disable-libdebuginfod \
--without-lzma \
--without-zstd

HOST_CONFIGURE_VARS += \
ac_cv_search__obstack_free=yes

CONFIGURE_VARS += \
ac_cv_search__obstack_free=yes

TARGET_CFLAGS += -D_GNU_SOURCE -Wno-unused-result -Wno-format-nonliteral

define Build/InstallDev
Expand Down Expand Up @@ -97,6 +110,7 @@ define Package/libelf/install
endef

# these lines need to be ordered by dependency because of ABI versioning
$(eval $(call HostBuild))
$(eval $(call BuildPackage,libelf))
$(eval $(call BuildPackage,libdw))
$(eval $(call BuildPackage,libasm))

This file was deleted.

54 changes: 3 additions & 51 deletions package/libs/elfutils/patches/003-libintl-compatibility.patch
Original file line number Diff line number Diff line change
Expand Up @@ -11,61 +11,13 @@
Requires.private: zlib
--- a/configure.ac
+++ b/configure.ac
@@ -590,6 +590,9 @@ AC_CONFIG_FILES([config/libelf.pc config
AC_SUBST(USE_NLS, yes)
AM_PO_SUBDIRS
@@ -610,6 +610,9 @@ dnl AM_GNU_GETTEXT_REQUIRE_VERSION suppo
AM_GNU_GETTEXT_VERSION([0.19.6])
AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.6])

+case "$USE_NLS" in yes) intl_LDFLAGS="-lintl" ;; esac
+AC_SUBST([intl_LDFLAGS])
+
dnl Appended to the config.h file.
dnl We hide all kinds of configuration magic in lib/eu-config.h.
AH_BOTTOM([#include <eu-config.h>])
--- a/libasm/libasmP.h
+++ b/libasm/libasmP.h
@@ -36,6 +36,9 @@

#include "libdwelf.h"

+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
/* gettext helper macros. */
#define _(Str) dgettext ("elfutils", Str)

--- a/libdw/libdwP.h
+++ b/libdw/libdwP.h
@@ -37,6 +37,9 @@
#include <dwarf.h>
#include "atomics.h"

+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif

/* gettext helper macros. */
#define _(Str) dgettext ("elfutils", Str)
--- a/libdwfl/libdwflP.h
+++ b/libdwfl/libdwflP.h
@@ -47,6 +47,9 @@

typedef struct Dwfl_Process Dwfl_Process;

+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
/* gettext helper macros. */
#define _(Str) dgettext ("elfutils", Str)

--- a/libelf/libelfP.h
+++ b/libelf/libelfP.h
@@ -39,6 +39,9 @@
#include <stdio.h>
#include <string.h>

+#ifdef _ /* fix libintl-stub */
+#undef _
+#endif
/* gettext helper macros. */
#define _(Str) dgettext ("elfutils", Str)

2 changes: 1 addition & 1 deletion package/libs/elfutils/patches/005-build_only_libs.patch
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
@@ -27,7 +27,7 @@ AM_MAKEFLAGS = --no-print-directory
pkginclude_HEADERS = version.h

SUBDIRS = config m4 lib libelf libcpu backends libebl libdwelf libdwfl libdw \
SUBDIRS = config lib libelf libcpu backends libebl libdwelf libdwfl libdw \
- libasm debuginfod src po doc tests
+ libasm

Expand Down
48 changes: 15 additions & 33 deletions package/libs/elfutils/patches/100-musl-compat.patch
Original file line number Diff line number Diff line change
@@ -1,27 +1,3 @@
https://sourceware.org/bugzilla/show_bug.cgi?id=21002

--- a/lib/system.h
+++ b/lib/system.h
@@ -30,7 +30,18 @@
#define LIB_SYSTEM_H 1

#include <errno.h>
-#include <error.h>
+#ifdef HAVE_ERROR_H
+#include "error.h"
+#else
+#include "err.h"
+#include <stdio.h>
+#define error(status, errno, ...) \
+ do { \
+ fflush(stdout); \
+ warn(__VA_ARGS__); \
+ if (status) exit(status); \
+ } while(0)
+#endif
#include <stddef.h>
#include <stdint.h>
#include <sys/param.h>
--- a/libdw/libdw_alloc.c
+++ b/libdw/libdw_alloc.c
@@ -152,5 +152,5 @@ __attribute ((noreturn)) attribute_hidde
Expand All @@ -33,15 +9,21 @@ https://sourceware.org/bugzilla/show_bug.cgi?id=21002
}
--- a/libdwfl/dwfl_error.c
+++ b/libdwfl/dwfl_error.c
@@ -154,7 +154,11 @@ dwfl_errmsg (int error)
switch (error &~ 0xffff)
{
case OTHER_ERROR (ERRNO):
@@ -140,6 +140,7 @@ __libdwfl_seterrno (Dwfl_Error error)
static const char *
errnomsg(int error)
{
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
return strerror_r (error & 0xffff, "bad", 0);
/* Won't be changed by strerror_r, but not const so compiler doesn't throw warning */
static char unknown[] = "unknown error";

@@ -150,6 +151,9 @@ errnomsg(int error)
static __thread char msg[128];
return strerror_r (error, msg, sizeof (msg)) ? unknown : msg;
#endif
+#else
+ return strerror (error & 0xffff);
+ return strerror (error & 0xffff);
+#endif
case OTHER_ERROR (LIBELF):
return elf_errmsg (error & 0xffff);
case OTHER_ERROR (LIBDW):
}

const char *
6 changes: 3 additions & 3 deletions package/libs/elfutils/patches/101-no-fts.patch
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
--- a/libdwfl/argp-std.c
+++ b/libdwfl/argp-std.c
@@ -56,9 +56,6 @@ static const struct argp_option options[
@@ -53,9 +53,6 @@ static const struct argp_option options[
{ "linux-process-map", 'M', "FILE", 0,
N_("Find addresses in files mapped as read from FILE"
" in Linux /proc/PID/maps format"), 0 },
Expand All @@ -10,7 +10,7 @@
{ "debuginfo-path", OPT_DEBUGINFO, "PATH", 0,
N_("Search path for separate debuginfo files"), 0 },
{ NULL, 0, NULL, 0, NULL, 0 }
@@ -85,15 +82,6 @@ static const Dwfl_Callbacks proc_callbac
@@ -82,15 +79,6 @@ static const Dwfl_Callbacks proc_callbac
.find_elf = INTUSE(dwfl_linux_proc_find_elf),
};

Expand All @@ -26,7 +26,7 @@
/* Structure held at state->HOOK. */
struct parse_opt
{
@@ -226,43 +214,6 @@ parse_opt (int key, char *arg, struct ar
@@ -223,43 +211,6 @@ parse_opt (int key, char *arg, struct ar
}
break;

Expand Down
26 changes: 0 additions & 26 deletions package/libs/elfutils/patches/110-no-cdefs.patch

This file was deleted.

0 comments on commit b0c25b7

Please sign in to comment.