diff options
| author | Ulf Hermann <[email protected]> | 2017-02-23 17:22:41 +0100 |
|---|---|---|
| committer | Ulf Hermann <[email protected]> | 2017-04-27 15:56:33 +0000 |
| commit | 121d248c1da7f2130a2edde6d158f116c89ed407 (patch) | |
| tree | ad7a348a88db648da6e2df366d89fcb7b7436a1c /backends | |
| parent | f10810fff6fda147f9c07fea0e1b33a7c4d79ad1 (diff) | |
Add gnulib modules to replace missing libc functionality
This enables us to build a fully featured elfutils package on systems
with reduced C libraries, such as windows. All the modules are built
into libgnu.a, which is then linked into all binaries if
--enable-gnulib is given on the configure line.
Change-Id: I743fd22172bc85d9f10dcc3dad8eb921f462b554
Reviewed-by: Christian Kandeler <[email protected]>
Diffstat (limited to 'backends')
| -rw-r--r-- | backends/ChangeLog | 4 | ||||
| -rw-r--r-- | backends/Makefile.am | 9 |
2 files changed, 11 insertions, 2 deletions
diff --git a/backends/ChangeLog b/backends/ChangeLog index c6e0e08b..594aa98b 100644 --- a/backends/ChangeLog +++ b/backends/ChangeLog @@ -1,3 +1,7 @@ +2017-04-21 Ulf Hermann <[email protected]> + + * Makefile.am: Link backends against libgnu.a if requested. + 2017-04-20 Ulf Hermann <[email protected]> * aarch64_initreg.c: Compile register initialization only on linux. diff --git a/backends/Makefile.am b/backends/Makefile.am index b553ec34..5dcb3e10 100644 --- a/backends/Makefile.am +++ b/backends/Makefile.am @@ -45,6 +45,11 @@ noinst_DATA = $(libebl_pic:_pic.a=.so) libelf = ../libelf/libelf.so libdw = ../libdw/libdw.so +if USE_GNULIB +libgnu = ../libgnu/libgnu.a +else +libgnu = +endif i386_SRCS = i386_init.c i386_symbol.c i386_corenote.c i386_cfi.c \ i386_retval.c i386_regs.c i386_auxv.c i386_syscall.c \ @@ -129,14 +134,14 @@ libebl_bpf_pic_a_SOURCES = $(bpf_SRCS) am_libebl_bpf_pic_a_OBJECTS = $(bpf_SRCS:.c=.os) -libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) +libebl_%.so libebl_%.map: libebl_%_pic.a $(libelf) $(libdw) $(libgnu) @rm -f $(@:.so=.map) $(AM_V_at)echo 'ELFUTILS_$(PACKAGE_VERSION) { global: $*_init; local: *; };' \ > $(@:.so=.map) $(AM_V_CCLD)$(LINK) -shared -o $(@:.map=.so) \ -Wl,--whole-archive $< $(cpu_$*) -Wl,--no-whole-archive \ -Wl,--version-script,$(@:.so=.map) \ - -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) + -Wl,-z,defs -Wl,--as-needed $(libelf) $(libdw) $(libgnu) @$(textrel_check) libebl_i386.so: $(cpu_i386) |
