diff options
author | Roger Maclean <rmaclean@qnx.com> | 2013-10-16 11:38:32 -0400 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-25 20:17:40 +0200 |
commit | 10014e083181bce07b7d2697fb23c9691ca6ce02 (patch) | |
tree | 9f33bf50fd1c11cdc542b82e2ea6efc3784d3d86 /tools | |
parent | db98b052ac671122437f181feeffb0b270318d8d (diff) |
Add configuration for building with imf support on QNX
Avoid need to modify qnx.pro in src/plugins/platforms/qnx to
build with imf support. By default detects if necessary headers
and libraries are available. Can also be explicitly requested or
disabled with -imf and -no-imf options.
Change-Id: I3f9780fc189a33e4c93fb4f950111121f8e947c3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/configure/configureapp.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index b4162b3f0f..d9390c8266 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[ "SYSTEM_PROXIES" ] = "no"; dictionary[ "WERROR" ] = "auto"; @@ -872,6 +873,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-system-proxies") { dictionary[ "SYSTEM_PROXIES" ] = "no"; } else if (configCmdLine.at(i) == "-system-proxies") { @@ -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["QT_XKBCOMMON"] = "no"; } else if (platform() == ANDROID) { dictionary[ "REDUCE_EXPORTS" ] = "yes"; @@ -1864,6 +1870,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("ANGLE", "yes", "-angle", "Use the ANGLE implementation of OpenGL ES 2.0."); @@ -2209,6 +2217,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"); } return available; @@ -2345,6 +2355,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["QT_EVENTFD"] == "auto") dictionary["QT_EVENTFD"] = checkAvailability("QT_EVENTFD") ? "yes" : "no"; @@ -3188,6 +3202,9 @@ void Configure::generateQConfigPri() if (dictionary[ "SLOG2" ] == "yes") configStream << " slog2"; + if (dictionary[ "QNX_IMF" ] == "yes") + configStream << " qqnx_imf"; + if (dictionary["DIRECTWRITE"] == "yes") configStream << " directwrite"; @@ -3553,8 +3570,10 @@ void Configure::displayConfig() sout << " HarfBuzz-NG support....." << dictionary[ "HARFBUZZ" ] << endl; sout << " PCRE support............" << dictionary[ "PCRE" ] << endl; sout << " ICU support............." << dictionary[ "ICU" ] << endl; - if ((platform() == QNX) || (platform() == BLACKBERRY)) + if ((platform() == QNX) || (platform() == BLACKBERRY)) { sout << " SLOG2 support..........." << dictionary[ "SLOG2" ] << endl; + sout << " IMF support............." << dictionary[ "QNX_IMF" ] << endl; + } sout << " ANGLE..................." << dictionary[ "ANGLE" ] << endl; sout << endl; |