aboutsummaryrefslogtreecommitdiff
path: root/extra-lib.mk
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-03-02 14:53:11 -0800
committerH.J. Lu <hjl.tools@gmail.com>2015-05-28 06:08:28 -0700
commitca1f728cbefd6955735087e45d80620113623b3b (patch)
treeba764e7f0391b93777d90d6a08a24695c2037634 /extra-lib.mk
parent1ea33bb5517516d1d1005b953c92a071454e66d5 (diff)
downloadglibc-ca1f728cbefd6955735087e45d80620113623b3b.zip
glibc-ca1f728cbefd6955735087e45d80620113623b3b.tar.gz
glibc-ca1f728cbefd6955735087e45d80620113623b3b.tar.bz2
Compile archives with -fno-piehjl/pr17841/master
When compiler defaults to PIE, we compile archives with -fno-pie. Since archives won't be used with PIE, compile them with -fpie isn't necessary. [BZ #17841] * Makeconfig (no-pie-ccflag): New. Set to -fno-pie. (pic-default): Don't define if $(no-pie-ccflag) is -fno-pie. (test-object-suffix): New. * Makerules (archive-objects): New. Set before including extra-lib.mk. ($(archive-objects)): New. New rule to append $(no-pie-ccflag) to CFLAGS. * extra-lib.mk (archive-objects): New. * crypt/Makefile ($(objpfx)md5test): Replace ".o" with $(test-object-suffix). ($(objpfx)md5test-giant): Likewise. ($(objpfx)sha256test): Likewise. ($(objpfx)sha512test): Likewise. * math/Makefile (LDFLAGS-atest-exp): New. (LDFLAGS-atest-sincos): Likewise. (LDFLAGS-atest-exp2): Likewise.
Diffstat (limited to 'extra-lib.mk')
-rw-r--r--extra-lib.mk5
1 files changed, 5 insertions, 0 deletions
diff --git a/extra-lib.mk b/extra-lib.mk
index b10748d..73b1e7f 100644
--- a/extra-lib.mk
+++ b/extra-lib.mk
@@ -27,6 +27,11 @@ extra-objs := $(extra-objs)
# The modules that go in $(lib).
all-$(lib)-routines := $($(lib)-routines) $($(lib)-sysdep_routines)
+# rpcsvc library is compiled with PIC.
+ifneq (librpcsvc,$(lib))
+archive-objects += $(addprefix $(objpfx),$(patsubst %,%.o,$(all-$(lib)-routines)))
+endif
+
# Add each flavor of library to the lists of things to build and install.
install-lib += $(foreach o,$(object-suffixes-$(lib)),$(lib:lib%=$(libtype$o)))
extra-objs += $(foreach o,$(filter-out .os .oS,$(object-suffixes-$(lib))),\