Filenames are case-insensitive on Windows, so .DEF is the same as .def.

Differential Revision: https://reviews.llvm.org/D37823

llvm-svn: 313285
This commit is contained in:
Rui Ueyama 2017-09-14 18:33:09 +00:00
parent 87fc45800a
commit b359263011
2 changed files with 6 additions and 3 deletions

View File

@ -180,7 +180,7 @@ bool mingw::link(ArrayRef<const char *> ArgsArr, raw_ostream &Diag) {
for (auto *A : Args) {
switch (A->getOption().getUnaliasedOption().getID()) {
case OPT_INPUT:
if (StringRef(A->getValue()).endswith(".def"))
if (StringRef(A->getValue()).endswith_lower(".def"))
Add("-def:" + StringRef(A->getValue()));
else
Add(Prefix + StringRef(A->getValue()));

View File

@ -26,8 +26,11 @@ RUN: ld.lld -### foo.o -m i386pep -shared | FileCheck -check-prefix=SHARED %s
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 -shared foo.def | FileCheck -check-prefix=DEF1 %s
DEF1: -def:foo.def
RUN: ld.lld -### foo.o -m i386pep -shared FOO.DEF | FileCheck -check-prefix=DEF2 %s
DEF2: -def:FOO.DEF
RUN: ld.lld -### foo.o -m i386pep -o bar.exe | FileCheck -check-prefix=OUT %s
OUT: -out:bar.exe