49 lines
1.8 KiB
C++
49 lines
1.8 KiB
C++
#ifndef CMEXTRAQBSGENERATOR_H
|
|
#define CMEXTRAQBSGENERATOR_H
|
|
|
|
#include "cmExternalMakefileProjectGenerator.h"
|
|
|
|
class cmGeneratorTarget;
|
|
|
|
class cmExtraQbsGenerator : public cmExternalMakefileProjectGenerator
|
|
{
|
|
public:
|
|
cmExtraQbsGenerator();
|
|
~cmExtraQbsGenerator();
|
|
|
|
virtual std::string GetName() const
|
|
{ return cmExtraQbsGenerator::GetActualName(); }
|
|
static std::string GetActualName() { return "Qbs"; }
|
|
static cmExternalMakefileProjectGenerator *New()
|
|
{ return new cmExtraQbsGenerator; }
|
|
|
|
/** Get the documentation entry for this generator. */
|
|
virtual void GetDocumentation(cmDocumentationEntry &entry,
|
|
const std::string &fullName) const;
|
|
|
|
virtual void Generate();
|
|
|
|
private:
|
|
void CreateProjectFile(const std::string &name,
|
|
const std::vector<cmLocalGenerator *> &lgs);
|
|
void CreateNewProjectFile(const std::string &projectName,
|
|
const std::vector<cmLocalGenerator *> &lgs,
|
|
const std::string &filename);
|
|
void AppendSubProject(cmGeneratedFileStream &fout, cmLocalGenerator *lg);
|
|
void AppendProduct(cmGeneratedFileStream &fout, cmLocalGenerator *lg);
|
|
void AppendTarget(cmGeneratedFileStream &fout,
|
|
cmLocalGenerator *lg,
|
|
const cmTarget &t,
|
|
const std::string &cfg);
|
|
void AppendSources(cmGeneratedFileStream &fout,
|
|
cmGeneratorTarget *gt,
|
|
const cmTarget &t,
|
|
const std::string &cfg);
|
|
void AppendIncludePaths(cmGeneratedFileStream &fout,
|
|
const std::set<std::string> &paths);
|
|
void AppendCompileDefinitions(cmGeneratedFileStream &fout,
|
|
const std::set<std::string> &defs);
|
|
};
|
|
|
|
#endif // CMEXTRAQBSGENERATOR_H
|