diff --git a/xcode/common-debug.xcconfig b/xcode/common-debug.xcconfig index 408f570a9b..fa6a1fa3b7 100644 --- a/xcode/common-debug.xcconfig +++ b/xcode/common-debug.xcconfig @@ -2,6 +2,8 @@ COPY_PHASE_STRIP = NO GCC_OPTIMIZATION_LEVEL = 0 +GCC_UNROLL_LOOPS = NO ENABLE_NS_ASSERTIONS = YES -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) DEBUG=1 +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) DEBUG _DEBUG MTL_ENABLE_DEBUG_INFO = YES +ENABLE_TESTABILITY = YES diff --git a/xcode/common-release.xcconfig b/xcode/common-release.xcconfig index d574ab8ee7..56aa329cc4 100644 --- a/xcode/common-release.xcconfig +++ b/xcode/common-release.xcconfig @@ -2,6 +2,8 @@ COPY_PHASE_STRIP = YES GCC_OPTIMIZATION_LEVEL = 3 +GCC_UNROLL_LOOPS = YES ENABLE_NS_ASSERTIONS = NO -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) RELEASE=1 +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) RELEASE _RELEASE NDEBUG OMIM_PRODUCTION MTL_ENABLE_DEBUG_INFO = NO +ENABLE_TESTABILITY = NO diff --git a/xcode/common.xcconfig b/xcode/common.xcconfig index 53ef61a36b..412ab8706d 100644 --- a/xcode/common.xcconfig +++ b/xcode/common.xcconfig @@ -1,12 +1,13 @@ // Paths OMIM_ROOT=$(PROJECT_DIR)/../.. -BUILD_DIR=$(OMIM_ROOT)/../omim-xcode-build +BUILD_DIR=$(OMIM_ROOT)/../omim-build/xcode QT_PATH=/usr/local/opt/qt5 BOOST_ROOT=$(OMIM_ROOT)/3party/boost HEADER_SEARCH_PATHS = $(inherited) $(OMIM_ROOT) $(BOOST_ROOT) LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/Frameworks FRAMEWORK_SEARCH_PATHS[sdk=macosx*] = $(QT_PATH)/lib +FRAMEWORK_SEARCH_PATHS[sdk=iphone*] = $(PROJECT_DIR)/Frameworks // Deployment target IPHONEOS_DEPLOYMENT_TARGET = 8.0 @@ -16,8 +17,8 @@ MACOSX_DEPLOYMENT_TARGET = 10.10 SUPPORTED_PLATFORMS = macosx iphonesimulator iphoneos // Linked frameworks -OTHER_LDFLAGS[sdk=macosx*] = -framework Cocoa -framework IOKit -framework OpenGL -framework QtCore -framework QtGui -framework QtNetwork -framework QtOpenGL -framework QtWidgets -framework SystemConfiguration -OTHER_LDFLAGS[sdk=iphone*] = -framework AdSupport -framework CoreGraphics -framework Foundation -framework IOKit -framework OpenGLES -framework SystemConfiguration -framework UIKit +OTHER_LDFLAGS[sdk=macosx*] = -framework Cocoa -framework IOKit -framework OpenGL -framework QtCore -framework QtGui -framework QtNetwork -framework QtOpenGL -framework QtWidgets -framework SystemConfiguration -framework CFNetwork +OTHER_LDFLAGS[sdk=iphone*] = -framework AdSupport -framework CoreGraphics -framework Foundation -framework IOKit -framework OpenGLES -framework SystemConfiguration -framework UIKit -framework CFNetwork // Warnings settings CLANG_WARN__DUPLICATE_METHOD_MATCH = YES @@ -28,7 +29,16 @@ CLANG_WARN_EMPTY_BODY = YES CLANG_WARN_ENUM_CONVERSION = YES CLANG_WARN_INT_CONVERSION = YES CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR +CLANG_WARN_SUSPICIOUS_MOVE = YES CLANG_WARN_UNREACHABLE_CODE = YES +CLANG_WARN_NULLABLE_TO_NONNULL_CONVERSION = YES +CLANG_WARN_INFINITE_RECURSION = YES +CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES +CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_EXPLICIT_OWNERSHIP_TYPE = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES GCC_WARN_64_TO_32_BIT_CONVERSION = YES GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR GCC_WARN_UNDECLARED_SELECTOR = YES @@ -40,9 +50,12 @@ GCC_WARN_UNUSED_VARIABLE = YES CLANG_CXX_LANGUAGE_STANDARD = c++0x CLANG_ENABLE_MODULES = YES CLANG_ENABLE_OBJC_ARC = YES +CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer -DEBUG_INFORMATION_FORMAT = dwarf-with-dsym +DEBUG_INFORMATION_FORMAT = dwarf ENABLE_STRICT_OBJC_MSGSEND = YES GCC_NO_COMMON_BLOCKS = YES +GCC_PRECOMPILE_PREFIX_HEADER = YES ONLY_ACTIVE_ARCH = YES +VALID_ARCHS = i386 x86_64 armv7 armv7s arm64 PRODUCT_NAME = $(TARGET_NAME)