1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
Index: llvm-toolchain-snapshot_21~++20250630094904+57f7e14b5779/clang/lib/Driver/ToolChains/Linux.cpp
===================================================================
--- llvm-toolchain-snapshot_21~++20250630094904+57f7e14b5779.orig/clang/lib/Driver/ToolChains/Linux.cpp
+++ llvm-toolchain-snapshot_21~++20250630094904+57f7e14b5779/clang/lib/Driver/ToolChains/Linux.cpp
@@ -309,6 +309,21 @@ Linux::Linux(const Driver &D, const llvm
ExtraOpts.push_back("--build-id");
#endif
+ if (Distro.IsDebian() && Distro >= Distro::DebianTrixie
+ || Distro.IsUbuntu() && Distro >= Distro::UbuntuNoble)
+ {
+ const char *pkg_metadata = getenv ("ELF_PACKAGE_METADATA");
+ const char *no_pkg_metadata = getenv ("NO_PKG_METADATA");
+
+ if (no_pkg_metadata) {
+ // don't issue --package-metadata option
+ } else if (!pkg_metadata) {
+ // no environment set for package metadata
+ } else {
+ ExtraOpts.push_back(std::string("--package-metadata=") + pkg_metadata);
+ }
+ }
+
// The selection of paths to try here is designed to match the patterns which
// the GCC driver itself uses, as this is part of the GCC-compatible driver.
// This was determined by running GCC in a fake filesystem, creating all
|