zipl: Always build and link without PIE.

Compilers in Debian and Ubuntu default to enabling PIE for all binaries.
This is a poor fit for boot loader code that has strict requirements
for its layout. Hence always forcefully disable PIE.

As older compilers still need to be supported, no-pie usage is
conditional on CC's -dumpspecs output.

Fixes: #3

Signed-off-by: Philipp Kern <pkern@debian.org>
Signed-off-by: Stefan Haberland <sth@linux.vnet.ibm.com>
This commit is contained in:
Philipp Kern
2017-08-25 14:31:34 +02:00
committed by Stefan Haberland
parent 144bddbf5b
commit c5a91199e3
3 changed files with 19 additions and 9 deletions
+2 -2
View File
@@ -7,8 +7,8 @@ ALL_CPPFLAGS += -I../include -I../boot \
-DZFCPDUMP_FS_RD=$(ZFCPDUMP_FS_RD) \
-DZFCPDUMP_PART_IMAGE=$(ZFCPDUMP_PART_IMAGE) \
-DZFCPDUMP_PART_RD=$(ZFCPDUMP_PART_RD) \
-D_FILE_OFFSET_BITS=64
ALL_LDFLAGS += -Wl,-z,noexecstack
-D_FILE_OFFSET_BITS=64 $(NO_PIE_CFLAGS)
ALL_LDFLAGS += -Wl,-z,noexecstack $(NO_PIE_LDFLAGS)
libs = $(rootdir)/libutil/libutil.a \
$(rootdir)/libu2s/libu2s.a