audk/BaseTools/Conf
Ard Biesheuvel a257988f59 BaseTools/tools_def CLANGDWARF: Permit text relocations
We rely on PIE executables to get the codegen that is suitable for
PE/COFF conversion where the resulting executables can be loaded
anywhere in the address space.

However, ELF linkers may default to disallowing text relocations in PIE
executables, as this would require text segments to be updated at
runtime, which is bad for security and increases the copy-on-write
footprint of ELF executables and shared libraries.

However, none of those concerns apply to PE/COFF executables in the
context of EFI, which are copied into memory rather than mmap()'ed, and
fixed up by the loader before launch.

So pass -z notext to the LLD linker to permit runtime relocations in
read-only sections.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Reviewed-by: Rebecca Cran <rebecca@bsdio.com>
2023-04-06 06:52:55 +00:00
..
XMLSchema BaseTools: Fix various typos 2019-07-08 08:59:29 +08:00
Empty_Package_Information_Data_File.ini BaseTools: Replace BSD License with BSD+Patent License 2019-04-09 09:10:20 -07:00
ReadMe.txt BaseTools: Clean up source files 2018-07-09 10:25:47 +08:00
build_rule.template Fix cyclic dependency error on OptionROM build 2023-01-17 06:14:03 +00:00
diff.order BaseTools: convert diff.order to LF-only 2020-07-03 11:20:01 +00:00
gitattributes BaseTools/Conf/gitattributes: fix "--function-context" for C source code 2020-01-31 16:13:06 +00:00
target.template BaseTools: Update Conf/target.template with the default EmulatorPkg.dsc 2019-05-23 22:40:29 +08:00
tools_def.template BaseTools/tools_def CLANGDWARF: Permit text relocations 2023-04-06 06:52:55 +00:00

ReadMe.txt

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This directory contains the template files for the next generation of the
EDK II Build infrastructure.  These files will be copied into the WORKSPACE's
Conf directory if and only if the target files do not exist.

These files may be updated frequently.

The XMLSchema directory contains the EDK II Packaging XML definitions.  The
schema may change in the future.  It differs somewhat from the early versions
of the XML Schema.