Branch: refs/heads/BaseTools_Remove_All_Objcopy_Operations
Home: https://github.com/tianocore/edk2
Commit: 997e5bfba85cf20dd0538c567b2f8df3377976c5
https://github.com/tianocore/edk2/commit/997e5bfba85cf20dd0538c567b2f8df3377976c5
Author: Michael D Kinney <[email protected]>
Date: 2025-10-22 (Wed, 22 Oct 2025)
Changed paths:
M BaseTools/Conf/build_rule.template
M BaseTools/Conf/tools_def.template
Log Message:
-----------
BaseTools/Conf: Remove OBJCOPY and SYMRENAME operations
Remove unused SYMRENAME_PATH and SYMRENAME_FLAGS from
tools_def.template that are not used by any build rules
in build_rule.template.
Remove OBJCOPY_PATH, OBJCOPY_FLAGS, OBJCOPY_ADDDEBUGFLAG,
and OBJCOPY_STRIPFLAG from tools_def.template and remove
all OBJCOPY steps in build_rule.template.
* OBJCOPY_FLAGS was either set to nothing or set to string
to force a build error. This implies that OBJCOPY steps
with OBJCOPY_FLAGS do not generate any new files. These
steps can be safely removed with no side effects
* OBJCOPY_ADDDEBUGFLAG is only used in GCC builds to
generate a section in an ELF image with a link to the
.debug DWARF symbol file for the UNIXGCC tool chain that
directly generates PE/COFF images. The UNIXGCC tool chain
is no longer supported, and the PE/COFF images generated
with currently supported tool chains contain a debug
directory entry with a link to the DWARF symbol file.
The steps using OBJCOPY_ADDDEBUGFLAG can be safely
removed with no side effects.
* OBJCOPY_STRIPFLAG is only used in GCC builds to strip
symbols before the GENFW ELF->PE/COFF conversion. No
other tool chain configurations perform a symbol strip
operation. Stripping symbols from images induces
failures in some of the GENFW operations to parse
symbols (such as PRM use cases). Removing the
OBJCOPY_STRIPFLAG operations from GCC build rules
aligns GCC with all other tool chains on treatment of
symbols.
* Add -Wl,--no-relax to tools_def.template for GCC tool
chains for X64. This aligns with other CPU architecture
GCC linker settings. This is required for X64 because
the removal of the OBJCOPY operations to not strip symbols
introduces the use of ELF relocation types not supported
by GENFW ELF->PE/COFF conversions. Adding --no-relax
prevents the use of the unsupported ELF relocation types
such as R_X86_64_REX_GOTPCRELX.
Signed-off-by: Michael D Kinney <[email protected]>
Commit: 9e6d5c1c6d3c449cedf8348ab0f745dd14bf8c3f
https://github.com/tianocore/edk2/commit/9e6d5c1c6d3c449cedf8348ab0f745dd14bf8c3f
Author: Michael D Kinney <[email protected]>
Date: 2025-10-22 (Wed, 22 Oct 2025)
Changed paths:
M
PrmPkg/Samples/PrmSampleAcpiParameterBufferModule/PrmSampleAcpiParameterBufferModule.inf
M
PrmPkg/Samples/PrmSampleContextBufferModule/PrmSampleContextBufferModule.inf
M
PrmPkg/Samples/PrmSampleHardwareAccessModule/PrmSampleHardwareAccessModule.inf
Log Message:
-----------
PrmPkg/Samples: Remove OBJCOPY_STRIPFLAG override
The use of OBJCOPY_STRIPFLAG has been removed from
build_rule.template. The override of OBJCOPY_STRIPFLAG
to nothing to prevent symbols required to generate DLL
export section in PRM images is no longer required.
Signed-off-by: Michael D Kinney <[email protected]>
Compare:
https://github.com/tianocore/edk2/compare/997e5bfba85c%5E...9e6d5c1c6d3c
To unsubscribe from these emails, change your notification settings at
https://github.com/tianocore/edk2/settings/notifications
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits