aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/corelib/language
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2014-05-12 15:35:12 +0200
committerJoerg Bornemann <joerg.bornemann@digia.com>2014-05-14 11:39:00 +0200
commitb8b9759d55cb90322899fcec644f72d03dfdf6f0 (patch)
tree27bba423cf33d2495b2a1cf478593d28f6013cb2 /src/lib/corelib/language
parent035da22bac999f70430a1645d132097bbd366f42 (diff)
Expose project source directory to JavaScript side.
Task-number: QBS-567 Change-Id: If2b09c42760426bf9d22c77a2f33083a1f839c94 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'src/lib/corelib/language')
-rw-r--r--src/lib/corelib/language/builtindeclarations.cpp1
-rw-r--r--src/lib/corelib/language/moduleloader.cpp2
2 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/corelib/language/builtindeclarations.cpp b/src/lib/corelib/language/builtindeclarations.cpp
index b8c056a3f..3ff60944b 100644
--- a/src/lib/corelib/language/builtindeclarations.cpp
+++ b/src/lib/corelib/language/builtindeclarations.cpp
@@ -274,6 +274,7 @@ void BuiltinDeclarations::addProjectItem()
item << nameProperty();
item << conditionProperty();
item << buildDirProperty();
+ item << PropertyDeclaration(QLatin1String("sourceDirectory"), PropertyDeclaration::Path);
item << PropertyDeclaration(QLatin1String("references"), PropertyDeclaration::Variant,
PropertyDeclaration::PropertyNotAvailableInConfig);
item << PropertyDeclaration(QLatin1String("qbsSearchPaths"),
diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp
index a5a3f2e06..4ad233f6a 100644
--- a/src/lib/corelib/language/moduleloader.cpp
+++ b/src/lib/corelib/language/moduleloader.cpp
@@ -126,6 +126,8 @@ ModuleLoaderResult ModuleLoader::load(const SetupProjectParameters &parameters,
const QString buildDirectory
= TopLevelProject::deriveBuildDirectory(parameters.buildRoot(),
TopLevelProject::deriveId(parameters.finalBuildConfigurationTree()));
+ root->setProperty(QLatin1String("sourceDirectory"),
+ VariantValue::create(QFileInfo(root->file()->filePath()).absolutePath()));
root->setProperty(QLatin1String("buildDirectory"), VariantValue::create(buildDirectory));
handleProject(&result, root, QSet<QString>() << QDir::cleanPath(parameters.projectFilePath()));
result.root = root;