summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_common.prf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features/qt_common.prf')
-rw-r--r--mkspecs/features/qt_common.prf165
1 files changed, 0 insertions, 165 deletions
diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
deleted file mode 100644
index f51b32660b..0000000000
--- a/mkspecs/features/qt_common.prf
+++ /dev/null
@@ -1,165 +0,0 @@
-#
-# W A R N I N G
-# -------------
-#
-# This file is not part of the Qt API. It exists purely as an
-# implementation detail. It may change from version to version
-# without notice, or even be removed.
-#
-# We mean it.
-#
-
-QMAKE_DIR_REPLACE_SANE += DESTDIR
-CONFIG -= debug_and_release_target
-
-DEFINES *= QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
-
-qtConfig(c++11): CONFIG += c++11 strict_c++
-qtConfig(c++14): CONFIG += c++14
-qtConfig(c++1z): CONFIG += c++1z
-qtConfig(c++2a): CONFIG += c++2a
-qtConfig(c99): CONFIG += c99
-qtConfig(c11): CONFIG += c11
-qtConfig(separate_debug_info): CONFIG += separate_debug_info
-qtConfig(stack-protector-strong): CONFIG += stack_protector_strong
-contains(TEMPLATE, .*lib) {
- # module and plugins
- unix:qtConfig(reduce_relocations): CONFIG += bsymbolic_functions
-}
-contains(TEMPLATE, .*lib)|contains(TEMPLATE, aux) {
- !isEmpty(_QMAKE_SUPER_CACHE_): \
- rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]*
- else: \
- rplbase = $$MODULE_BASE_OUTDIR
- host_build {
- qqt_libdir = \$\$\$\$[QT_HOST_LIBS]
- qt_libdir = $$[QT_HOST_LIBS]
- } else {
- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS]
- qt_libdir = $$[QT_INSTALL_LIBS]
- }
- contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) {
- lib_replace0.match = $$rplbase/lib/
- lib_replace0.replace = $$qqt_libdir/
- lib_replace0.CONFIG = path
- QMAKE_PRL_INSTALL_REPLACE += lib_replace0
- lib_replace.match = "[^ ']*$$rplbase/lib"
- lib_replace.replace =
- } else {
- lib_replace.match = $$rplbase/lib
- lib_replace.replace = $$qqt_libdir
- }
- lib_replace.CONFIG = path
- QMAKE_PRL_INSTALL_REPLACE += lib_replace
- !equals(qt_libdir, $$rplbase/lib) {
- qtlibdir_replace.match = $$qt_libdir
- qtlibdir_replace.replace = $$qqt_libdir
- qtlibdir_replace.CONFIG = path
- QMAKE_PRL_INSTALL_REPLACE += qtlibdir_replace
- }
-}
-contains(TEMPLATE, .*lib)|darwin {
- if(!host_build|!cross_compile):qtConfig(reduce_exports): CONFIG += hide_symbols
-}
-
-# Apple deprecated the entire OpenGL API in favor of Metal, which
-# we are aware of, so silence the deprecation warnings in code.
-# This does not apply to user-code, which will need to silence
-# their own warnings if they use the deprecated APIs explicitly.
-macos: DEFINES += GL_SILENCE_DEPRECATION
-uikit: DEFINES += GLES_SILENCE_DEPRECATION
-
-qtConfig(force_asserts): DEFINES += QT_FORCE_ASSERTS
-
-# The remainder of this file must not apply to host tools/libraries,
-# as the host compiler's version and capabilities are not checked.
-host_build:cross_compile: return()
-
-# Extra warnings for Qt non-example code, to ensure cleanliness of the sources.
-# The block below may turn these warnings into errors for some Qt targets.
-# -Wdate-time: warn if we use __DATE__ or __TIME__ (we want to be able to reproduce the exact same binary)
-# -Wvla: use of variable-length arrays (an extension to C++)
-clang {
- clang_ver = $${QT_CLANG_MAJOR_VERSION}.$${QT_CLANG_MINOR_VERSION}
- apple_ver = $${QT_APPLE_CLANG_MAJOR_VERSION}.$${QT_APPLE_CLANG_MINOR_VERSION}
- versionAtLeast(clang_ver, 3.5): \
- QMAKE_CXXFLAGS_WARN_ON += -Wdate-time
-
- versionAtLeast(clang_ver, 3.6)|versionAtLeast(apple_ver, 6.3): \
- QMAKE_CXXFLAGS_WARN_ON += -Winconsistent-missing-override
-
- darwin {
- QMAKE_CXXFLAGS_WARN_ON += \
- -Wobjc-interface-ivars \
- -Wobjc-method-access \
- -Wobjc-multiple-method-names
-
- # 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.
- 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 fixed -Wmissing-field-initializers for when there are no initializers
- lessThan(QT_GCC_MAJOR_VERSION, 5): QMAKE_CXXFLAGS_WARN_ON += -Wno-missing-field-initializers
- # GCC 5 introduced -Wdate-time
- greaterThan(QT_GCC_MAJOR_VERSION, 4): QMAKE_CXXFLAGS_WARN_ON += -Wdate-time
- # GCC 6 introduced these
- greaterThan(QT_GCC_MAJOR_VERSION, 5): QMAKE_CXXFLAGS_WARN_ON += -Wshift-overflow=2 -Wduplicated-cond
- # GCC 7 has a lot of false positives relating to this, so disable completely
- greaterThan(QT_GCC_MAJOR_VERSION, 6): QMAKE_CXXFLAGS_WARN_ON += -Wno-stringop-overflow
- # GCC 9 introduced -Wformat-overflow in -Wall, but it is buggy:
- greaterThan(QT_GCC_MAJOR_VERSION, 8): QMAKE_CXXFLAGS_WARN_ON += -Wno-format-overflow
- ver = $${QT_GCC_MAJOR_VERSION}.$${QT_GCC_MINOR_VERSION}
- versionAtLeast(ver, 9.2): QMAKE_CXXFLAGS_WARN_ON += -Wsuggest-override
-}
-
-warnings_are_errors:warning_clean {
- # If the module declares that it has does its clean-up of warnings, enable -Werror.
- # This setting is compiler-dependent anyway because it depends on the version of the
- # compiler.
- clang {
- # Apple clang 4.0-4.2,5.0-5.1,6.0-6.4,7.0-7.3,8.0-8.3,9.0-9.2
- # Regular clang 3.x-7.0
- apple_ver = $${QT_APPLE_CLANG_MAJOR_VERSION}.$${QT_APPLE_CLANG_MINOR_VERSION}
- reg_ver = $${QT_CLANG_MAJOR_VERSION}.$${QT_CLANG_MINOR_VERSION}
- contains(apple_ver, "4\\.[012]|5\\.[01]|6\\.[01234]|7\\.[0123]|8\\.[0123]|9\\.[012]")|contains(reg_ver, "[345]\\.|[67]\\.0") {
- QMAKE_CXXFLAGS_WARN_ON += -Werror -Wno-error=\\$${LITERAL_HASH}warnings -Wno-error=deprecated-declarations $$WERROR
- }
- } else:intel_icc:linux {
- # Intel CC 13.0 - 18.0, on Linux only
- ver = $${QT_ICC_MAJOR_VERSION}.$${QT_ICC_MINOR_VERSION}
- linux:contains(ver, "(1[345678]\\.|19\\.0)") {
- # 177: function "entity" was declared but never referenced
- # (too aggressive; ICC reports even for functions created due to template instantiation)
- # 1224: #warning directive
- # 1478: function "entity" (declared at line N) was declared deprecated
- # 1786: function "entity" (declared at line N of "file") was declared deprecated ("message")
- # 1881: argument must be a constant null pointer value
- # (NULL in C++ is usually a literal 0)
- QMAKE_CXXFLAGS_WARN_ON += -Werror -ww177,1224,1478,1786,1881 $$WERROR
- }
- } else:gcc:!clang:!intel_icc:!rim_qcc {
- # GCC 4.6-4.9, 5.x, ...
- ver = $${QT_GCC_MAJOR_VERSION}.$${QT_GCC_MINOR_VERSION}
- contains(ver, "(4\\.[6789]|[5-9]\\..)") {
- QMAKE_CXXFLAGS_WARN_ON += -Werror -Wno-error=cpp -Wno-error=deprecated-declarations $$WERROR
-
- # GCC prints this bogus warning, after it has inlined a lot of code
- # error: assuming signed overflow does not occur when assuming that (X + c) < X is always false
- QMAKE_CXXFLAGS_WARN_ON += -Wno-error=strict-overflow
-
- # Work-around for bug https://code.google.com/p/android/issues/detail?id=58135
- android: QMAKE_CXXFLAGS_WARN_ON += -Wno-error=literal-suffix
- }
- } else:msvc:!intel_icl {
- # enable for MSVC 2015, MSVC 2017
- contains(MSVC_VER, "1[45].0"): QMAKE_CXXFLAGS_WARN_ON += -WX
- }
- unset(ver)
-}
-