diff options
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/common/msvc-version.conf | 2 | ||||
-rw-r--r-- | mkspecs/common/winrt_winphone/qmake.conf | 2 | ||||
-rw-r--r-- | mkspecs/features/mac/mac.prf | 17 | ||||
-rw-r--r-- | mkspecs/features/qt_common.prf | 9 | ||||
-rw-r--r-- | mkspecs/features/toolchain.prf | 4 | ||||
-rw-r--r-- | mkspecs/macx-ios-clang/qmake.conf | 2 | ||||
-rw-r--r-- | mkspecs/win32-msvc/qplatformdefs.h | 2 |
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> |