Remove unnecessary compiler and warning flags from UIKit mkspecs
All of these flags were blindly copied from Xcode and all of them are not needed because they are unnecessary or at the very least are for no reason specific to iOS/tvOS/watchOS. * -fvisibility=hidden, -fvisibility-inlines-hidden - handled in common/gcc-base.conf * -fpascal-strings - a Mac OS Classic legacy, no one uses these * -fmessage-length=0 - formatting option, not needed * -fexceptions, -fasm-blocks - these are on by default and not needed All explicitly enabled warnings are enabled by -Wall, which is handled in common/gcc-base.conf. All explicitly disabled warnings should not be disabled because we simply do not do this anywhere else in qmake. Change-Id: Ifb9b2ff100837c7cf5888493a6413c972609598d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
This commit is contained in:
parent
b5dd4bff48
commit
b012f55017
@ -2,28 +2,6 @@
|
||||
# compiler settings for iOS/tvOS/watchOS clang compilers
|
||||
#
|
||||
|
||||
# build flags
|
||||
QMAKE_IOS_CFLAGS += -fvisibility=hidden -fpascal-strings -fmessage-length=0
|
||||
QMAKE_IOS_CFLAGS += -Wno-trigraphs -Wreturn-type -Wparentheses -Wswitch -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-shorten-64-to-32 -Wno-sign-conversion
|
||||
QMAKE_IOS_CXXFLAGS += -fvisibility-inlines-hidden
|
||||
|
||||
# Based on the following information, http://clang.llvm.org/doxygen/ObjCRuntime_8h_source.html,
|
||||
# we can conclude that it's safe to always pass the following flags
|
||||
QMAKE_IOS_OBJ_CFLAGS += -fobjc-nonfragile-abi -fobjc-legacy-dispatch
|
||||
|
||||
# But these only apply to non-ARM targets
|
||||
!contains(QT_ARCH, arm): QMAKE_IOS_CFLAGS += -fexceptions -fasm-blocks
|
||||
|
||||
# Clang 3.1 (and above) flags
|
||||
QMAKE_IOS_CFLAGS += -Wno-missing-field-initializers -Wno-missing-prototypes -Wno-implicit-atomic-properties -Wformat -Wno-missing-braces -Wno-unused-function -Wno-unused-label -Wuninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-sign-compare -Wpointer-sign -Wno-newline-eof -Wdeprecated-declarations -Winvalid-offsetof -Wno-conversion
|
||||
QMAKE_IOS_CXXFLAGS += -Wno-non-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors
|
||||
QMAKE_IOS_OBJ_CFLAGS += -Wno-deprecated-implementations -Wprotocol -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector
|
||||
|
||||
# Set build flags
|
||||
QMAKE_CFLAGS += $$QMAKE_IOS_CFLAGS
|
||||
QMAKE_CXXFLAGS += $$QMAKE_IOS_CFLAGS $$QMAKE_IOS_CXXFLAGS
|
||||
QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_IOS_OBJ_CFLAGS
|
||||
|
||||
QMAKE_IOS_CFLAGS =
|
||||
QMAKE_IOS_CXXFLAGS =
|
||||
QMAKE_IOS_OBJ_CFLAGS =
|
||||
QMAKE_OBJECTIVE_CFLAGS += -fobjc-nonfragile-abi -fobjc-legacy-dispatch
|
||||
|
Loading…
Reference in New Issue
Block a user