aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/genericprojectmanager
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@digia.com>2014-02-05 16:44:35 +0100
committerErik Verbruggen <erik.verbruggen@digia.com>2014-02-27 15:58:17 +0100
commit346e84d219448bb583dbc4ad71a2850db30e1cc8 (patch)
treed0090198a6aa61c33e6c05226916658a04cfc2bc /src/plugins/genericprojectmanager
parent36dccb42faf256756d94b4ad797bfb40bb449f07 (diff)
C++: introduce a project config file field in the projectPart.
This field is used by the generic project manager which passes the ".config" file in it. The advantage is that both the SnapshotUpdater and the clang code model do not need to do anything smart, but can pass it directly to the preprocessor. Task-number: QTCREATORBUG-11390 Change-Id: I44fc7b20afd28fb59608412f2cce86af6f7e7d6b Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/genericprojectmanager')
-rw-r--r--src/plugins/genericprojectmanager/genericproject.cpp16
-rw-r--r--src/plugins/genericprojectmanager/genericproject.h2
-rw-r--r--src/plugins/genericprojectmanager/genericprojectwizard.cpp7
3 files changed, 7 insertions, 18 deletions
diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp
index 68d77143513..a8d4bdadab3 100644
--- a/src/plugins/genericprojectmanager/genericproject.cpp
+++ b/src/plugins/genericprojectmanager/genericproject.cpp
@@ -218,15 +218,6 @@ void GenericProject::parseProject(RefreshOptions options)
// TODO: Possibly load some configuration from the project file
//QSettings projectInfo(m_fileName, QSettings::IniFormat);
-
- m_defines.clear();
-
- QFile configFile(configFileName());
- if (configFile.open(QFile::ReadOnly)) {
- // convert from local/file encoding to UTF-8
- QTextStream configStream(&configFile);
- m_defines = configStream.readAll().toUtf8();
- }
}
if (options & Files)
@@ -265,7 +256,7 @@ void GenericProject::refresh(RefreshOptions options)
}
part->cxxVersion = CppTools::ProjectPart::CXX11; // assume C++11
- part->projectDefines += m_defines;
+ part->projectConfigFile = configFileName();
// ### add _defines.
@@ -348,11 +339,6 @@ QStringList GenericProject::files() const
return m_files;
}
-QByteArray GenericProject::defines() const
-{
- return m_defines;
-}
-
QString GenericProject::displayName() const
{
return m_projectName;
diff --git a/src/plugins/genericprojectmanager/genericproject.h b/src/plugins/genericprojectmanager/genericproject.h
index 18ca8798c67..30a657ff253 100644
--- a/src/plugins/genericprojectmanager/genericproject.h
+++ b/src/plugins/genericprojectmanager/genericproject.h
@@ -81,7 +81,6 @@ public:
void refresh(RefreshOptions options);
- QByteArray defines() const;
QStringList projectIncludePaths() const;
QStringList files() const;
@@ -108,7 +107,6 @@ private:
QStringList m_files;
QHash<QString, QString> m_rawListEntries;
QStringList m_projectIncludePaths;
- QByteArray m_defines;
GenericProjectNode *m_rootNode;
QFuture<void> m_codeModelFuture;
diff --git a/src/plugins/genericprojectmanager/genericprojectwizard.cpp b/src/plugins/genericprojectmanager/genericprojectwizard.cpp
index a7d700efc8b..f8059adb2c2 100644
--- a/src/plugins/genericprojectmanager/genericprojectwizard.cpp
+++ b/src/plugins/genericprojectmanager/genericprojectwizard.cpp
@@ -48,6 +48,11 @@
namespace GenericProjectManager {
namespace Internal {
+static const char *const ConfigFileTemplate =
+ "// Add predefined macros for your project here. For example:\n"
+ "// #define THE_ANSWER 42\n"
+ ;
+
//////////////////////////////////////////////////////////////////////////////
//
// GenericProjectWizardDialog
@@ -189,7 +194,7 @@ Core::GeneratedFiles GenericProjectWizard::generateFiles(const QWizard *w,
generatedIncludesFile.setContents(includePaths.join(QLatin1String("\n")));
Core::GeneratedFile generatedConfigFile(configFileName);
- generatedConfigFile.setContents(QLatin1String("// ADD PREDEFINED MACROS HERE!\n"));
+ generatedConfigFile.setContents(QLatin1String(ConfigFileTemplate));
Core::GeneratedFiles files;
files.append(generatedFilesFile);