]> git.saurik.com Git - apple/system_cmds.git/blame - xcconfigs/base.xcconfig
system_cmds-880.100.5.tar.gz
[apple/system_cmds.git] / xcconfigs / base.xcconfig
CommitLineData
cf37c299
A
1#include "<DEVELOPER_DIR>/Makefiles/CoreOS/Xcode/BSD.xcconfig"
2#include "<DEVELOPER_DIR>/AppleInternal/XcodeConfig/PlatformSupport.xcconfig"
3
4XPC_BUILD_FILES_DIR = $(PROJECT_DIR)/xcfiles
5XPC_BUILD_XCSCRIPTS_DIR = $(PROJECT_DIR)/xcscripts
6XPC_BUILD_XCCONFIG_DIR = $(PROJECT_DIR)/xcconfig
7
8XPC_BUILD_HEADER_SEARCH_PATHS = $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders $(PROJECT_DIR)/src $(PROJECT_DIR)/interface $(PROJECT_DIR)/launch $(PROJECT_DIR)/support $(PROJECT_DIR)/development $(PROJECT_DIR)
9
10XPC_ALL_THE_DEBUGS2 =
11XPC_ALL_THE_DEBUGS2_yes = -O0 -g -fno-inline -fno-limit-debug-info
12
13XPC_COMPATIBILITY_DEFINES_currentmajor = -DHAVE_KDEBUG_TRACE=1 -DCONFIG_EMULATE_XNU_INITPROC_SELECTION=0 -DHAVE_GALARCH_AVAILABILITY=1
14XPC_COMPATIBILITY_DEFINES_lastmajor = -DHAVE_KDEBUG_TRACE=0 -DCONFIG_EMULATE_XNU_INITPROC_SELECTION=1 -DHAVE_GALARCH_AVAILABILITY=0
15XPC_BUILD_HOST = currentmajor
16
17XPC_BUILD_EXPORT_DEFAULTS = -DXPC_PROJECT_EXPORT=XPC_EXPORT -DXPC_DEBUGEXPORT=XPC_NOEXPORT -DXPC_TESTEXPORT=XPC_NOEXPORT
18XPC_BUILD_OTHER_CFLAGS = $(XPC_ALL_THE_DEBUGS2_$(XPC_ALL_THE_DEBUGS)) $(XPC_COMPATIBILITY_DEFINES_$(XPC_BUILD_HOST)) -D__XPC_PROJECT_BUILD__=1
19
20XPC_CRASHREPORTCLIENT_LDFLAGS = -lCrashReporterClient
21
22XPC_NOSTRIP = no
23XPC_NOSTRIP2_no = YES
24XPC_NOSTRIP2_yes = NO
25
26// Building.
27ARCHS = $(ARCHS_STANDARD)
28ONLY_ACTIVE_ARCH = NO
29GCC_C_LANGUAGE_STANDARD = gnu99
30GCC_WARN_ABOUT_RETURN_TYPE = YES
31GCC_WARN_UNUSED_FUNCTION = YES
32GCC_WARN_UNUSED_VARIABLE = YES
33GCC_TREAT_WARNINGS_AS_ERRORS = YES
34GCC_SYMBOLS_PRIVATE_EXTERN = YES
35GCC_ENABLE_OBJC_GC = unsupported
36GCC_ENABLE_BUILTIN_FUNCTIONS = YES
37GCC_WARN_UNINITIALIZED_AUTOS = YES
38GCC_WARN_64_TO_32_BIT_CONVERSION = YES
39GCC_WARN_ABOUT_RETURN_TYPE = YES
40GCC_WARN_UNINITIALIZED_AUTOS = YES
41GCC_WARN_UNUSED_VARIABLE = YES
42
43CLANG_WARN_CONSTANT_CONVERSION = YES
44CLANG_WARN_INT_CONVERSION = YES
45CLANG_WARN_EMPTY_BODY = YES
46CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES
47DEBUG_INFORMATION_FORMAT = dwarf-with-dsym
48
49OTHER_CFLAGS = $(XPC_BUILD_OTHER_CFLAGS)
50
51// We pretty much want to avoid anything having to do with Xcode's default
52// header search behavior.
53ALWAYS_SEARCH_USER_PATHS = NO
54USE_HEADERMAP = NO
55HEADER_SEARCH_PATHS = $(XPC_BUILD_HEADER_SEARCH_PATHS)
56
57// Deployment and linking.
58// By default, clang will link any binary using Objective-C against Foundation.
59// We need to opt out of this to avoid a layering inversion.
60//
61// <rdar://problem/11075809>
62CLANG_LINK_OBJC_RUNTIME = NO
63CLANG_MODULES_AUTOLINK = NO
64
65DYLIB_CURRENT_VERSION = $(RC_ProjectSourceVersion)
66DYLIB_COMPATIBILITY_VERSION = 1
67DEPLOYMENT_LOCATION = YES
68
69// Preprocessing the Info.plist sends it through the C preprocessor. You cannot
70// use both of these options together, since they emit different files to
71// different places. I'm putting them here mostly just so I don't forget what
72// they're called in case we do want to start using them in the future.
73INFOPLIST_PREPROCESS = NO
74INFOPLIST_EXPAND_BUILD_SETTINGS = NO
75
76// SEPARATE_STRIP will tell the linker to not strip the emitted binary. Instead,
77// the strip will happen as a separate invocation of the strip(1) tool, leaving
78// the binaries in our OBJROOT untouched but stripping the ones that go into the
79// DSTROOT and SYMROOT. INSTALLED_PRODUCT_ASIDES makes it so that the stuff in
80// the SYMROOT is not just symlinked into the DSTROOT, which lets us preserve
81// the symbols for the stuff in there.
82STRIP_INSTALLED_PRODUCT = $(XPC_NOSTRIP2_$(XPC_NOSTRIP))
83
84// STRIP_INSTALLED_PRODUCT does not appear to be respected on a per-variant
85// basis, so this does nothing.
86STRIP_INSTALLED_PRODUCT_debug = NO
87INSTALLED_PRODUCT_ASIDES = YES
88SEPARATE_STRIP = YES