summaryrefslogtreecommitdiffstats
path: root/tools/configure
diff options
context:
space:
mode:
Diffstat (limited to 'tools/configure')
-rw-r--r--tools/configure/configureapp.cpp61
-rw-r--r--tools/configure/configureapp.h5
2 files changed, 60 insertions, 6 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index 8c06a158cf..5a24e9b266 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -64,6 +64,13 @@
QT_BEGIN_NAMESPACE
+enum Platforms {
+ WINDOWS,
+ WINDOWS_CE,
+ QNX,
+ BLACKBERRY
+};
+
std::ostream &operator<<(std::ostream &s, const QString &val) {
s << val.toLocal8Bit().data();
return s;
@@ -2961,7 +2968,7 @@ void Configure::generateConfigfiles()
if (dictionary[ "QT_SXE" ] == "no")
tmpStream<<"#define QT_NO_SXE"<<endl;
- tmpStream<<"#define QT_QPA_DEFAULT_PLATFORM_NAME \"windows\""<<endl;
+ tmpStream<<"#define QT_QPA_DEFAULT_PLATFORM_NAME \"" << qpaPlatformName() << "\""<<endl;
tmpStream.flush();
tmpFile.flush();
@@ -3699,11 +3706,7 @@ bool Configure::showLicense(QString orgLicenseFile)
void Configure::readLicense()
{
- if (QFile::exists(dictionary["QT_SOURCE_TREE"] + "/src/corelib/kernel/qfunctions_wince.h") &&
- (dictionary.value("QMAKESPEC").startsWith("wince") || dictionary.value("XQMAKESPEC").startsWith("wince")))
- dictionary["PLATFORM NAME"] = "Qt for Windows CE";
- else
- dictionary["PLATFORM NAME"] = "Qt for Windows";
+ dictionary["PLATFORM NAME"] = platformName();
dictionary["LICENSE FILE"] = sourcePath;
bool openSource = false;
@@ -3809,6 +3812,52 @@ bool Configure::isOk()
return (dictionary[ "DONE" ] != "error");
}
+QString Configure::platformName() const
+{
+ switch (platform()) {
+ default:
+ case WINDOWS:
+ return QStringLiteral("Qt for Windows");
+ case WINDOWS_CE:
+ return QStringLiteral("Qt for Windows CE");
+ case QNX:
+ return QStringLiteral("Qt for QNX");
+ case BLACKBERRY:
+ return QStringLiteral("Qt for Blackberry");
+ }
+}
+
+QString Configure::qpaPlatformName() const
+{
+ switch (platform()) {
+ default:
+ case WINDOWS:
+ case WINDOWS_CE:
+ return QStringLiteral("windows");
+ case QNX:
+ return QStringLiteral("qnx");
+ case BLACKBERRY:
+ return QStringLiteral("blackberry");
+ }
+}
+
+int Configure::platform() const
+{
+ const QString qMakeSpec = dictionary.value("QMAKESPEC");
+ const QString xQMakeSpec = dictionary.value("XQMAKESPEC");
+
+ if ((qMakeSpec.startsWith("wince") || xQMakeSpec.startsWith("wince")))
+ return WINDOWS_CE;
+
+ if (xQMakeSpec.contains("qnx"))
+ return QNX;
+
+ if (xQMakeSpec.contains("blackberry"))
+ return BLACKBERRY;
+
+ return WINDOWS;
+}
+
bool
Configure::filesDiffer(const QString &fn1, const QString &fn2)
{
diff --git a/tools/configure/configureapp.h b/tools/configure/configureapp.h
index 42068e77b4..4ac0736a2c 100644
--- a/tools/configure/configureapp.h
+++ b/tools/configure/configureapp.h
@@ -104,6 +104,11 @@ public:
ProjectType projectType( const QString& proFileName );
bool isDone();
bool isOk();
+
+ int platform() const;
+ QString platformName() const;
+ QString qpaPlatformName() const;
+
private:
// Our variable dictionaries
QMap<QString,QString> dictionary;