diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2024-02-20 18:46:41 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2024-02-20 18:46:41 +0000 |
| commit | e15a4f0a320e3c1248539511adee55a201e9ed2e (patch) | |
| tree | e74b63e38a51ec5611f79daf5df6b5a2d7102bdb /lld/COFF/Driver.cpp | |
| parent | 4fdf604ba667503ae582304cebdd3df426778a6b (diff) | |
Vendor import of llvm-project branch release/18.x llvmorg-18.1.0-rc2-53-gc7b0a6ecd442.vendor/llvm-project/llvmorg-18.1.0-rc2-53-gc7b0a6ecd442
Diffstat (limited to 'lld/COFF/Driver.cpp')
| -rw-r--r-- | lld/COFF/Driver.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lld/COFF/Driver.cpp b/lld/COFF/Driver.cpp index e0afb6b18805..22ee2f133be9 100644 --- a/lld/COFF/Driver.cpp +++ b/lld/COFF/Driver.cpp @@ -1825,7 +1825,15 @@ void LinkerDriver::linkerMain(ArrayRef<const char *> argsArr) { } } else { config->repro = false; - config->timestamp = time(nullptr); + if (std::optional<std::string> epoch = + Process::GetEnv("SOURCE_DATE_EPOCH")) { + StringRef value(*epoch); + if (value.getAsInteger(0, config->timestamp)) + fatal(Twine("invalid SOURCE_DATE_EPOCH timestamp: ") + value + + ". Expected 32-bit integer"); + } else { + config->timestamp = time(nullptr); + } } // Handle /alternatename |
