aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
diff options
context:
space:
mode:
authorGravatar pcloudy <pcloudy@google.com>2018-05-23 06:39:10 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-05-23 06:40:19 -0700
commit9b964fcec25d29cef542e314cfffd223785063be (patch)
tree661b9f3af3471f6ad30a3a187fd82a910a8c50ad /src/main/java/com/google/devtools/build
parent7f51f112cb13495154babd1f645c394002396596 (diff)
Windows: Fix link parameter file for dynamic linking
Diffstat (limited to 'src/main/java/com/google/devtools/build')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/LinkCommandLine.java12
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 {