This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Replece LDFLAGS-* = $(no-pie-ldflag) with tst-*-no-pie = yes [BZ #22630]


On Tue, Dec 19, 2017 at 9:07 AM, Joseph Myers <joseph@codesourcery.com> wrote:
> On Mon, 18 Dec 2017, H.J. Lu wrote:
>
>> $(no-pie-ldflag) is no longer effective since no-pie-ldflag is defined
>> to -no-pie only if GCC defaults to PIE.  When --enable-static-pie is
>> used to configure glibc build and GCC doesn't default to PIE. no-pie-ldflag
>> is undefined and these tests:
>>
>> elf/Makefile:LDFLAGS-tst-dlopen-aout = $(no-pie-ldflag)
>> elf/Makefile:LDFLAGS-tst-prelink = $(no-pie-ldflag)
>> elf/Makefile:LDFLAGS-tst-main1 = $(no-pie-ldflag)
>> gmon/Makefile:LDFLAGS-tst-gmon := $(no-pie-ldflag)
>>
>> may fail to link.  This patch replaces "-pie" with
>
> Why is --enable-static-pie causing non-static test cases to be built as
> PIE?  I see nothing in the NEWS or INSTALL entries to indicate such an
> effect.  That looks like the underlying problem here.
>

To build static PIE, all .o files need to compiled with -fPIE.  Given all
input .o files are compiled with -fPIE when creating an executable, should
we generate PIE or nor no-PIE?

-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]