cmake-gui: Do not pass CMAKE_{C,CXX}_COMPILER items to cmake if empty

If C or C++ compiler is not specified in the initial dialog, do not pass
`CMAKE_C_COMPILER` or `CMAKE_CXX_COMPILER` cache entries for
cross-compilation setup.  Instead allow the normal search for the
compiler to proceed.
This commit is contained in:
Jiri Malak
2020-04-26 05:51:25 -04:00
committed by Brad King
parent eadafe2ebc
commit 7a0c17f704

View File

@@ -808,11 +808,15 @@ bool CMakeSetupDialog::setupFirstConfigure()
m->insertProperty(QCMakeProperty::STRING, "CMAKE_SYSTEM_PROCESSOR",
tr("CMake System Processor"), systemProcessor, false);
QString cxxCompiler = dialog.getCXXCompiler();
m->insertProperty(QCMakeProperty::FILEPATH, "CMAKE_CXX_COMPILER",
tr("CXX compiler."), cxxCompiler, false);
if (!cxxCompiler.isEmpty()) {
m->insertProperty(QCMakeProperty::FILEPATH, "CMAKE_CXX_COMPILER",
tr("CXX compiler."), cxxCompiler, false);
}
QString cCompiler = dialog.getCCompiler();
m->insertProperty(QCMakeProperty::FILEPATH, "CMAKE_C_COMPILER",
tr("C compiler."), cCompiler, false);
if (!cCompiler.isEmpty()) {
m->insertProperty(QCMakeProperty::FILEPATH, "CMAKE_C_COMPILER",
tr("C compiler."), cCompiler, false);
}
} else if (dialog.crossCompilerToolChainFile()) {
QString toolchainFile = dialog.getCrossCompilerToolChainFile();
m->insertProperty(QCMakeProperty::FILEPATH, "CMAKE_TOOLCHAIN_FILE",