]>
Commit | Line | Data |
---|---|---|
f1a1da6c A |
1 | // pthread kext build options |
2 | ||
a0619f9c A |
3 | SDKROOT = macosx.internal |
4 | SUPPORTED_PLATFORMS = macosx iphoneos appletvos watchos | |
5 | BUILD_VARIANTS = normal development kasan | |
2546420a A |
6 | |
7 | PTHREAD_VARIANT_ = $(CURRENT_VARIANT) | |
8 | PTHREAD_VARIANT_YES = development | |
9 | PTHREAD_VARIANT = $(PTHREAD_VARIANT_$(DEBUG)) | |
10 | ||
11 | VALID_ARCHS[sdk=macosx*] = $(NATIVE_ARCH_ACTUAL) | |
f1a1da6c | 12 | ARCHS = $(ARCHS_STANDARD_32_64_BIT) |
a0619f9c | 13 | |
f1a1da6c | 14 | INSTALL_PATH = $(SYSTEM_LIBRARY_DIR)/Extensions |
a0619f9c A |
15 | PRODUCT_NAME = pthread |
16 | WRAPPER_EXTENSION = kext | |
f1a1da6c A |
17 | MODULE_NAME = com.apple.kec.pthread |
18 | MODULE_START = pthread_start | |
19 | MODULE_STOP = pthread_stop | |
20 | MODULE_VERSION = 1.0.0d1 | |
a0619f9c | 21 | PRODUCT_BUNDLE_IDENTIFIER = ${MODULE_NAME} |
f1a1da6c | 22 | INFOPLIST_FILE = kern/pthread-Info.plist |
a0619f9c | 23 | |
f1a1da6c | 24 | ALWAYS_SEARCH_USER_PATHS = NO |
c1f56ec9 | 25 | SRCROOT_SEARCH_PATHS = $(SRCROOT)/private $(SRCROOT)/include $(SRCROOT) |
f1a1da6c | 26 | HEADER_SEARCH_PATHS = $(SDKROOT)/System/Library/Frameworks/Kernel.framework/PrivateHeaders $(SDKROOT)/System/Library/Frameworks/Kernel.framework/Headers $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders $(SDKROOT)/System/Library/Frameworks/System.framework/Headers $(SRCROOT_SEARCH_PATHS) |
c6e5f90c | 27 | GCC_C_LANGUAGE_STANDARD = gnu11 |
f1a1da6c A |
28 | CLANG_CXX_LANGUAGE_STANDARD = gnu++0x |
29 | CLANG_CXX_LIBRARY = libc++ | |
30 | GCC_PRECOMPILE_PREFIX_HEADER = YES | |
a0619f9c A |
31 | CODE_SIGN_IDENTITY = - |
32 | DEBUG_INFORMATION_FORMAT = dwarf-with-dsym | |
2546420a A |
33 | |
34 | GCC_OPTIMIZATION_LEVEL_normal = s | |
c6e5f90c | 35 | GCC_OPTIMIZATION_LEVEL_development = s |
2546420a A |
36 | GCC_OPTIMIZATION_LEVEL = $(GCC_OPTIMIZATION_LEVEL_$(PTHREAD_VARIANT)) |
37 | ||
a0619f9c | 38 | DEAD_CODE_STRIPPING = NO |
2546420a A |
39 | LLVM_LTO_normal = YES |
40 | LLVM_LTO_development = NO | |
a0619f9c | 41 | LLVM_LTO_kasan = NO |
2546420a A |
42 | LLVM_LTO = $(LLVM_LTO_$(PTHREAD_VARIANT)) |
43 | ||
214d78a2 | 44 | GCC_PREPROCESSOR_DEFINITIONS_kext = XNU_KERNEL_PRIVATE MACH_KERNEL_PRIVATE ABSOLUTETIME_SCALAR_TYPE NEEDS_SCHED_CALL_T __PTHREAD_EXPOSE_INTERNALS__ |
2546420a A |
45 | GCC_PREPROCESSOR_DEFINITIONS_kext_development = MACH_ASSERT DEBUG |
46 | GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS_kext) $(GCC_PREPROCESSOR_DEFINITIONS_kext_$(PTHREAD_VARIANT)) | |
f1a1da6c | 47 | |
a0619f9c A |
48 | OTHER_CFLAGS_kasan = -DKASAN=1 -fsanitize=address -mllvm -asan-globals-live-support -mllvm -asan-force-dynamic-shadow -fno-inline |
49 | ||
f1a1da6c A |
50 | GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES |
51 | GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES | |
52 | ||
53 | // Warnings | |
54 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES | |
55 | CLANG_WARN_EMPTY_BODY = YES | |
56 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES | |
57 | GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES | |
58 | GCC_WARN_ABOUT_MISSING_NEWLINE = YES | |
59 | GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES | |
60 | GCC_WARN_ABOUT_RETURN_TYPE = YES | |
61 | GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES | |
62 | GCC_WARN_SHADOW = YES | |
63 | GCC_WARN_SIGN_COMPARE = YES | |
64 | GCC_WARN_UNINITIALIZED_AUTOS = YES | |
65 | GCC_WARN_UNUSED_FUNCTION = YES | |
66 | GCC_WARN_UNUSED_LABEL = YES | |
67 | GCC_WARN_UNUSED_PARAMETER = YES | |
68 | GCC_WARN_UNUSED_VARIABLE = YES |