Merge topic 'fix-qtautogen-with-object-library-Ninja'
9bc6eb8e
cmGlobalGenerator: Initialize generator targets on construction (#15729)
This commit is contained in:
commit
130f116340
|
@ -275,6 +275,8 @@ cmGeneratorTarget::cmGeneratorTarget(cmTarget* t, cmLocalGenerator* lg)
|
|||
this->LocalGenerator = lg;
|
||||
this->GlobalGenerator = this->LocalGenerator->GetGlobalGenerator();
|
||||
|
||||
this->GlobalGenerator->ComputeTargetObjectDirectory(this);
|
||||
|
||||
CreatePropertyGeneratorExpressions(
|
||||
t->GetIncludeDirectoriesEntries(),
|
||||
t->GetIncludeDirectoriesBacktraces(),
|
||||
|
|
|
@ -1263,8 +1263,6 @@ bool cmGlobalGenerator::Compute()
|
|||
this->LocalGenerators[i]->AddHelperCommands();
|
||||
}
|
||||
|
||||
this->InitGeneratorTargets();
|
||||
|
||||
#ifdef CMAKE_BUILD_WITH_CMAKE
|
||||
for (std::vector<cmTarget const*>::iterator it = autogenTargets.begin();
|
||||
it != autogenTargets.end(); ++it)
|
||||
|
@ -1557,19 +1555,6 @@ void cmGlobalGenerator::CreateGeneratorTargets(TargetTypes targetTypes,
|
|||
mf->SetGeneratorTargets(generatorTargets);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
void cmGlobalGenerator::InitGeneratorTargets()
|
||||
{
|
||||
for(cmGeneratorTargetsType::iterator ti =
|
||||
this->GeneratorTargets.begin(); ti != this->GeneratorTargets.end(); ++ti)
|
||||
{
|
||||
if (!ti->second->Target->IsImported())
|
||||
{
|
||||
this->ComputeTargetObjectDirectory(ti->second);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
void cmGlobalGenerator::CreateGeneratorTargets(TargetTypes targetTypes)
|
||||
{
|
||||
|
|
|
@ -480,7 +480,6 @@ private:
|
|||
cmGeneratorTargetsType GeneratorTargets;
|
||||
friend class cmake;
|
||||
void CreateGeneratorTargets(TargetTypes targetTypes, cmLocalGenerator* lg);
|
||||
void InitGeneratorTargets();
|
||||
void CreateGeneratorTargets(TargetTypes targetTypes);
|
||||
|
||||
void ClearGeneratorMembers();
|
||||
|
|
|
@ -101,7 +101,14 @@ add_executable(QtAutogen main.cpp calwidget.cpp second_widget.cpp foo.cpp blub.c
|
|||
)
|
||||
set_property(TARGET QtAutogen APPEND PROPERTY AUTOGEN_TARGET_DEPENDS generate_moc_input "${CMAKE_CURRENT_BINARY_DIR}/myotherinterface.h")
|
||||
|
||||
set_target_properties(QtAutogen codeeditorLib privateSlot PROPERTIES AUTOMOC TRUE)
|
||||
add_executable(targetObjectsTest targetObjectsTest.cpp $<TARGET_OBJECTS:privateSlot>)
|
||||
target_link_libraries(targetObjectsTest ${QT_LIBRARIES})
|
||||
|
||||
set_target_properties(
|
||||
QtAutogen codeeditorLib privateSlot targetObjectsTest
|
||||
PROPERTIES
|
||||
AUTOMOC TRUE
|
||||
)
|
||||
|
||||
include(GenerateExportHeader)
|
||||
# The order is relevant here. B depends on A, and B headers depend on A
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
int main()
|
||||
{
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue