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

Reply via email to