aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorOswald Buddenhagen <[email protected]>2012-06-18 18:13:33 +0200
committerOswald Buddenhagen <[email protected]>2012-07-04 14:16:03 +0200
commitd78fd3933b3a3da0f29f8739e350a6c9449906a2 (patch)
treeaedcc223f8be66027d58030bcb7d81b0352e05ad /src
parent705afed75ddb14d4c48155f46239be1077b9a04b (diff)
add groundwork for supporting -t and -tp qmake options
Change-Id: Ibb1aafdaeaf8ee53bb11436d2f2ca8ccbf0ffc3c Reviewed-by: Daniel Teske <[email protected]> Reviewed-by: Oswald Buddenhagen <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/shared/proparser/qmakeevaluator.cpp18
-rw-r--r--src/shared/proparser/qmakeglobals.h1
2 files changed, 17 insertions, 2 deletions
diff --git a/src/shared/proparser/qmakeevaluator.cpp b/src/shared/proparser/qmakeevaluator.cpp
index 40f48ae1a8f..a6355c6a7ac 100644
--- a/src/shared/proparser/qmakeevaluator.cpp
+++ b/src/shared/proparser/qmakeevaluator.cpp
@@ -816,8 +816,22 @@ void QMakeEvaluator::visitProVariable(
void QMakeEvaluator::setTemplate()
{
ProStringList &values = valuesRef(statics.strTEMPLATE);
- if (values.isEmpty())
- values.append(ProString("app", NoHash));
+ if (!m_option->user_template.isEmpty()) {
+ // Don't allow override
+ values = ProStringList(ProString(m_option->user_template, NoHash));
+ } else {
+ if (values.isEmpty())
+ values.append(ProString("app", NoHash));
+ else
+ values.erase(values.begin() + 1, values.end());
+ }
+ if (!m_option->user_template_prefix.isEmpty()) {
+ QString val = values.first().toQString(m_tmp1);
+ if (!val.startsWith(m_option->user_template_prefix)) {
+ val.prepend(m_option->user_template_prefix);
+ values = ProStringList(ProString(val, NoHash));
+ }
+ }
}
void QMakeEvaluator::loadDefaults()
diff --git a/src/shared/proparser/qmakeglobals.h b/src/shared/proparser/qmakeglobals.h
index 64750cb2653..59394af8f56 100644
--- a/src/shared/proparser/qmakeglobals.h
+++ b/src/shared/proparser/qmakeglobals.h
@@ -66,6 +66,7 @@ public:
QProcessEnvironment environment;
#endif
QString sysroot;
+ QString user_template, user_template_prefix;
// -nocache, -cache, -spec, QMAKESPEC
// -set persistent value