summaryrefslogtreecommitdiffstats
path: root/mkspecs/common/ios/clang.conf
blob: eb7b058c6b5f769a325279c3fd412d6db1e38e08 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#
# compiler settings for iOS clang compilers
#
# Depends on:
#
#   QMAKE_IOS_XCODE_VERSION - set in mkspecs/common/ios/versions.conf
#

# iOS 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
QMAKE_IOS_OBJ_CFLAGS    = -Wno-arc-abi -Wc++0x-extensions

# Device or simulator specific flags
*simulator* {
    QMAKE_IOS_CFLAGS   += -fexceptions -fasm-blocks
    QMAKE_IOS_OBJ_CFLAGS += -fobjc-abi-version=2 -fobjc-legacy-dispatch
}

# 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 -Wc++11-extensions
QMAKE_IOS_OBJ_CFLAGS += -Wno-deprecated-implementations -Wprotocol -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector

# Warn about unsupported (later than 4.5) Xcode versions
!lessThan(QMAKE_IOS_XCODE_VERSION, "4.6"): warning("The version of Xcode installed on this system is not recognised - custom compiler settings may be necessary")

# Set build flags
QMAKE_CFLAGS           += $$QMAKE_IOS_CFLAGS
QMAKE_CXXFLAGS         += $$QMAKE_IOS_CFLAGS $$QMAKE_IOS_CXXFLAGS
QMAKE_OBJECTIVE_CFLAGS += $$QMAKE_IOS_CFLAGS $$QMAKE_IOS_CXXFLAGS $$QMAKE_IOS_OBJ_CFLAGS

QMAKE_IOS_CFLAGS =
QMAKE_IOS_CXXFLAGS =
QMAKE_IOS_OBJ_CFLAGS =