diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 26c2babb82..3c9cb5d37d 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -634,18 +634,19 @@ int HandleIcstat(std::string const& runCmd, std::string const& sourceFile, icstat_cmd.emplace_back(cmd); } - // Create the default manifest ruleset file when not found + // Create a default C-STAT manifest file containing standard checks + // if it does not already exist. if (!cmSystemTools::FileExists("cstat_sel_checks.txt")) { std::vector ichecks_cmd; ichecks_cmd.emplace_back( cmStrCat(cmSystemTools::GetFilenamePath(orig_cmd[0]), "/ichecks")); - ichecks_cmd.emplace_back("--default"); - ichecks_cmd.emplace_back("stdchecks"); + ichecks_cmd.emplace_back("--default=stdchecks"); + if (!cmSystemTools::RunSingleCommand(ichecks_cmd, &stdOut, &stdErr, &ret, nullptr, cmSystemTools::OUTPUT_NONE)) { - std::cerr << "Error generating default manifest file '" << ichecks_cmd[0] - << "': " << stdOut << '\n'; + std::cerr << "C-STAT: Error creating default manifest file '" + << ichecks_cmd[0] << "': " << stdOut << '\n'; return 1; } }