diff options
author | pcloudy <pcloudy@google.com> | 2018-05-23 06:39:10 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-05-23 06:40:19 -0700 |
commit | 9b964fcec25d29cef542e314cfffd223785063be (patch) | |
tree | 661b9f3af3471f6ad30a3a187fd82a910a8c50ad /src/main/java/com/google/devtools/build | |
parent | 7f51f112cb13495154babd1f645c394002396596 (diff) |
Windows: Fix link parameter file for dynamic linking
Related issue: https://github.com/bazelbuild/bazel/issues/1013
Fix https://github.com/bazelbuild/bazel/issues/5243
RELNOTES:
PiperOrigin-RevId: 197715690
Diffstat (limited to 'src/main/java/com/google/devtools/build')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java index 92358daf14..961cf537b9 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java @@ -321,9 +321,15 @@ public final class LinkCommandLine extends CommandLine { commandlineArgs.add(args.get(++i)); } } - } else if (arg.endsWith(".a") || arg.endsWith(".lo") || arg.endsWith(".so") - || arg.endsWith(".ifso") || arg.endsWith(".o") - || CppFileTypes.VERSIONED_SHARED_LIBRARY.matches(arg)) { + } else if (CppFileTypes.OBJECT_FILE.apply(arg) + || CppFileTypes.PIC_OBJECT_FILE.apply(arg) + || CppFileTypes.ARCHIVE.apply(arg) + || CppFileTypes.PIC_ARCHIVE.apply(arg) + || CppFileTypes.ALWAYS_LINK_LIBRARY.apply(arg) + || CppFileTypes.ALWAYS_LINK_PIC_LIBRARY.apply(arg) + || CppFileTypes.SHARED_LIBRARY.apply(arg) + || CppFileTypes.INTERFACE_SHARED_LIBRARY.apply(arg) + || CppFileTypes.VERSIONED_SHARED_LIBRARY.apply(arg)) { // All objects of any kind go into the linker parameters. paramFileArgs.add(arg); } else { |