summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Pratt2024-06-18 04:01:31 +0000
committerRobert Marko2024-06-19 09:22:13 +0000
commitf560588b05b90df55bd0cf516ec22f2d6ce5516e (patch)
tree609545dac83e43ba0a8f85d87178b02261fc222e
parente4fb7c9544d607ce9d63bcfaa955fc3b28b3898e (diff)
downloadopenwrt-f560588b05b90df55bd0cf516ec22f2d6ce5516e.tar.gz
tools/elfutils: add more pkg-config library info
In order for linking the static libraries from elfutils to work, other libraries need to be included to handle the references to functions made in the library's objects that are not included as they would already be if the library was a shared object instead. A shared object library stores this list of libraries when it was made, so that the dynamic linker can refer to that list at runtime, but a static library has no such functionality so the list of libraries for missing functions must be included at link time. This information was already added to the pc file for libelf using the definitions in src/Makefile.am, so extend this to the rest of the pc files in the project. For situations where the libraries may be used without pkg-config setting the flags and library list, this patch and the pc files can serve as a quick reference. Signed-off-by: Michael Pratt <mcpratt@pm.me> Link: https://github.com/openwrt/openwrt/pull/15690 Signed-off-by: Robert Marko <robimarko@gmail.com>
-rw-r--r--tools/elfutils/patches/100-portability.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/tools/elfutils/patches/100-portability.patch b/tools/elfutils/patches/100-portability.patch
index 35e29cfcc9..be97f95faa 100644
--- a/tools/elfutils/patches/100-portability.patch
+++ b/tools/elfutils/patches/100-portability.patch
@@ -204,6 +204,26 @@
#include <libdw.h>
#include <dwarf.h>
+--- a/config/libdebuginfod.pc.in
++++ b/config/libdebuginfod.pc.in
+@@ -8,5 +8,5 @@ Description: elfutils library to query d
+ Version: @VERSION@
+ URL: http://elfutils.org/
+
+-Libs: -L${libdir} -ldebuginfod
++Libs: -L${libdir} -ldebuginfod -lpthread
+ Cflags: -I${includedir}
+--- a/config/libdw.pc.in
++++ b/config/libdw.pc.in
+@@ -8,7 +8,7 @@ Description: elfutils library for DWARF
+ Version: @VERSION@
+ URL: http://elfutils.org/
+
+-Libs: -L${libdir} -ldw
++Libs: -L${libdir} -ldw -lz -lelf -lz -ldl -lpthread
+ Cflags: -I${includedir}
+
+ # We need the exact matching elfutils libelf version since internal data
--- a/config/libelf.pc.in
+++ b/config/libelf.pc.in
@@ -8,7 +8,7 @@ Description: elfutils libelf library to