1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
Index: llvm-toolchain-snapshot_21~++20250211013808+e258bca9505f/lld/ELF/Driver.cpp
===================================================================
--- llvm-toolchain-snapshot_21~++20250211013808+e258bca9505f.orig/lld/ELF/Driver.cpp
+++ llvm-toolchain-snapshot_21~++20250211013808+e258bca9505f/lld/ELF/Driver.cpp
@@ -1447,6 +1447,13 @@ static void readConfigs(Ctx &ctx, opt::I
ctx.arg.outputFile = args.getLastArgValue(OPT_o);
if (auto *arg = args.getLastArg(OPT_package_metadata))
parsePackageMetadata(ctx, *arg);
+ // No package-metadata option, fall-back to env ELF_PACKAGE_METADATA
+ if (ctx.arg.packageMetadata.empty()) {
+ const char *env_package_metadata = getenv("ELF_PACKAGE_METADATA");
+ if (env_package_metadata && strcmp(env_package_metadata, "") != 0) {
+ parsePackageMetadata(ctx, *opt::Arg::create(OPT_package_metadata, "ELF_PACKAGE_METADATA", env_package_metadata));
+ }
+ }
ctx.arg.pie = args.hasFlag(OPT_pie, OPT_no_pie, false);
ctx.arg.printIcfSections =
args.hasFlag(OPT_print_icf_sections, OPT_no_print_icf_sections, false);
|