summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/angle.conf9
-rw-r--r--mkspecs/common/msvc-base.conf56
-rw-r--r--mkspecs/common/msvc-desktop.conf56
-rw-r--r--mkspecs/common/wince/qmake.conf6
-rw-r--r--mkspecs/common/winrt_winphone/qmake.conf11
-rw-r--r--mkspecs/features/qt_build_paths.prf11
-rw-r--r--mkspecs/features/qt_module.prf2
-rw-r--r--mkspecs/win32-g++/qmake.conf5
-rw-r--r--mkspecs/wince70embedded-armv4i-msvc2008/qmake.conf2
-rw-r--r--mkspecs/wince80colibri-armv7-msvc2012/qmake.conf2
-rw-r--r--mkspecs/winrt-arm-msvc2015/qmake.conf1
-rw-r--r--mkspecs/winrt-x64-msvc2015/qmake.conf1
-rw-r--r--mkspecs/winrt-x86-msvc2015/qmake.conf1
13 files changed, 97 insertions, 66 deletions
diff --git a/mkspecs/common/angle.conf b/mkspecs/common/angle.conf
new file mode 100644
index 0000000000..fffdb581c5
--- /dev/null
+++ b/mkspecs/common/angle.conf
@@ -0,0 +1,9 @@
+# Renaming these files requires that the LIBRARY entry of their corresponding
+# def files are also updated to reflect the name.
+# The .def files are found in the angle directories:
+#
+# qtbase\src\3rdparty\angle\src\libEGL\libEGL[d?].def
+# qtbase\src\3rdparty\angle\src\libEGL\libGLESv2[d?].def
+
+LIBEGL_NAME="libEGL"
+LIBGLESV2_NAME="libGLESv2"
diff --git a/mkspecs/common/msvc-base.conf b/mkspecs/common/msvc-base.conf
new file mode 100644
index 0000000000..5bd144faa0
--- /dev/null
+++ b/mkspecs/common/msvc-base.conf
@@ -0,0 +1,56 @@
+#
+# qmake configuration for Microsoft Visual Studio C/C++ Compiler
+# This mkspec is used for all win32-msvcXXXX, winrt-XXX-msvcXXX
+# and winphone-XXX-msvcXXX specs
+#
+
+#
+# Version-specific changes
+#
+
+greaterThan(MSC_VER, 1499) {
+ # Visual Studio 2008 (9.0) / Visual C++ 15.0 and up
+ QMAKE_CFLAGS_MP = -MP
+ QMAKE_CXXFLAGS_MP = $$QMAKE_CFLAGS_MP
+}
+
+greaterThan(MSC_VER, 1599) {
+ # Visual Studio 2010 (10.0) / Visual C++ 16.0 and up
+ MAKEFILE_GENERATOR = MSBUILD
+
+ QMAKE_CFLAGS_AVX = -arch:AVX
+ QMAKE_CFLAGS_AVX2 = -arch:AVX
+
+ VCPROJ_EXTENSION = .vcxproj
+}
+
+greaterThan(MSC_VER, 1699) {
+ # Visual Studio 2012 (11.0) / Visual C++ 17.0 and up
+ QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -D_HAS_EXCEPTIONS=0
+ QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE@QMAKE_SUBSYSTEM_SUFFIX@
+ QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS@QMAKE_SUBSYSTEM_SUFFIX@
+ QT_CONFIG += c++11
+ CONFIG += c++11
+}
+
+greaterThan(MSC_VER, 1799) {
+ # Visual Studio 2013 (12.0) / Visual C++ 18.0 and up
+ QMAKE_CFLAGS += -FS
+ QMAKE_CXXFLAGS += -FS
+
+ equals(MSC_VER, 1800) {
+ QMAKE_CFLAGS_RELEASE += -Zc:strictStrings
+ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
+ QMAKE_CXXFLAGS_RELEASE += -Zc:strictStrings
+ QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
+ }
+}
+
+greaterThan(MSC_VER, 1899) {
+ # Visual Studio 2015 (14.0) / Visual C++ 19.0 and up
+ QMAKE_CFLAGS += -Zc:strictStrings
+ QMAKE_CFLAGS_WARN_ON += -w44456 -w44457 -w44458
+ QMAKE_CFLAGS_AVX2 = -arch:AVX2
+ QMAKE_CXXFLAGS += -Zc:strictStrings -Zc:throwingNew
+ QMAKE_CXXFLAGS_WARN_ON += -w44456 -w44457 -w44458 -wd4577
+}
diff --git a/mkspecs/common/msvc-desktop.conf b/mkspecs/common/msvc-desktop.conf
index a1c436388c..eec9e1f688 100644
--- a/mkspecs/common/msvc-desktop.conf
+++ b/mkspecs/common/msvc-desktop.conf
@@ -9,6 +9,8 @@ isEmpty(MSC_VER)|isEmpty(MSVC_VER): error("Source mkspec must set both MSC_VER a
# Baseline: Visual Studio 2005 (8.0), VC++ 14.0
#
+include(angle.conf)
+
MAKEFILE_GENERATOR = MSVC.NET
QMAKE_PLATFORM = win32
QMAKE_COMPILER = msvc
@@ -83,8 +85,8 @@ QMAKE_LIBS_CORE = kernel32.lib user32.lib shell32.lib uuid.lib ole32.lib
QMAKE_LIBS_GUI = gdi32.lib comdlg32.lib oleaut32.lib imm32.lib winmm.lib ws2_32.lib ole32.lib user32.lib advapi32.lib
QMAKE_LIBS_NETWORK = ws2_32.lib
QMAKE_LIBS_OPENGL = glu32.lib opengl32.lib gdi32.lib user32.lib
-QMAKE_LIBS_OPENGL_ES2 = libEGL.lib libGLESv2.lib gdi32.lib user32.lib
-QMAKE_LIBS_OPENGL_ES2_DEBUG = libEGLd.lib libGLESv2d.lib gdi32.lib user32.lib
+QMAKE_LIBS_OPENGL_ES2 = $${LIBEGL_NAME}.lib $${LIBGLESV2_NAME}.lib gdi32.lib user32.lib
+QMAKE_LIBS_OPENGL_ES2_DEBUG = $${LIBEGL_NAME}d.lib $${LIBGLESV2_NAME}d.lib gdi32.lib user32.lib
QMAKE_LIBS_COMPAT = advapi32.lib shell32.lib comdlg32.lib user32.lib gdi32.lib ws2_32.lib
QMAKE_LIBS_QT_ENTRY = -lqtmain
@@ -97,54 +99,6 @@ VCPROJ_EXTENSION = .vcproj
VCSOLUTION_EXTENSION = .sln
VCPROJ_KEYWORD = Qt4VSv1.0
-#
-# Version-specific changes
-#
-greaterThan(MSC_VER, 1499) {
- # Visual Studio 2008 (9.0) / Visual C++ 15.0 and up
- QMAKE_CFLAGS_MP = -MP
- QMAKE_CXXFLAGS_MP = $$QMAKE_CFLAGS_MP
-}
-
-greaterThan(MSC_VER, 1599) {
- # Visual Studio 2010 (10.0) / Visual C++ 16.0 and up
- MAKEFILE_GENERATOR = MSBUILD
-
- QMAKE_CFLAGS_AVX = -arch:AVX
- QMAKE_CFLAGS_AVX2 = -arch:AVX
-
- VCPROJ_EXTENSION = .vcxproj
-}
-
-greaterThan(MSC_VER, 1699) {
- # Visual Studio 2012 (11.0) / Visual C++ 17.0 and up
- QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -D_HAS_EXCEPTIONS=0
- QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE@QMAKE_SUBSYSTEM_SUFFIX@
- QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS@QMAKE_SUBSYSTEM_SUFFIX@
- QT_CONFIG += c++11
- CONFIG += c++11
-}
-
-greaterThan(MSC_VER, 1799) {
- # Visual Studio 2013 (12.0) / Visual C++ 18.0 and up
- QMAKE_CFLAGS += -FS
- QMAKE_CXXFLAGS += -FS
-
- equals(MSC_VER, 1800) {
- QMAKE_CFLAGS_RELEASE += -Zc:strictStrings
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
- QMAKE_CXXFLAGS_RELEASE += -Zc:strictStrings
- QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
- }
-}
-
-greaterThan(MSC_VER, 1899) {
- # Visual Studio 2015 (14.0) / Visual C++ 19.0 and up
- QMAKE_CFLAGS += -Zc:strictStrings
- QMAKE_CFLAGS_WARN_ON += -w44456 -w44457 -w44458
- QMAKE_CFLAGS_AVX2 = -arch:AVX2
- QMAKE_CXXFLAGS += -Zc:strictStrings -Zc:throwingNew
- QMAKE_CXXFLAGS_WARN_ON += -w44456 -w44457 -w44458 -wd4577
-}
+include(msvc-base.conf)
unset(MSC_VER)
diff --git a/mkspecs/common/wince/qmake.conf b/mkspecs/common/wince/qmake.conf
index 224c350e2f..fa1a72a1b9 100644
--- a/mkspecs/common/wince/qmake.conf
+++ b/mkspecs/common/wince/qmake.conf
@@ -2,6 +2,8 @@
# qmake configuration for common Windows CE
#
+include(../angle.conf)
+
MAKEFILE_GENERATOR = MSVC.NET
QMAKE_PLATFORM += wince win32
CONFIG += incremental flat precompile_header autogen_precompile_source debug_and_release debug_and_release_target
@@ -67,8 +69,8 @@ QMAKE_EXTENSION_SHLIB = dll
QMAKE_PREFIX_STATICLIB =
QMAKE_EXTENSION_STATICLIB = lib
-QMAKE_LIBS_EGL = libEGL.lib
-QMAKE_LIBS_OPENGL_ES2 = libGLESv2.lib
+QMAKE_LIBS_EGL = $${LIBEGL_NAME}.lib
+QMAKE_LIBS_OPENGL_ES2 = $${LIBGLESV2_NAME}.lib
QMAKE_LIBS_QT_ENTRY = -lqtmain
diff --git a/mkspecs/common/winrt_winphone/qmake.conf b/mkspecs/common/winrt_winphone/qmake.conf
index 288043da88..bf237882ff 100644
--- a/mkspecs/common/winrt_winphone/qmake.conf
+++ b/mkspecs/common/winrt_winphone/qmake.conf
@@ -4,6 +4,8 @@
# Written for Microsoft Visual C++
#
+include(../angle.conf)
+
MAKEFILE_GENERATOR = MSBUILD
QMAKE_COMPILER = msvc
QMAKE_PLATFORM = winrt win32
@@ -79,8 +81,8 @@ QMAKE_LIBS += runtimeobject.lib
QMAKE_LIBS_CORE =
QMAKE_LIBS_GUI =
QMAKE_LIBS_NETWORK =
-QMAKE_LIBS_OPENGL_ES2 = libEGL.lib libGLESv2.lib
-QMAKE_LIBS_OPENGL_ES2_DEBUG = libEGLd.lib libGLESv2d.lib
+QMAKE_LIBS_OPENGL_ES2 = $${LIBEGL_NAME}.lib $${LIBGLESV2_NAME}.lib
+QMAKE_LIBS_OPENGL_ES2_DEBUG = $${LIBEGL_NAME}d.lib $${LIBGLESV2_NAME}d.lib
QMAKE_LIBS_QT_ENTRY = -lqtmain
@@ -92,4 +94,9 @@ VCPROJ_EXTENSION = .vcxproj
VCSOLUTION_EXTENSION = .sln
VCPROJ_KEYWORD = Qt4VSv1.0
WINRT_ASSETS_PATH = $$PWD/assets
+
+include(../msvc-base.conf)
+
+unset(MSC_VER)
+
load(qt_config)
diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf
index 9163ac30b2..1848f00e90 100644
--- a/mkspecs/features/qt_build_paths.prf
+++ b/mkspecs/features/qt_build_paths.prf
@@ -20,10 +20,9 @@ isEmpty(MODULE_QMAKE_OUTDIR): MODULE_QMAKE_OUTDIR = $$MODULE_BASE_OUTDIR
exists($$MODULE_BASE_INDIR/.git): \
CONFIG += git_build
-!prefix_build {
- QTDIR = $$[QT_HOST_PREFIX]
- # Permit modules to enforce being built outside QTDIR ...
- !force_independent: MODULE_BASE_OUTDIR = $$QTDIR
- # ... though this sort of breaks the idea.
- MODULE_QMAKE_OUTDIR = $$QTDIR
+!force_independent {
+ # If the module is not built independently, everything ends up in qtbase.
+ # This is the case in non-prefix builds, except for selected modules.
+ MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX]
+ MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX]
}
diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf
index e2e56c318f..9a4ed20af8 100644
--- a/mkspecs/features/qt_module.prf
+++ b/mkspecs/features/qt_module.prf
@@ -93,7 +93,7 @@ INCLUDEPATH *= $$eval(QT.$${MODULE}.includes) $$eval(QT.$${MODULE}_private.inclu
contains(QT_CONFIG, build_all):CONFIG += build_all
}
-linux*:QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
+QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
QT += $$QT_FOR_PRIVATE
unset(QT_FOR_PRIVATE)
diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf
index 63f491b9e5..73f1fb6201 100644
--- a/mkspecs/win32-g++/qmake.conf
+++ b/mkspecs/win32-g++/qmake.conf
@@ -8,6 +8,7 @@
#
load(device_config)
+include(../common/angle.conf)
MAKEFILE_GENERATOR = MINGW
QMAKE_PLATFORM = win32 mingw
@@ -98,8 +99,8 @@ QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32
QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lws2_32 -lole32 -luuid -luser32 -ladvapi32
QMAKE_LIBS_NETWORK = -lws2_32
QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2 = -llibEGL -llibGLESv2 -lgdi32 -luser32
-QMAKE_LIBS_OPENGL_ES2_DEBUG = -llibEGLd -llibGLESv2d -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2 = -l$${LIBEGL_NAME} -l$${LIBGLESV2_NAME} -lgdi32 -luser32
+QMAKE_LIBS_OPENGL_ES2_DEBUG = -l$${LIBEGL_NAME}d -l$${LIBGLESV2_NAME}d -lgdi32 -luser32
QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
diff --git a/mkspecs/wince70embedded-armv4i-msvc2008/qmake.conf b/mkspecs/wince70embedded-armv4i-msvc2008/qmake.conf
index 772a514b89..860fbc0e6a 100644
--- a/mkspecs/wince70embedded-armv4i-msvc2008/qmake.conf
+++ b/mkspecs/wince70embedded-armv4i-msvc2008/qmake.conf
@@ -21,7 +21,7 @@ QMAKE_LIBS_NETWORK = ws2.lib $$QMAKE_LIBS_GUI
QMAKE_LIBS_OPENGL =
QMAKE_LIBS_COMPAT =
QMAKE_LIBS_OPENVG = libopenvg.lib
-QMAKE_LIBS_OPENGL_ES2 = libEGL.lib libGLESv2.lib
+QMAKE_LIBS_OPENGL_ES2 = $${LIBEGL_NAME}.lib $${LIBGLESV2_NAME}.lib
QMAKE_RC = rc
diff --git a/mkspecs/wince80colibri-armv7-msvc2012/qmake.conf b/mkspecs/wince80colibri-armv7-msvc2012/qmake.conf
index 47c512bbda..ea86bc0071 100644
--- a/mkspecs/wince80colibri-armv7-msvc2012/qmake.conf
+++ b/mkspecs/wince80colibri-armv7-msvc2012/qmake.conf
@@ -36,7 +36,7 @@ QMAKE_LIBS_NETWORK = ws2.lib $$QMAKE_LIBS_GUI
QMAKE_LIBS_OPENGL =
QMAKE_LIBS_COMPAT =
QMAKE_LIBS_OPENVG =
-QMAKE_LIBS_OPENGL_ES2 = libEGL.lib libGLESv2.lib
+QMAKE_LIBS_OPENGL_ES2 = $${LIBEGL_NAME}.lib $${LIBGLESV2_NAME}.lib
QMAKE_LIBDIR_OPENGL_ES2 = $$(NV_WINCE_T2_PLAT)/lib/Test
QMAKE_INCDIR_EGL = $$(NV_WINCE_T2_PLAT)/include
QMAKE_LIBDIR_EGL = $$(NV_WINCE_T2_PLAT)/lib/Test
diff --git a/mkspecs/winrt-arm-msvc2015/qmake.conf b/mkspecs/winrt-arm-msvc2015/qmake.conf
index a5bb342456..7a9375246d 100644
--- a/mkspecs/winrt-arm-msvc2015/qmake.conf
+++ b/mkspecs/winrt-arm-msvc2015/qmake.conf
@@ -4,6 +4,7 @@
# Written for Microsoft Visual C++ 2015
#
+MSC_VER = 1900
include(../common/winrt_winphone/qmake.conf)
QMAKE_COMPILER_DEFINES += _MSC_VER=1900
DEFINES += WINAPI_FAMILY=WINAPI_FAMILY_PC_APP WINAPI_PARTITION_PHONE_APP=1 ARM __ARM__ __arm__
diff --git a/mkspecs/winrt-x64-msvc2015/qmake.conf b/mkspecs/winrt-x64-msvc2015/qmake.conf
index 5b82f79981..ca2dc88bf0 100644
--- a/mkspecs/winrt-x64-msvc2015/qmake.conf
+++ b/mkspecs/winrt-x64-msvc2015/qmake.conf
@@ -4,6 +4,7 @@
# Written for Microsoft Visual C++ 2015
#
+MSC_VER = 1900
include(../common/winrt_winphone/qmake.conf)
QMAKE_COMPILER_DEFINES += _MSC_VER=1900 _WIN32
DEFINES += WINAPI_FAMILY=WINAPI_FAMILY_PC_APP WINAPI_PARTITION_PHONE_APP=1 X64 __X64__ __x64__
diff --git a/mkspecs/winrt-x86-msvc2015/qmake.conf b/mkspecs/winrt-x86-msvc2015/qmake.conf
index bc7cf4118e..3b2681e93d 100644
--- a/mkspecs/winrt-x86-msvc2015/qmake.conf
+++ b/mkspecs/winrt-x86-msvc2015/qmake.conf
@@ -4,6 +4,7 @@
# Written for Microsoft Visual C++ 2015
#
+MSC_VER = 1900
include(../common/winrt_winphone/qmake.conf)
QMAKE_COMPILER_DEFINES += _MSC_VER=1900 _WIN32
DEFINES += WINAPI_FAMILY=WINAPI_FAMILY_PC_APP WINAPI_PARTITION_PHONE_APP=1 X86 __X86__ __x86__