mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-13 21:31:53 +00:00
CREATE_PROJECT: Fix module.mk parsing.
Formerly create_project incorrectly assumed that a given object file is only present once in an module.mk file. This is not the case for backends/module.mk for example. There the Windows FS object files are in two different if blocks. In this particular case it resulted in the object file being added to both the include list and the exclude list. Now the module.mk handler prefers files being in the include list.
This commit is contained in:
parent
29bc72a627
commit
dea5aa8a20
@ -1225,10 +1225,20 @@ void ProjectProvider::createModuleList(const std::string &moduleDir, const Strin
|
||||
tokens = tokenize(line);
|
||||
i = tokens.begin();
|
||||
} else {
|
||||
if (shouldInclude.top())
|
||||
includeList.push_back(moduleDir + "/" + unifyPath(*i));
|
||||
else
|
||||
excludeList.push_back(moduleDir + "/" + unifyPath(*i));
|
||||
const std::string filename = moduleDir + "/" + unifyPath(*i);
|
||||
|
||||
if (shouldInclude.top()) {
|
||||
// In case we should include a file, we need to make
|
||||
// sure it is not in the exclude list already. If it
|
||||
// is we just drop it from the exclude list.
|
||||
excludeList.remove(filename);
|
||||
|
||||
includeList.push_back(filename);
|
||||
} else if (std::find(includeList.begin(), includeList.end(), filename) == includeList.end()) {
|
||||
// We only add the file to the exclude list in case it
|
||||
// has not yet been added to the include list.
|
||||
excludeList.push_back(filename);
|
||||
}
|
||||
++i;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user