diff options
Diffstat (limited to 'devtools')
-rw-r--r-- | devtools/create_project/create_project.cpp | 7 | ||||
-rw-r--r-- | devtools/create_project/msbuild.cpp | 4 | ||||
-rw-r--r-- | devtools/create_project/visualstudio.cpp | 4 |
3 files changed, 11 insertions, 4 deletions
diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 8eba73d7b3..6072120a15 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -1527,7 +1527,8 @@ void ProjectProvider::addFilesToProject(const std::string &dir, std::ofstream &p StringList duplicate; for (StringList::const_iterator i = includeList.begin(); i != includeList.end(); ++i) { - const std::string fileName = getLastPathComponent(*i); + std::string fileName = getLastPathComponent(*i); + std::transform(fileName.begin(), fileName.end(), fileName.begin(), tolower); // Leave out non object file names. if (fileName.size() < 2 || fileName.compare(fileName.size() - 2, 2, ".o")) @@ -1540,7 +1541,9 @@ void ProjectProvider::addFilesToProject(const std::string &dir, std::ofstream &p // Search for duplicates StringList::const_iterator j = i; ++j; for (; j != includeList.end(); ++j) { - if (fileName == getLastPathComponent(*j)) { + std::string candidateFileName = getLastPathComponent(*j); + std::transform(candidateFileName.begin(), candidateFileName.end(), candidateFileName.begin(), tolower); + if (fileName == candidateFileName) { duplicate.push_back(fileName); break; } diff --git a/devtools/create_project/msbuild.cpp b/devtools/create_project/msbuild.cpp index 2c6a89543f..3accce4e05 100644 --- a/devtools/create_project/msbuild.cpp +++ b/devtools/create_project/msbuild.cpp @@ -514,7 +514,9 @@ void MSBuildProvider::writeFileListToProject(const FileNode &dir, std::ofstream if (!_compileFiles.empty()) { projectFile << "\t<ItemGroup>\n"; for (std::list<FileEntry>::const_iterator entry = _compileFiles.begin(); entry != _compileFiles.end(); ++entry) { - const bool isDuplicate = (std::find(duplicate.begin(), duplicate.end(), (*entry).name + ".o") != duplicate.end()); + std::string fileName = (*entry).name + ".o"; + std::transform(fileName.begin(), fileName.end(), fileName.begin(), tolower); + const bool isDuplicate = (std::find(duplicate.begin(), duplicate.end(), fileName) != duplicate.end()); // Deal with duplicated file names if (isDuplicate) { diff --git a/devtools/create_project/visualstudio.cpp b/devtools/create_project/visualstudio.cpp index 96fdbdf27a..d63c347b17 100644 --- a/devtools/create_project/visualstudio.cpp +++ b/devtools/create_project/visualstudio.cpp @@ -338,7 +338,9 @@ void VisualStudioProvider::writeFileListToProject(const FileNode &dir, std::ofst if (producesObjectFile(node->name)) { std::string name, ext; splitFilename(node->name, name, ext); - const bool isDuplicate = (std::find(duplicate.begin(), duplicate.end(), name + ".o") != duplicate.end()); + name += ".o"; + std::transform(name.begin(), name.end(), name.begin(), tolower); + const bool isDuplicate = (std::find(duplicate.begin(), duplicate.end(), name) != duplicate.end()); if (ext == "asm") { std::string objFileName = "$(IntDir)\\"; |