diff options
| -rw-r--r-- | clang/lib/Driver/Tools.cpp | 4 | ||||
| -rw-r--r-- | clang/test/Driver/msvc-link.c | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index cef2008bed4..8b1171aba5e 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -9950,6 +9950,10 @@ void visualstudio::Linker::ConstructJob(Compilation &C, const JobAction &JA, WindowsSdkLibPath.c_str())); } + if (!C.getDriver().IsCLMode() && Args.hasArg(options::OPT_L)) + for (const auto &LibPath : Args.getAllArgValues(options::OPT_L)) + CmdArgs.push_back(Args.MakeArgString("-libpath:" + LibPath)); + CmdArgs.push_back("-nologo"); if (Args.hasArg(options::OPT_g_Group, options::OPT__SLASH_Z7)) diff --git a/clang/test/Driver/msvc-link.c b/clang/test/Driver/msvc-link.c index b44e3826199..8fe57331ee4 100644 --- a/clang/test/Driver/msvc-link.c +++ b/clang/test/Driver/msvc-link.c @@ -10,3 +10,9 @@ // DLL: "-defaultlib:libcmt" // DLL: "-nologo" // DLL: "-dll" + +// RUN: %clang -target i686-pc-windows-msvc -L/var/empty -L/usr/lib -### %s 2>&1 | FileCheck --check-prefix LIBPATH %s +// LIBPATH: "-libpath:/var/empty" +// LIBPATH: "-libpath:/usr/lib" +// LIBPATH: "-nologo" + |

