From: Omar Sandoval Date: Mon, 26 Aug 2019 17:51:45 +0000 (-0700) Subject: Add PIC and non-PIC variants of libcpu and libebl X-Git-Tag: elfutils-0.178~43 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=823ee0c48e6db1134a36c6ae165a983466600fed;p=thirdparty%2Felfutils.git Add PIC and non-PIC variants of libcpu and libebl Currently, libcpu and libebl are always compiled as PIC. An upcoming change will add the objects from libcpu.a and libebl.a to libdw.a, which should not be PIC unless configured that way. So, make libcpu.a and libebl.a non-PIC and add libcpu_pic.a and libebl_pic.a. Signed-off-by: Omar Sandoval --- diff --git a/backends/ChangeLog b/backends/ChangeLog index 91790bb91..3faee13ea 100644 --- a/backends/ChangeLog +++ b/backends/ChangeLog @@ -1,6 +1,7 @@ 2019-07-05 Omar Sandoval * Makefile.am: Replace libcpu_{i386,x86_64,bpf}.a with libcpu.a. + Replace libcpu.a with libcpu_pic.a. 2019-07-13 Mao Han diff --git a/backends/Makefile.am b/backends/Makefile.am index 6470a3139..be4705280 100644 --- a/backends/Makefile.am +++ b/backends/Makefile.am @@ -44,7 +44,7 @@ noinst_LIBRARIES = $(libebl_pic) noinst_DATA = $(libebl_pic:_pic.a=.so) -libcpu = ../libcpu/libcpu.a +libcpu = ../libcpu/libcpu_pic.a libelf = ../libelf/libelf.so libdw = ../libdw/libdw.so libeu = ../lib/libeu.a diff --git a/libcpu/ChangeLog b/libcpu/ChangeLog index c0ea72eca..883896a2e 100644 --- a/libcpu/ChangeLog +++ b/libcpu/ChangeLog @@ -1,6 +1,8 @@ 2019-07-05 Omar Sandoval * Makefile.am: Combine libcpu_{i386,x86_64,bpf}.a into libcpu.a. + Make libcpu.a non-PIC by default. + Add libcpu_pic.a. 2018-11-04 Mark Wielaard diff --git a/libcpu/Makefile.am b/libcpu/Makefile.am index a7d9f6fde..887173613 100644 --- a/libcpu/Makefile.am +++ b/libcpu/Makefile.am @@ -30,15 +30,22 @@ include $(top_srcdir)/config/eu.am AM_CPPFLAGS += -I$(srcdir)/../libelf -I$(srcdir)/../libebl \ -I$(srcdir)/../libdw -I$(srcdir)/../libasm -AM_CFLAGS += $(fpic_CFLAGS) -fdollars-in-identifiers +if BUILD_STATIC +AM_CFLAGS += $(fpic_CFLAGS) +endif +AM_CFLAGS += -fdollars-in-identifiers LEXCOMPILE = $(LEX) $(LFLAGS) $(AM_LFLAGS) -P$( + + * Makefile.am (libdw_so_LIBS): Replace libebl.a with libebl_pic.a. + 2019-08-25 Jonathon Anderson * dwarf_getcfi.c (dwarf_getcfi): Set default_same_value to false. diff --git a/libdw/Makefile.am b/libdw/Makefile.am index 7a3d53227..7dc4cec01 100644 --- a/libdw/Makefile.am +++ b/libdw/Makefile.am @@ -106,7 +106,7 @@ libdw_pic_a_SOURCES = am_libdw_pic_a_OBJECTS = $(libdw_a_SOURCES:.c=.os) libdw_so_LIBS = libdw_pic.a ../libdwelf/libdwelf_pic.a \ - ../libdwfl/libdwfl_pic.a ../libebl/libebl.a + ../libdwfl/libdwfl_pic.a ../libebl/libebl_pic.a libdw_so_DEPS = ../lib/libeu.a ../libelf/libelf.so libdw_so_LDLIBS = $(libdw_so_DEPS) -ldl -lz $(argp_LDADD) $(zip_LIBS) libdw_so_SOURCES = diff --git a/libebl/ChangeLog b/libebl/ChangeLog index a772ffa35..3a836c895 100644 --- a/libebl/ChangeLog +++ b/libebl/ChangeLog @@ -1,6 +1,8 @@ 2019-07-05 Omar Sandoval - * Makefile.am (gen_SOURCES): Remove. + * Makefile.am: Make libebl.a non-PIC by default. + Add libebl_pic.a. + (gen_SOURCES): Remove. 2019-04-29 Mao Han diff --git a/libebl/Makefile.am b/libebl/Makefile.am index ccc1a31ac..b85ead014 100644 --- a/libebl/Makefile.am +++ b/libebl/Makefile.am @@ -28,12 +28,15 @@ ## not, see . ## include $(top_srcdir)/config/eu.am +if BUILD_STATIC AM_CFLAGS += $(fpic_CFLAGS) +endif AM_CPPFLAGS += -I$(srcdir)/../libelf -I$(srcdir)/../libdw -I$(srcdir)/../libasm VERSION = 1 LIBEBL_SUBDIR = @LIBEBL_SUBDIR@ lib_LIBRARIES = libebl.a +noinst_LIBRARIES = libebl_pic.a pkginclude_HEADERS = libebl.h @@ -57,6 +60,9 @@ libebl_a_SOURCES = eblopenbackend.c eblclosebackend.c eblreloctypename.c \ eblresolvesym.c eblcheckreloctargettype.c \ ebl_data_marker_symbol.c +libebl_pic_a_SOURCES = +am_libebl_pic_a_OBJECTS = $(libebl_a_SOURCES:.c=.os) + noinst_HEADERS = libeblP.h ebl-hooks.h -CLEANFILES += $(am_libebl_pic_a_OBJECTS) +MOSTLYCLEANFILES = $(am_libebl_pic_a_OBJECTS)