Fix for #1271, set_file_prefix_map attribute (#1288)

This commit is contained in:
Aaron Michaux 2024-09-19 11:28:55 -04:00 committed by GitHub
parent b25485b26d
commit e67c45c8db
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 13 additions and 0 deletions

View File

@ -306,6 +306,11 @@ def get_flags_info(ctx, link_output_file = None):
), ),
), ),
) )
if "set_file_prefix_map" in dir(ctx.attr) and ctx.attr.set_file_prefix_map:
copts.append("-ffile-prefix-map=$EXT_BUILD_ROOT=.")
cxxopts.append("-ffile-prefix-map=$EXT_BUILD_ROOT=.")
return CxxFlagsInfo( return CxxFlagsInfo(
cc = _convert_flags(cc_toolchain_.compiler, _add_if_needed(flags.cc, copts)), cc = _convert_flags(cc_toolchain_.compiler, _add_if_needed(flags.cc, copts)),
cxx = _convert_flags(cc_toolchain_.compiler, _add_if_needed(flags.cxx, cxxopts)), cxx = _convert_flags(cc_toolchain_.compiler, _add_if_needed(flags.cxx, cxxopts)),

View File

@ -201,6 +201,14 @@ CC_EXTERNAL_RULE_ATTRIBUTES = {
doc = "Optional part of the shell script to be added after the make commands", doc = "Optional part of the shell script to be added after the make commands",
mandatory = False, mandatory = False,
), ),
"set_file_prefix_map": attr.bool(
doc = (
"Use -ffile-prefix-map with the intention to remove the sandbox path from " +
"debug symbols"
),
mandatory = False,
default = False,
),
"targets": attr.string_list( "targets": attr.string_list(
doc = ( doc = (
"A list of targets with in the foreign build system to produce. An empty string (`\"\"`) will result in " + "A list of targets with in the foreign build system to produce. An empty string (`\"\"`) will result in " +