44#include " environment/EnvironmentPaths.h"
55#include " tasks/ShellExecTask.h"
66#include " utils/Copyright.h"
7- #include " utils/FileSystemUtils.h"
87#include " utils/ExecUtils.h"
8+ #include " utils/FileSystemUtils.h"
99#include " utils/LogUtils.h"
1010#include " utils/MakefileUtils.h"
1111#include " utils/StringUtils.h"
@@ -32,6 +32,19 @@ Status UserProjectConfiguration::RunBuildDirectoryCreation(const fs::path &build
3232 return Status::OK;
3333}
3434
35+ static const std::vector<std::string> CMAKE_MANDATORY_OPTIONS = {
36+ " -DCMAKE_ASM_USE_RESPONSE_FILE_FOR_INCLUDES=OFF" ,
37+ " -DCMAKE_C_USE_RESPONSE_FILE_FOR_INCLUDES=OFF" ,
38+ " -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_INCLUDES=OFF" ,
39+
40+ " -DCMAKE_ASM_USE_RESPONSE_FILE_FOR_OBJECTS=OFF" ,
41+ " -DCMAKE_C_USE_RESPONSE_FILE_FOR_OBJECTS=OFF" ,
42+ " -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_OBJECTS=OFF" ,
43+
44+ " -DCMAKE_ASM_USE_RESPONSE_FILE_FOR_LIBRARIES=OFF" ,
45+ " -DCMAKE_C_USE_RESPONSE_FILE_FOR_LIBRARIES=OFF" ,
46+ " -DCMAKE_CXX_USE_RESPONSE_FILE_FOR_LIBRARIES=OFF" ,
47+ };
3548
3649Status
3750UserProjectConfiguration::RunProjectConfigurationCommands (const fs::path &buildDirPath,
@@ -40,8 +53,16 @@ UserProjectConfiguration::RunProjectConfigurationCommands(const fs::path &buildD
4053 ProjectConfigWriter const &writer) {
4154 try {
4255 fs::path bearShPath = createBearShScript (buildDirPath);
43- cmakeOptions.emplace_back (" .." );
44- ShellExecTask::ExecutionParameters cmakeParams (Paths::getCMake (), cmakeOptions);
56+
57+ std::vector<std::string> cmakeOptionsWithMandatory = CMAKE_MANDATORY_OPTIONS;
58+ for (const std::string &op : cmakeOptions) {
59+ if (op.find (" _USE_RESPONSE_FILE_FOR_" ) == std::string::npos) {
60+ cmakeOptionsWithMandatory.emplace_back (op);
61+ }
62+ }
63+ cmakeOptionsWithMandatory.emplace_back (" .." );
64+
65+ ShellExecTask::ExecutionParameters cmakeParams (Paths::getCMake (), cmakeOptionsWithMandatory);
4566 ShellExecTask::ExecutionParameters bearMakeParams (Paths::getBear (),
4667 {Paths::getMake (), MakefileUtils::threadFlag ()});
4768
0 commit comments