Commit c450abfe authored by dt_'s avatar dt_
Browse files

Symbian: Correctly ignore certain deployment rules

Reviewed-By: Pawel Polanski
Task-Nr: QTCREATORBUG-4840
parent 4e83d167
......@@ -152,26 +152,9 @@ bool S60DeployConfiguration::isApplication(const Qt4ProFileNode &projectNode) co
return projectNode.projectType() == ApplicationTemplate;
}
bool S60DeployConfiguration::isDeployable(const Qt4ProFileNode &projectNode) const
{
const QStringList &deployment(projectNode.variableValue(Deployment));
// default_*deployment are default for DEPLOYMENT
const char * defaultDeploymentStart = "default_";
const char * defaultDeploymentEnd = "deployment";
//we need to filter out the default_*deployment
for (int i = deployment.count() - 1; i >= 0; --i) {
const QString var = deployment.at(i);
if (!var.startsWith(QLatin1String(defaultDeploymentStart))
|| !var.endsWith(QLatin1String(defaultDeploymentEnd)))
return true;
}
return false;
}
bool S60DeployConfiguration::hasSisPackage(const Qt4ProFileNode &projectNode) const
{
return isDeployable(projectNode) || isApplication(projectNode);
return projectNode.isDeployable();
}
QStringList S60DeployConfiguration::signedPackages() const
......
......@@ -129,7 +129,6 @@ private:
QString symbianTarget() const;
QString createPackageName(const QString &baseName) const;
bool isDebug() const;
bool isDeployable(const Qt4ProFileNode &projectNode) const;
bool isStaticLibrary(const Qt4ProFileNode &projectNode) const;
bool isApplication(const Qt4ProFileNode &projectNode) const;
bool hasSisPackage(const Qt4ProFileNode &projectNode) const;
......
......@@ -1321,6 +1321,11 @@ QStringList Qt4ProFileNode::symbianCapabilities() const
return result;
}
bool Qt4ProFileNode::isDeployable() const
{
return m_isDeployable;
}
/*!
\class Qt4ProFileNode
Implements abstract ProjectNode class
......@@ -1753,7 +1758,18 @@ void Qt4ProFileNode::applyEvaluate(EvalResult evalResult, bool async)
QLatin1String("QML_IMPORT_PATH"), m_projectDir);
newVarValues[Makefile] = m_readerExact->values("MAKEFILE");
newVarValues[SymbianCapabilities] = m_readerExact->values("TARGET.CAPABILITY");
newVarValues[Deployment] = m_readerExact->values("DEPLOYMENT");
m_isDeployable = false;
if (m_projectType == ApplicationTemplate) {
m_isDeployable = true;
} else {
foreach (const QString &item, m_readerExact->values("DEPLOYMENT")) {
if (!m_readerExact->values(item + ".sources").isEmpty()) {
m_isDeployable = true;
break;
}
}
}
if (m_varValues != newVarValues) {
Qt4VariablesHash oldValues = m_varValues;
......
......@@ -104,8 +104,7 @@ enum Qt4Variable {
ConfigVar,
QmlImportPathVar,
Makefile,
SymbianCapabilities,
Deployment
SymbianCapabilities
};
class Qt4PriFileNode;
......@@ -305,6 +304,7 @@ public:
QString makefile() const;
QStringList symbianCapabilities() const;
bool isDeployable() const;
void update();
void scheduleUpdate();
......@@ -348,6 +348,7 @@ private:
Qt4ProjectType m_projectType;
Qt4VariablesHash m_varValues;
bool m_isDeployable;
QMap<QString, QDateTime> m_uitimestamps;
TargetInformation m_qt4targetInformation;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment