summaryrefslogtreecommitdiff
path: root/qtcreator.pri
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@digia.com>2013-12-12 14:09:06 +0100
committerEike Ziller <eike.ziller@digia.com>2013-12-17 08:54:03 +0100
commit27563451cb628643c090d336eca5d510a282b93e (patch)
treeed87273ee3faf6f4731145828b4766aa3038ccd7 /qtcreator.pri
parent9dd60b34f82a90a5aae85f80a1adbe0849ef7824 (diff)
downloadqt-creator-27563451cb628643c090d336eca5d510a282b93e.tar.gz
Allow plugins to depend on plugins outside of creator source tree
Do try to resolve plugin_dependencies.pri files in all directories set by QTC_PLUGIN_DIRS. Also fail if a dependencies_pri file cannot be resolved. Change-Id: I2c14db832cef0fcc97a2f0351847c4969f5bd420 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'qtcreator.pri')
-rw-r--r--qtcreator.pri19
1 files changed, 16 insertions, 3 deletions
diff --git a/qtcreator.pri b/qtcreator.pri
index 522c46d097..58e09a0200 100644
--- a/qtcreator.pri
+++ b/qtcreator.pri
@@ -153,8 +153,12 @@ macx {
INCLUDEPATH += \
$$IDE_BUILD_TREE/src \ # for <app/app_version.h>
$$IDE_SOURCE_TREE/src/libs \
- $$IDE_SOURCE_TREE/tools \
- $$IDE_SOURCE_TREE/src/plugins
+ $$IDE_SOURCE_TREE/tools
+
+QTC_PLUGIN_DIRS += $$IDE_SOURCE_TREE/src/plugins
+for (dir, QTC_PLUGIN_DIRS) {
+ INCLUDEPATH += $$dir
+}
CONFIG += depend_includepath
@@ -203,7 +207,16 @@ for(ever) {
break()
done_plugins += $$QTC_PLUGIN_DEPENDS
for(dep, QTC_PLUGIN_DEPENDS) {
- include($$PWD/src/plugins/$$dep/$${dep}_dependencies.pri)
+ dependencies_file =
+ for(dir, QTC_PLUGIN_DIRS) {
+ exists($$dir/$$dep/$${dep}_dependencies.pri) {
+ dependencies_file = $$dir/$$dep/$${dep}_dependencies.pri
+ break()
+ }
+ }
+ isEmpty(dependencies_file): \
+ error("Plugin dependency $$dep not found")
+ include($$dependencies_file)
LIBS += -l$$qtLibraryName($$QTC_PLUGIN_NAME)
}
QTC_PLUGIN_DEPENDS = $$unique(QTC_PLUGIN_DEPENDS)