MCPcopy Create free account
hub / github.com/Kitware/CMake / AddHeaderSetVerification

Method AddHeaderSetVerification

Source/cmGlobalGenerator.cxx:1900–1951  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1898}
1899
1900bool cmGlobalGenerator::AddHeaderSetVerification()
1901{
1902 for (auto const& gen : this->LocalGenerators) {
1903 // Because AddHeaderSetVerification() adds generator targets, we need to
1904 // cache the existing list of generator targets before starting.
1905 std::vector<cmGeneratorTarget*> genTargets;
1906 genTargets.reserve(gen->GetGeneratorTargets().size());
1907 for (auto const& tgt : gen->GetGeneratorTargets()) {
1908 genTargets.push_back(tgt.get());
1909 }
1910
1911 for (auto* tgt : genTargets) {
1912 if (!tgt->AddHeaderSetVerification()) {
1913 return false;
1914 }
1915 }
1916 }
1917
1918 cmTarget* allVerifyInterfaceTarget =
1919 this->Makefiles.front()->FindTargetToUse(
1920 "all_verify_interface_header_sets",
1921 { cmStateEnums::TargetDomain::NATIVE });
1922 if (allVerifyInterfaceTarget) {
1923 this->LocalGenerators.front()->AddGeneratorTarget(
1924 cm::make_unique<cmGeneratorTarget>(allVerifyInterfaceTarget,
1925 this->LocalGenerators.front().get()));
1926 }
1927 cmTarget* allVerifyPrivateTarget = this->Makefiles.front()->FindTargetToUse(
1928 "all_verify_private_header_sets", { cmStateEnums::TargetDomain::NATIVE });
1929 if (allVerifyPrivateTarget) {
1930 this->LocalGenerators.front()->AddGeneratorTarget(
1931 cm::make_unique<cmGeneratorTarget>(allVerifyPrivateTarget,
1932 this->LocalGenerators.front().get()));
1933 }
1934
1935 if (allVerifyInterfaceTarget || allVerifyPrivateTarget) {
1936 cmTarget* allVerifyTarget =
1937 this->GetMakefiles().front()->AddNewUtilityTarget(
1938 "all_verify_header_sets", true);
1939 this->LocalGenerators.front()->AddGeneratorTarget(
1940 cm::make_unique<cmGeneratorTarget>(allVerifyTarget,
1941 this->LocalGenerators.front().get()));
1942 if (allVerifyInterfaceTarget) {
1943 allVerifyTarget->AddUtility(allVerifyInterfaceTarget->GetName(), false);
1944 }
1945 if (allVerifyPrivateTarget) {
1946 allVerifyTarget->AddUtility(allVerifyPrivateTarget->GetName(), false);
1947 }
1948 }
1949
1950 return true;
1951}
1952
1953void cmGlobalGenerator::CreateFileGenerateOutputs()
1954{

Callers 1

ComputeMethod · 0.95

Calls 10

reserveMethod · 0.80
push_backMethod · 0.80
FindTargetToUseMethod · 0.80
AddGeneratorTargetMethod · 0.80
AddNewUtilityTargetMethod · 0.80
AddUtilityMethod · 0.80
sizeMethod · 0.45
getMethod · 0.45
frontMethod · 0.45
GetNameMethod · 0.45

Tested by

no test coverage detected