]> git.proxmox.com Git - mirror_edk2.git/commit
BaseTools/tools_def AARCH64 ARM: suppres PIE sections via linker script
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Tue, 21 Nov 2017 16:02:14 +0000 (16:02 +0000)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Thu, 23 Nov 2017 10:44:53 +0000 (10:44 +0000)
commit14ca435fb6c059eaeb7fe6eedbe4738ffaf336d0
treeab3bd8aabad6eb0f4d8340ec322ede948f536e7d
parent8794bf26c624cc0f569e0770381a0f6207602b9a
BaseTools/tools_def AARCH64 ARM: suppres PIE sections via linker script

Recent distro builds of GCC 6 enable PIE linking by default, and allow
the previous behavior to be restored by passing the -no-pie command line
argument. Support for this was implemented by commits 1894a7c64c0a and
3380a591232d but unfortunately, it turns out that GCC 5 does not support
this command line argument, and exits with an error.

To avoid the need for yet another toolchain tag, to distinguish between
GCC 5 and GCC 6, let's use our GCC linker scripts when building objects
from .aslc files. This will ensure that the extra sections that are added
by the PIE linker are discarded from the ELF binary, and so they will not
corrupt the resulting .acpi file.

This reverts

1894a7c64c0a BaseTools/tools_def AARCH64 ARM: disable PIE linking
3380a591232d BaseTools/tools_def AARCH64 ARM: disable PIE linking for .aslc sources

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Marcin Wojtas <mw@semihalf.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
BaseTools/Conf/tools_def.template