From 424d5dc07844ee7ef21776e32caaf137b33f8358 Mon Sep 17 00:00:00 2001 From: Alex Neundorf Date: Sun, 29 Dec 2013 07:00:24 +0100 Subject: [PATCH] kate: support also the build plugin in kate <= 4.12 With this patch, simply also the information used by the build plugin in kate <= 4.12 is put into the generated json file. The new build plugin (coming in 4.13) simply ignores this (and vice versa). Alex --- Source/cmExtraKateGenerator.cxx | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/Source/cmExtraKateGenerator.cxx b/Source/cmExtraKateGenerator.cxx index 8399fe842..ba67fdacb 100644 --- a/Source/cmExtraKateGenerator.cxx +++ b/Source/cmExtraKateGenerator.cxx @@ -86,17 +86,28 @@ void cmExtraKateGenerator::WriteTargets(const cmMakefile* mf, cmGeneratedFileStream& fout) const { + const std::string make = mf->GetRequiredDefinition("CMAKE_MAKE_PROGRAM"); + const std::string makeArgs = mf->GetSafeDefinition( + "CMAKE_KATE_MAKE_ARGUMENTS"); + const char* homeOutputDir = mf->GetHomeOutputDirectory(); + fout << "\t\"build\": {\n" "\t\t\"directory\": \"" << mf->GetHomeOutputDirectory() << "\",\n" "\t\t\"default_target\": \"all\",\n" - "\t\t\"clean_target\": \"clean\",\n" - "\t\t\"targets\":[\n"; + "\t\t\"clean_target\": \"clean\",\n"; - const std::string make = mf->GetRequiredDefinition("CMAKE_MAKE_PROGRAM"); - const std::string makeArgs = mf->GetSafeDefinition( - "CMAKE_KATE_MAKE_ARGUMENTS"); - const char* homeOutputDir = mf->GetHomeOutputDirectory(); + // build, clean and quick are for the build plugin kate <= 4.12: + fout << "\t\t\"build\": \"" << make << " -C " << homeOutputDir + << " " << makeArgs << " " << "all\",\n"; + fout << "\t\t\"clean\": \"" << make << " -C " << homeOutputDir + << " " << makeArgs << " " << "clean\",\n"; + fout << "\t\t\"quick\": \"" << make << " -C " << homeOutputDir + << " " << makeArgs << " " << "install\",\n"; + + // this is for kate >= 4.13: + fout << + "\t\t\"targets\":[\n"; this->AppendTarget(fout, "all", make, makeArgs, homeOutputDir, homeOutputDir);