[llvm-commits] [llvm] r107362 - /llvm/trunk/tools/llvmc/plugins/Base/Base.td.in
Mikhail Glushenkov
foldr at codedgers.com
Wed Jun 30 18:00:32 PDT 2010
Author: foldr
Date: Wed Jun 30 20:00:32 2010
New Revision: 107362
URL: http://llvm.org/viewvc/llvm-project?rev=107362&view=rev
Log:
Make -filelist work with -linker=c++.
Modified:
llvm/trunk/tools/llvmc/plugins/Base/Base.td.in
Modified: llvm/trunk/tools/llvmc/plugins/Base/Base.td.in
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvmc/plugins/Base/Base.td.in?rev=107362&r1=107361&r2=107362&view=diff
==============================================================================
--- llvm/trunk/tools/llvmc/plugins/Base/Base.td.in (original)
+++ llvm/trunk/tools/llvmc/plugins/Base/Base.td.in Wed Jun 30 20:00:32 2010
@@ -262,12 +262,12 @@
]>;
// Base class for linkers
-class llvm_gcc_based_linker <string cmd_prefix> : Tool<
+class llvm_gcc_based_linker <string cmd_prefix, dag on_empty> : Tool<
[(in_language ["object-code", "static-library"]),
(out_language "executable"),
(output_suffix "out"),
(command cmd_prefix),
- (works_on_empty (case (not_empty "filelist"), true,
+ (works_on_empty (case (and (not_empty "filelist"), on_empty), true,
(default), false)),
(join),
(actions (case
@@ -295,9 +295,13 @@
]>;
// Default linker
-def llvm_gcc_linker : llvm_gcc_based_linker<"@LLVMGCCCOMMAND@">;
+def llvm_gcc_linker : llvm_gcc_based_linker<"@LLVMGCCCOMMAND@",
+ (not (or (parameter_equals "linker", "g++"),
+ (parameter_equals "linker", "c++")))>;
// Alternative linker for C++
-def llvm_gcc_cpp_linker : llvm_gcc_based_linker<"@LLVMGXXCOMMAND@">;
+def llvm_gcc_cpp_linker : llvm_gcc_based_linker<"@LLVMGXXCOMMAND@",
+ (or (parameter_equals "linker", "g++"),
+ (parameter_equals "linker", "c++"))>;
// Language map
More information about the llvm-commits
mailing list