[llvm-branch-commits] [clang] release/22.x: [ClangLinkerWrapper] Fix `-v` for newer CMake passing it directly (#188883) (PR #191256)
Cullen Rhodes via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Fri Apr 17 05:46:57 PDT 2026
https://github.com/c-rhodes updated https://github.com/llvm/llvm-project/pull/191256
>From 5a1590c1443358b8eba3aff6312d319e265a4026 Mon Sep 17 00:00:00 2001
From: Joseph Huber <huberjn at outlook.com>
Date: Thu, 26 Mar 2026 21:08:49 -0500
Subject: [PATCH] [ClangLinkerWrapper] Fix `-v` for newer CMake passing it
directly (#188883)
Summary:
Normally `-v` is version for tools, but it's also verbose for the
linker. CMake tries to identify the linker by passing `-Wl,-v` which
goes to the linker wrapper instead. Make this only print version on
`--version` and forward the other one to the linker so it appears
transparent to the host ABI. A bit of a hack, but it should work.
(cherry picked from commit 80b1fbecf4df3296b3976ce3cb42eb7832fc9053)
---
clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp | 2 +-
clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
index 48a3c5f97e375..020fb536e0576 100644
--- a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+++ b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
@@ -1286,7 +1286,7 @@ int main(int Argc, char **Argv) {
Args.hasArg(OPT_help_hidden), Args.hasArg(OPT_help_hidden));
return EXIT_SUCCESS;
}
- if (Args.hasArg(OPT_v)) {
+ if (Args.hasArg(OPT_version)) {
printVersion(outs());
return EXIT_SUCCESS;
}
diff --git a/clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td b/clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
index ef3a16b2f58bb..5781f1fe405c5 100644
--- a/clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
+++ b/clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
@@ -123,8 +123,7 @@ def library_EQ : Joined<["--", "-"], "library=">, Flags<[HelpHidden]>,
def rpath : Separate<["--", "-"], "rpath">;
def rpath_EQ : Joined<["--", "-"], "rpath=">, Flags<[HelpHidden]>, Alias<rpath>;
-def v : Flag<["--", "-"], "v">, HelpText<"Display the version number and exit">;
-def version : Flag<["--", "-"], "version">, Flags<[HelpHidden]>, Alias<v>;
+def version : Flag<["--", "-"], "version">, Flags<[HelpHidden]>;
def whole_archive : Flag<["--", "-"], "whole-archive">, Flags<[HelpHidden]>;
def no_whole_archive : Flag<["--", "-"], "no-whole-archive">, Flags<[HelpHidden]>;
More information about the llvm-branch-commits
mailing list