diff options
author | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2012-05-23 15:07:06 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-05-31 09:13:01 +0200 |
commit | e7f1106edb1ac37d92d7851c44cd8d99f68eaaf4 (patch) | |
tree | b4d01b3ca52a0ff8a8ec0aa1803beeac78196508 /tools/configure/configureapp.cpp | |
parent | b63e101a90b677dcb192214aef35a107620c5f3c (diff) |
Windows: Add ANGLE support.
- Add QWindowsEGLContext usable for ANGLE and Windows CE.
- Add QWindowsEGLStaticContext containing the display
for resource cleanup.
- Add EGLSurface to QWindowsWindow.
- Add a -angle option specifying the path to the external
ANGLE installation to configure, add libraries to
the mkspecs.
Initial-patch-by: Jabot Corentin <corentinjabot@gmail.com>
Task-number: QTBUG-24207
Change-Id: I5f80b1efb6996da7c5d70aa3720f7801c9e4c6af
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Diffstat (limited to 'tools/configure/configureapp.cpp')
-rw-r--r-- | tools/configure/configureapp.cpp | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 3e6613f066..d584f120d4 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -654,6 +654,16 @@ void Configure::parseCmdLine() dictionary[ "DONE" ] = "error"; break; } + // External location of ANGLE library (Open GL ES 2) + } else if (configCmdLine.at(i) == QStringLiteral("-angle")) { + if (++i == argCount) + break; + const QFileInfo fi(configCmdLine.at(i)); + if (!fi.isDir()) { + cout << "Argument passed to -angle option is not a directory." << endl; + dictionary.insert(QStringLiteral("DONE"), QStringLiteral( "error")); + } + dictionary.insert(QStringLiteral("ANGLE_DIR"), fi.absoluteFilePath()); } // OpenVG Support ------------------------------------------- @@ -1608,7 +1618,7 @@ bool Configure::displayHelp() desc("PLUGIN_MANIFESTS", "no", "-no-plugin-manifests", "Do not embed manifests in plugins."); desc("PLUGIN_MANIFESTS", "yes", "-plugin-manifests", "Embed manifests in plugins.\n"); - + desc( "-angle <dir>", "Use ANGLE library from location <dir>.\n"); #if !defined(EVAL) desc("BUILD_QMAKE", "no", "-no-qmake", "Do not compile qmake."); desc("BUILD_QMAKE", "yes", "-qmake", "Compile qmake.\n"); @@ -2713,6 +2723,19 @@ void Configure::generateQConfigPri() if (!dictionary["QT_NAMESPACE"].isEmpty()) configStream << "#namespaces" << endl << "QT_NAMESPACE = " << dictionary["QT_NAMESPACE"] << endl; + if (dictionary.value(QStringLiteral("OPENGL_ES_2")) == QStringLiteral("yes")) { + const QString angleDir = dictionary.value(QStringLiteral("ANGLE_DIR")); + if (!angleDir.isEmpty()) { + configStream + << "QMAKE_INCDIR_OPENGL_ES2 = " + << fixSeparators(angleDir + QStringLiteral("/include"), true) << '\n' + << "QMAKE_LIBDIR_OPENGL_ES2_DEBUG = " + << fixSeparators(angleDir + QStringLiteral("/lib/Debug"), true) << '\n' + << "QMAKE_LIBDIR_OPENGL_ES2_RELEASE = " + << fixSeparators(angleDir + QStringLiteral("/lib/Release"), true) + '\n'; + } + } + configStream.flush(); configFile.close(); } @@ -3080,6 +3103,11 @@ void Configure::displayConfig() sout << "SSE2 support................" << dictionary[ "SSE2" ] << endl; sout << "IWMMXT support.............." << dictionary[ "IWMMXT" ] << endl; sout << "OpenGL support.............." << dictionary[ "OPENGL" ] << endl; + if (dictionary.value(QStringLiteral("OPENGL_ES_2")) == QStringLiteral("yes")) { + const QString angleDir = dictionary.value(QStringLiteral("ANGLE_DIR")); + if (!angleDir.isEmpty()) + sout << "ANGLE......................." << QDir::toNativeSeparators(angleDir) << endl; + } sout << "OpenVG support.............." << dictionary[ "OPENVG" ] << endl; sout << "OpenSSL support............." << dictionary[ "OPENSSL" ] << endl; sout << "QtDBus support.............." << dictionary[ "DBUS" ] << endl; |