summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/msvc-version.conf2
-rw-r--r--mkspecs/common/winrt_winphone/qmake.conf2
-rw-r--r--mkspecs/features/mac/mac.prf17
-rw-r--r--mkspecs/features/qt_common.prf9
-rw-r--r--mkspecs/features/toolchain.prf4
-rw-r--r--mkspecs/macx-ios-clang/qmake.conf2
-rw-r--r--mkspecs/win32-msvc/qplatformdefs.h2
7 files changed, 32 insertions, 6 deletions
diff --git a/mkspecs/common/msvc-version.conf b/mkspecs/common/msvc-version.conf
index c2e22f455a..395c0535a9 100644
--- a/mkspecs/common/msvc-version.conf
+++ b/mkspecs/common/msvc-version.conf
@@ -37,7 +37,7 @@ greaterThan(QMAKE_MSC_VER, 1699) {
# Visual Studio 2012 (11.0) / Visual C++ 17.0 and up
MSVC_VER = 11.0
COMPAT_MKSPEC = win32-msvc2012
- QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -D_HAS_EXCEPTIONS=0
+ QMAKE_CXXFLAGS_EXCEPTIONS_OFF = /wd4530 /wd4577
QT_CONFIG += c++11
CONFIG += c++11
}
diff --git a/mkspecs/common/winrt_winphone/qmake.conf b/mkspecs/common/winrt_winphone/qmake.conf
index 3c68b91bd8..8c1a767dfa 100644
--- a/mkspecs/common/winrt_winphone/qmake.conf
+++ b/mkspecs/common/winrt_winphone/qmake.conf
@@ -52,7 +52,7 @@ QMAKE_CXXFLAGS_STL_OFF =
QMAKE_CXXFLAGS_RTTI_ON = -GR
QMAKE_CXXFLAGS_RTTI_OFF =
QMAKE_CXXFLAGS_EXCEPTIONS_ON = -EHsc
-QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -D_HAS_EXCEPTIONS=0
+QMAKE_CXXFLAGS_EXCEPTIONS_OFF = /wd4530 /wd4577
QMAKE_INCDIR =
diff --git a/mkspecs/features/mac/mac.prf b/mkspecs/features/mac/mac.prf
new file mode 100644
index 0000000000..52f06ef773
--- /dev/null
+++ b/mkspecs/features/mac/mac.prf
@@ -0,0 +1,17 @@
+
+# Embed plist file via linker if we're not building a bundle
+!isEmpty(QMAKE_INFO_PLIST) {
+ add_plist = false
+ equals(TEMPLATE, lib) {
+ plugin:!plugin_bundle: \
+ add_plist = true
+ else: !plugin:!lib_bundle: \
+ add_plist = true
+ } else: equals(TEMPLATE, app) {
+ !app_bundle: \
+ add_plist = true
+ }
+
+ $$add_plist: \
+ QMAKE_LFLAGS += -Wl,-sectcreate,__TEXT,__info_plist,$$shell_quote($$QMAKE_INFO_PLIST)
+}
diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
index b8e397cda3..f4ae5bde80 100644
--- a/mkspecs/features/qt_common.prf
+++ b/mkspecs/features/qt_common.prf
@@ -58,6 +58,15 @@ clang {
clang_ver = $${QT_CLANG_MAJOR_VERSION}.$${QT_CLANG_MINOR_VERSION}
versionAtLeast(clang_ver, 3.5): \
QMAKE_CXXFLAGS_WARN_ON += -Wdate-time
+
+ # Clang/LLVM 5.0 and Xcode 9.0 introduced unguarded availability warnings.
+ # The same construct has been a hard error in Swift from the very beginning.
+ apple_ver = $${QT_APPLE_CLANG_MAJOR_VERSION}.$${QT_APPLE_CLANG_MINOR_VERSION}
+ darwin:if(versionAtLeast(clang_ver, 5.0)|versionAtLeast(apple_ver, 9.0)): \
+ QMAKE_CXXFLAGS_WARN_ON += \
+ -Werror=unguarded-availability \
+ -Werror=unguarded-availability-new \
+ -Werror=unsupported-availability-guard
} else: gcc:!intel_icc {
QMAKE_CXXFLAGS_WARN_ON += -Wvla
# GCC 5 introduced -Wdate-time
diff --git a/mkspecs/features/toolchain.prf b/mkspecs/features/toolchain.prf
index 35175f1744..7b6f48de72 100644
--- a/mkspecs/features/toolchain.prf
+++ b/mkspecs/features/toolchain.prf
@@ -120,7 +120,7 @@ isEmpty($${target_prefix}.INCDIRS) {
}
}
}
- !darwin:clang {
+ if(!darwin:clang)|intel_icc {
# Clang on a non-Apple system (that is, a system without ld64 -- say, with GNU ld
# or gold under Linux) will not print any library search path. Need to use another
# invocation with different options (which in turn doesn't print include search
@@ -205,7 +205,7 @@ isEmpty($${target_prefix}.COMPILER_MACROS) {
vars = $$qtVariablesFromGCC($$QMAKE_CXX)
}
for (v, vars) {
- isEmpty(v)|contains(v, $${LITERAL_HASH}.*): next()
+ contains(v, $${LITERAL_HASH}.*)|contains(v, " *"): next()
# Set both <varname> for the outer scope ...
eval($$v)
v ~= s/ .*//
diff --git a/mkspecs/macx-ios-clang/qmake.conf b/mkspecs/macx-ios-clang/qmake.conf
index fa315bb8ca..d58b9fcbe1 100644
--- a/mkspecs/macx-ios-clang/qmake.conf
+++ b/mkspecs/macx-ios-clang/qmake.conf
@@ -2,7 +2,7 @@
# qmake configuration for macx-ios-clang
#
-QMAKE_IOS_DEPLOYMENT_TARGET = 8.0
+QMAKE_IOS_DEPLOYMENT_TARGET = 10.0
# Universal target (iPhone and iPad)
QMAKE_APPLE_TARGETED_DEVICE_FAMILY = 1,2
diff --git a/mkspecs/win32-msvc/qplatformdefs.h b/mkspecs/win32-msvc/qplatformdefs.h
index 9573d18a40..de806985cb 100644
--- a/mkspecs/win32-msvc/qplatformdefs.h
+++ b/mkspecs/win32-msvc/qplatformdefs.h
@@ -48,7 +48,7 @@
// Get Qt defines/settings
-#include "qglobal.h"
+#include <QtCore/qglobal.h>
#define _POSIX_
#include <limits.h>