diff options
author | Alexander Neundorf <neundorf@kde.org> | 2009-01-09 23:58:21 (GMT) |
---|---|---|
committer | Alexander Neundorf <neundorf@kde.org> | 2009-01-09 23:58:21 (GMT) |
commit | c8b2c317e2e3b07d297f75a0fcafb24235bcd14d (patch) | |
tree | aac84f1c40610a9cf0422c456ea0aaae3b6b99a0 /Source/cmExtraEclipseCDT4Generator.cxx | |
parent | fcc97a4f3c20def4525f8962cb5a0db94dd09bc7 (diff) | |
download | CMake-c8b2c317e2e3b07d297f75a0fcafb24235bcd14d.zip CMake-c8b2c317e2e3b07d297f75a0fcafb24235bcd14d.tar.gz CMake-c8b2c317e2e3b07d297f75a0fcafb24235bcd14d.tar.bz2 |
BUG: fix #8105: don't hardcode "gcc" and "make" but use CMAKE_C_COMPILER and
CMAKE_MAKE_PROGRAM instead
Alex
Diffstat (limited to 'Source/cmExtraEclipseCDT4Generator.cxx')
-rw-r--r-- | Source/cmExtraEclipseCDT4Generator.cxx | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/Source/cmExtraEclipseCDT4Generator.cxx b/Source/cmExtraEclipseCDT4Generator.cxx index 713aeb9..aba15d6 100644 --- a/Source/cmExtraEclipseCDT4Generator.cxx +++ b/Source/cmExtraEclipseCDT4Generator.cxx @@ -699,7 +699,7 @@ void cmExtraEclipseCDT4Generator::CreateCProjectFile() const "</storageModule>\n" ; - this->AppendStorageScanners(fout); + this->AppendStorageScanners(fout, *mf); fout << "</cconfiguration>\n" "</storageModule>\n" @@ -810,8 +810,23 @@ std::string cmExtraEclipseCDT4Generator::EscapeForXML(const std::string& value) // Helper functions //---------------------------------------------------------------------------- void cmExtraEclipseCDT4Generator -::AppendStorageScanners(cmGeneratedFileStream& fout) +::AppendStorageScanners(cmGeneratedFileStream& fout, + const cmMakefile& makefile) { + // we need the "make" and the C (or C++) compiler which are used, Alex + std::string make = makefile.GetRequiredDefinition("CMAKE_MAKE_PROGRAM"); + std::string compiler = makefile.GetSafeDefinition("CMAKE_C_COMPILER"); + if (compiler.empty()) + { + compiler = makefile.GetSafeDefinition("CMAKE_CXX_COMPILER"); + } + if (compiler.empty()) //Hmm, what to do now ? + { + compiler = "gcc"; + } + + + // the following right now hardcodes gcc behaviour :-/ fout << "<storageModule moduleId=\"scannerConfiguration\">\n" "<autodiscovery enabled=\"true\" problemReportingEnabled=\"true\"" @@ -822,12 +837,12 @@ void cmExtraEclipseCDT4Generator "org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile", true, "", true, "specsFile", "-E -P -v -dD ${plugin_state_location}/${specs_file}", - "gcc", true, true); + compiler, true, true); cmExtraEclipseCDT4Generator::AppendScannerProfile(fout, "org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile", true, "", true, "makefileGenerator", "-f ${project_name}_scd.mk", - "make", true, true); + make, true, true); fout << "</storageModule>\n"; } |