diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/configure/Makefile.mingw | 1 | ||||
-rw-r--r-- | tools/configure/Makefile.win32 | 1 | ||||
-rw-r--r-- | tools/configure/configure.pro | 1 | ||||
-rw-r--r-- | tools/configure/configureapp.cpp | 38 |
4 files changed, 36 insertions, 5 deletions
diff --git a/tools/configure/Makefile.mingw b/tools/configure/Makefile.mingw index 1994c9a52b..11bfbe562a 100644 --- a/tools/configure/Makefile.mingw +++ b/tools/configure/Makefile.mingw @@ -60,6 +60,7 @@ OBJECTS = \ qmap.o \ qregexp.o \ qstring.o \ + qstring_compat.o \ qstringlist.o \ qvsnprintf.o \ qvariant.o \ diff --git a/tools/configure/Makefile.win32 b/tools/configure/Makefile.win32 index 6b922e6693..ff38ddcc76 100644 --- a/tools/configure/Makefile.win32 +++ b/tools/configure/Makefile.win32 @@ -58,6 +58,7 @@ OBJECTS = \ qmap.obj \ qregexp.obj \ qstring.obj \ + qstring_compat.obj \ qstringlist.obj \ qvsnprintf.obj \ qvariant.obj \ diff --git a/tools/configure/configure.pro b/tools/configure/configure.pro index 2163e37a58..215a137adf 100644 --- a/tools/configure/configure.pro +++ b/tools/configure/configure.pro @@ -119,6 +119,7 @@ SOURCES = main.cpp configureapp.cpp environment.cpp tools.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qmap.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qregexp.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qstring.cpp \ + $$QT_SOURCE_TREE/src/corelib/tools/qstring_compat.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qstringlist.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qvsnprintf.cpp \ $$QT_SOURCE_TREE/src/corelib/kernel/qvariant.cpp \ diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 5ab413a971..e1295c6370 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -194,6 +194,7 @@ Configure::Configure(int& argc, char** argv) dictionary[ "QT_CUPS" ] = "auto"; dictionary[ "CFG_GCC_SYSROOT" ] = "yes"; dictionary[ "SLOG2" ] = "no"; + dictionary[ "QNX_IMF" ] = "no"; dictionary[ "PPS" ] = "no"; dictionary[ "SYSTEM_PROXIES" ] = "no"; dictionary[ "WERROR" ] = "auto"; @@ -880,6 +881,10 @@ void Configure::parseCmdLine() dictionary[ "SLOG2" ] = "no"; } else if (configCmdLine.at(i) == "-slog2") { dictionary[ "SLOG2" ] = "yes"; + } else if (configCmdLine.at(i) == "-no-imf") { + dictionary[ "QNX_IMF" ] = "no"; + } else if (configCmdLine.at(i) == "-imf") { + dictionary[ "QNX_IMF" ] = "yes"; } else if (configCmdLine.at(i) == "-no-pps") { dictionary[ "PPS" ] = "no"; } else if (configCmdLine.at(i) == "-pps") { @@ -1596,17 +1601,17 @@ void Configure::applySpecSpecifics() dictionary[ "LIBPNG" ] = "qt"; dictionary[ "FREETYPE" ] = "yes"; dictionary[ "ACCESSIBILITY" ] = "no"; - dictionary[ "OPENGL" ] = "no"; - dictionary[ "OPENGL_ES_2" ] = "no"; + dictionary[ "OPENGL" ] = "yes"; + dictionary[ "OPENGL_ES_2" ] = "yes"; dictionary[ "OPENVG" ] = "no"; - dictionary[ "OPENSSL" ] = "auto"; + dictionary[ "OPENSSL" ] = "no"; dictionary[ "DBUS" ] = "no"; dictionary[ "ZLIB" ] = "qt"; dictionary[ "PCRE" ] = "qt"; dictionary[ "ICU" ] = "qt"; dictionary[ "CE_CRT" ] = "yes"; dictionary[ "LARGE_FILE" ] = "no"; - dictionary[ "ANGLE" ] = "no"; + dictionary[ "ANGLE" ] = "d3d11"; if (dictionary.value("XQMAKESPEC").startsWith("winphone")) dictionary[ "SQL_SQLITE" ] = "no"; } else if (dictionary.value("XQMAKESPEC").startsWith("wince")) { @@ -1653,6 +1658,7 @@ void Configure::applySpecSpecifics() } else if ((platform() == QNX) || (platform() == BLACKBERRY)) { dictionary["STACK_PROTECTOR_STRONG"] = "auto"; dictionary["SLOG2"] = "auto"; + dictionary["QNX_IMF"] = "auto"; dictionary["PPS"] = "auto"; dictionary["QT_XKBCOMMON"] = "no"; dictionary[ "ANGLE" ] = "no"; @@ -1870,7 +1876,8 @@ bool Configure::displayHelp() if ((platform() == QNX) || (platform() == BLACKBERRY)) { desc("SLOG2", "yes", "-slog2", "Compile with slog2 support."); desc("SLOG2", "no", "-no-slog2", "Do not compile with slog2 support."); - + desc("QNX_IMF", "yes", "-imf", "Compile with imf support."); + desc("QNX_IMF", "no", "-no-imf", "Do not compile with imf support."); desc("PPS", "yes", "-pps", "Compile with PPS support."); desc("PPS", "no", "-no-pps", "Do not compile with PPS support."); } @@ -2212,6 +2219,8 @@ bool Configure::checkAvailability(const QString &part) available = (platform() == QNX || platform() == BLACKBERRY) && compilerSupportsFlag("qcc -fstack-protector-strong"); } else if (part == "SLOG2") { available = tryCompileProject("unix/slog2"); + } else if (part == "QNX_IMF") { + available = tryCompileProject("unix/qqnx_imf"); } else if (part == "PPS") { available = (platform() == QNX || platform() == BLACKBERRY) && tryCompileProject("unix/pps"); } else if (part == "NEON") { @@ -2359,6 +2368,10 @@ void Configure::autoDetection() dictionary["SLOG2"] = checkAvailability("SLOG2") ? "yes" : "no"; } + if ((platform() == QNX || platform() == BLACKBERRY) && dictionary["QNX_IMF"] == "auto") { + dictionary["QNX_IMF"] = checkAvailability("QNX_IMF") ? "yes" : "no"; + } + if (dictionary["PPS"] == "auto") { dictionary["PPS"] = checkAvailability("PPS") ? "yes" : "no"; } @@ -2988,6 +3001,10 @@ void Configure::detectArch() .arg(QDir::toNativeSeparators(buildPath + "/bin/qmake.exe"), QDir::toNativeSeparators(qmakespec), QDir::toNativeSeparators(sourcePath + "/config.tests/arch/arch.pro")); + + if (qmakespec.startsWith("winrt") || qmakespec.startsWith("winphone")) + command.append(" QMAKE_LFLAGS+=/ENTRY:main"); + int returnValue = 0; Environment::execute(command, &returnValue); if (returnValue != 0) { @@ -3088,6 +3105,13 @@ bool Configure::tryCompileProject(const QString &projectPath, const QString &ext .arg(QDir::toNativeSeparators(buildPath + "/bin/qmake.exe"), QDir::toNativeSeparators(sourcePath + "/config.tests/" + projectPath), extraOptions); + + if (dictionary.contains("XQMAKESPEC")) { + const QString qmakespec = dictionary["XQMAKESPEC"]; + if (qmakespec.startsWith("winrt") || qmakespec.startsWith("winphone")) + command.append(" QMAKE_LFLAGS+=/ENTRY:main"); + } + int code = 0; QString output = Environment::execute(command, &code); //cout << output << endl; @@ -3189,6 +3213,9 @@ void Configure::generateQConfigPri() if (dictionary[ "SLOG2" ] == "yes") configStream << " slog2"; + if (dictionary[ "QNX_IMF" ] == "yes") + configStream << " qqnx_imf"; + if (dictionary[ "PPS" ] == "yes") configStream << " qqnx_pps"; @@ -3560,6 +3587,7 @@ void Configure::displayConfig() sout << " ICU support............." << dictionary[ "ICU" ] << endl; if ((platform() == QNX) || (platform() == BLACKBERRY)) { sout << " SLOG2 support..........." << dictionary[ "SLOG2" ] << endl; + sout << " IMF support............." << dictionary[ "QNX_IMF" ] << endl; sout << " PPS support............." << dictionary[ "PPS" ] << endl; } sout << " ANGLE..................." << dictionary[ "ANGLE" ] << endl; |