From ddbfccc4ef4d9a6c05d7e2bfa873ffd705170522 Mon Sep 17 00:00:00 2001
From: Laszlo Ersek <lersek@redhat.com>
Date: Wed, 15 Oct 2014 15:39:32 +0200
Subject: tools_def.template: enable objcopy for GCC48/AARCH64 (Acadia)

OBJCOPY defaults to "echo", therefore '-R .eh_frame' has no effect. This
leads to a series of builds errors like

GenFw: ERROR 3000: Invalid WriteSections64():
MdeModulePkg/Universal/Network/DpcDxe/DpcDxe/DEBUG/DpcDxe.dll unsupported
ELF EM_AARCH64 relocation 0x105.

See
- http://lists.gnu.org/archive/html/grub-devel/2013-12/msg00408.html
- https://plus.google.com/+JonMasters/posts/RYNT8RwFHDB
---
 BaseTools/Conf/tools_def.template | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template
index 5e0c3d7..22bb2ba 100644
--- a/BaseTools/Conf/tools_def.template
+++ b/BaseTools/Conf/tools_def.template
@@ -4462,6 +4462,7 @@ RELEASE_GCC48_ARM_CC_FLAGS       = DEF(GCC48_ARM_CC_FLAGS) -Wno-unused-but-set-v
 ##################
 # GCC48 AARCH64 definitions
 ##################
+*_GCC48_AARCH64_OBJCOPY_PATH     = ENV(GCC48_AARCH64_PREFIX)objcopy
 *_GCC48_AARCH64_CC_PATH          = ENV(GCC48_AARCH64_PREFIX)gcc
 *_GCC48_AARCH64_SLINK_PATH       = ENV(GCC48_AARCH64_PREFIX)ar
 *_GCC48_AARCH64_DLINK_PATH       = ENV(GCC48_AARCH64_PREFIX)ld
@@ -4481,6 +4482,7 @@ RELEASE_GCC48_ARM_CC_FLAGS       = DEF(GCC48_ARM_CC_FLAGS) -Wno-unused-but-set-v
 *_GCC48_AARCH64_PP_FLAGS         = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_PP_FLAGS)
 *_GCC48_AARCH64_RC_FLAGS         = DEF(GCC_AARCH64_RC_FLAGS)
 *_GCC48_AARCH64_VFRPP_FLAGS      = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_VFRPP_FLAGS)
+*_GCC48_AARCH64_OBJCOPY_FLAGS    =
 
   DEBUG_GCC48_AARCH64_CC_FLAGS   = DEF(GCC48_AARCH64_CC_FLAGS) -O0
 RELEASE_GCC48_AARCH64_CC_FLAGS   = DEF(GCC48_AARCH64_CC_FLAGS) -Wno-unused-but-set-variable
-- 
1.8.3.1

