diff options
author | Lars Knoll <lars.knoll@qt.io> | 2016-08-14 09:48:55 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-08-18 17:10:47 +0000 |
commit | 97b856b78859861f16304debad29889f691d9eb7 (patch) | |
tree | c570975edb23c5790b323af7218ca4f28e6dd0bf /configure.pri | |
parent | c027cffbef6cb317a5a09e1785398c046f0a6395 (diff) |
Use the qmake based configuration system also on Windows
Adapt configure.exe to use qmake to do most of the work of configuring
Qt. This unifies a large part of our configuration system between Unix
and Windows. configure.exe is now still doing the license check,
creating qconfig.cpp, building qmake, and not much more.
On the way, re-implement the still missing Windows-specific tests with
the new system.
The opengles2 vs. opengl-desktop conditions got a bit convoluted, as
Unix prefers desktop GL, while Windows GLES2 (via ANGLE). Superficially,
there is a circular dependency, but the platform scopes are supposed to
break it.
Done-with: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Change-Id: Ia1941f2c34b7f5bd4990a7673cd737361381c2e7
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'configure.pri')
-rw-r--r-- | configure.pri | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/configure.pri b/configure.pri index 0e785349d7..4b98335dd7 100644 --- a/configure.pri +++ b/configure.pri @@ -10,6 +10,9 @@ defineTest(qtConfCommandline_qmakeArgs) { } defineTest(qtConfCommandline_cxxstd) { + msvc: \ + qtConfAddError("Command line option -c++std is not supported with MSVC compilers.") + arg = $${1} val = $${2} isEmpty(val): val = $$qtConfGetNextCommandlineArg() @@ -372,6 +375,33 @@ defineTest(qtConfLibrary_sybaseEnv) { return(true) } +# Check for Direct X SDK (include, lib, and direct shader compiler 'fxc'). +# Up to Direct X SDK June 2010 and for MinGW, this is pointed to by the +# DXSDK_DIR variable. Starting with Windows Kit 8, it is included in +# the Windows SDK. Checking for the header is not sufficient, since it +# is also present in MinGW. +defineTest(qtConfTest_directX) { + dxdir = $$getenv("DXSDK_DIR") + !isEmpty(dxdir) { + EXTRA_INCLUDEPATH += $$dxdir/include + arch = $$qtConfEvaluate("tests.architecture.arch") + equals(arch, x86_64): \ + EXTRA_LIBDIR += $$dxdir/lib/x64 + else: \ + EXTRA_LIBDIR += $$dxdir/lib/x86 + EXTRA_PATH += $$dxdir/Utilities/bin/x86 + } + + $$qtConfEvaluate("features.sse2") { + ky = $$size($${1}.files._KEYS_) + $${1}.files._KEYS_ += $$ky + # Not present on MinGW-32 + $${1}.files.$${ky} = "intrin.h" + } + + qtConfTest_files($${1}): return(true) + return(false) +} defineTest(qtConfTest_xkbConfigRoot) { qtConfTest_getPkgConfigVariable($${1}): return(true) @@ -390,6 +420,7 @@ defineTest(qtConfTest_qpaDefaultPlatform) { name = !isEmpty(config.input.qpa_default_platform): name = $$config.input.qpa_default_platform else: !isEmpty(QT_QPA_DEFAULT_PLATFORM): name = $$QT_QPA_DEFAULT_PLATFORM + else: winrt: name = winrt else: win32: name = windows else: android: name = android else: osx: name = cocoa |