AutoMoc: Do not list moc macros multiple times
When working on a project with a nested dependency tree, a macro can be added multiple times. For example in a project I am working on, in the warning "includes the moc file [... ] but does not contain a [...] macro" the macro list contains 127 entries but only 25 unique ones.
This commit is contained in:
parent
6e2f4029c0
commit
8ff0c2b1dd
@ -24,6 +24,7 @@
|
||||
|
||||
#include "cmsys/SystemInformation.hxx"
|
||||
|
||||
#include "cmAlgorithms.h"
|
||||
#include "cmCustomCommand.h"
|
||||
#include "cmCustomCommandLines.h"
|
||||
#include "cmGeneratedFileStream.h"
|
||||
@ -522,6 +523,8 @@ bool cmQtAutoGenInitializer::InitCustomTargets()
|
||||
// Filters
|
||||
cmExpandList(this->GenTarget->GetSafeProperty("AUTOMOC_MACRO_NAMES"),
|
||||
this->Moc.MacroNames);
|
||||
this->Moc.MacroNames.erase(cmRemoveDuplicates(this->Moc.MacroNames),
|
||||
this->Moc.MacroNames.end());
|
||||
{
|
||||
auto filterList = cmExpandedList(
|
||||
this->GenTarget->GetSafeProperty("AUTOMOC_DEPEND_FILTERS"));
|
||||
|
Loading…
Reference in New Issue
Block a user