[lld] r313125 - [MinGW] Support creating DLLs with a def file
Martin Storsjo via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 13 00:28:13 PDT 2017
Author: mstorsjo
Date: Wed Sep 13 00:28:13 2017
New Revision: 313125
URL: http://llvm.org/viewvc/llvm-project?rev=313125&view=rev
Log:
[MinGW] Support creating DLLs with a def file
Differential Revision: https://reviews.llvm.org/D37761
Modified:
lld/trunk/MinGW/Driver.cpp
lld/trunk/test/MinGW/driver.test
Modified: lld/trunk/MinGW/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/MinGW/Driver.cpp?rev=313125&r1=313124&r2=313125&view=diff
==============================================================================
--- lld/trunk/MinGW/Driver.cpp (original)
+++ lld/trunk/MinGW/Driver.cpp Wed Sep 13 00:28:13 2017
@@ -177,7 +177,10 @@ bool mingw::link(ArrayRef<const char *>
OPT_no_whole_archive)) {
switch (A->getOption().getID()) {
case OPT_INPUT:
- Add(Prefix + StringRef(A->getValue()));
+ if (StringRef(A->getValue()).endswith(".def"))
+ Add("-def:" + StringRef(A->getValue()));
+ else
+ Add(Prefix + StringRef(A->getValue()));
break;
case OPT_l:
Add(Prefix +
Modified: lld/trunk/test/MinGW/driver.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/MinGW/driver.test?rev=313125&r1=313124&r2=313125&view=diff
==============================================================================
--- lld/trunk/test/MinGW/driver.test (original)
+++ lld/trunk/test/MinGW/driver.test Wed Sep 13 00:28:13 2017
@@ -26,6 +26,9 @@ RUN: ld.lld -### foo.o -m i386pep -share
SHARED: -out:a.dll
SHARED-SAME: -dll
+RUN: ld.lld -### foo.o -m i386pep -shared foo.def | FileCheck -check-prefix=DEF %s
+DEF: -def:foo.def
+
RUN: ld.lld -### foo.o -m i386pep -o bar.exe | FileCheck -check-prefix=OUT %s
OUT: -out:bar.exe
More information about the llvm-commits
mailing list