This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils 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 v3] Check for -z,defs, -z,relro, -fPIC, -fPIE before using them


On Fri, Aug 18, 2017 at 12:41:11PM +0200, Ulf Hermann wrote:
> Those flags are not available on all platforms, and omitting them when
> not available will not cause any harm. In particular:
> 
> -z,defs disallows undefined symbols in object files. This option is
> unsupported if the target binary format enforces the same condition
> already. Furthermore it is only a compile time sanity check. When it is
> omitted, the same binary is produced.
> 
> -z,relro instructs the loader to mark sections read-only after loading
> the library, where possible. This is a hardening mechanism. If it is
> unavailable, the functionality of the code is not affected in any way.
> 
> -fPIC instructs the compiler to produce position independent code. While
> this is preferable to relocatable code, relocatable code also works and
> may even be faster. Relocatable code might just be loaded into memory
> multiple times for different processes.
> 
> -fPIE is the same thing as -fPIC for executables rather than shared
> libraries.

I am not a fan, because I have my doubts supporting systems which don't
even support these are really worth the trouble. And I am slightly afraid
the configure checks might silently fail while we really don't want that.
But the patch is clean and makes the compile flags consistent. Applied.

Thanks,

Mark


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