Loading...
--- libmalloc/libmalloc-67.40.1/xcodeconfig/libmalloc.xcconfig
+++ libmalloc/libmalloc-140.1.1/xcodeconfig/libmalloc.xcconfig
@@ -1,44 +1,71 @@
#include "<DEVELOPER_DIR>/Makefiles/CoreOS/Xcode/BSD.xcconfig"
-DEAD_CODE_STRIPPING = NO
-
+SDKROOT = macosx.internal
SUPPORTED_PLATFORMS = macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator
BUILD_VARIANTS = normal debug
-OTHER_CFLAGS = -fdollars-in-identifiers -fno-common
-OTHER_CFLAGS_debug = -fstack-protector -fno-inline -O0 -DDEBUG=1
+PRODUCT_NAME = libsystem_malloc
+INSTALL_PATH = /usr/lib/system
+PUBLIC_HEADERS_FOLDER_PATH = /usr/include/malloc
+PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include
+SYSTEM_FRAMEWORK_HEADERS = $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
+HEADER_SEARCH_PATHS = $(DERIVED_FILES_DIR)/dtrace $(SRCROOT)/include $(SYSTEM_FRAMEWORK_HEADERS) $(SDKROOT)/usr/local/include $(inherited)
+
+GCC_PREPROCESSOR_DEFINITIONS = _FORTIFY_SOURCE=0 NDEBUG $(OSATOMIC_PREPROCESSOR_DEFINITIONS)
+OSATOMIC_PREPROCESSOR_DEFINITIONS = OSATOMIC_USE_INLINED=1 OS_UNFAIR_LOCK_INLINE=1
+OSATOMIC_PREPROCESSOR_DEFINITIONS_NOINLINE = OSATOMIC_DEPRECATED=0 OSATOMIC_USE_INLINED=0 OS_UNFAIR_LOCK_INLINE=0
+
+GCC_NO_COMMON_BLOCKS = YES
+ENABLE_STRICT_OBJC_MSGSEND = YES
+
+// TODO: Add -fno-stack-protector when uplink to Libc is removed
+OTHER_CFLAGS = $(PLATFORM_CFLAGS)
+OTHER_CFLAGS_normal = -momit-leaf-frame-pointer
+OTHER_CFLAGS_debug = -fstack-protector -fno-inline -O0 -DDEBUG=1 -UNDEBUG
+
+GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES
//GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES
GCC_WARN_UNUSED_FUNCTION = YES
GCC_WARN_UNUSED_LABEL = YES
//GCC_WARN_UNUSED_PARAMETER = YES
GCC_WARN_UNUSED_VALUE = YES
GCC_WARN_UNUSED_VARIABLE = YES
+GCC_WARN_64_TO_32_BIT_CONVERSION = YES
+GCC_WARN_ABOUT_RETURN_TYPE = YES
+GCC_WARN_UNDECLARED_SELECTOR = YES
+GCC_WARN_UNINITIALIZED_AUTOS = YES
+CLANG_WARN_BOOL_CONVERSION = YES
+CLANG_WARN_CONSTANT_CONVERSION = YES
+CLANG_WARN_EMPTY_BODY = YES
+CLANG_WARN_ENUM_CONVERSION = YES
+CLANG_WARN_INFINITE_RECURSION = YES
+CLANG_WARN_INT_CONVERSION = YES
+CLANG_WARN_SUSPICIOUS_MOVE = YES
+CLANG_WARN_UNREACHABLE_CODE = YES
+CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
+
+// clang doesn't understand the simple_printf %y specifier
+WARNING_CFLAGS = -Wno-format-invalid-specifier -Wno-format-extra-args
+
+LLVM_LTO = YES
+DEAD_CODE_STRIPPING = NO
SIM_SUFFIX[sdk=*simulator*] = _sim
-
LINK_WITH_STANDARD_LIBRARIES = NO
-OTHER_LDFLAGS = -all_load -L/usr/lib/system -umbrella System $(CR_LDFLAGS) $(LIBCOMPILER_RT_LDFLAGS) $(LIBDYLD_LDFLAGS) $(LIBSYSCALL_LDFLAGS) $(LIBPLATFORM_LDFLAGS) $(UPLINK_LDFLAGS)
-
-CR_LDFLAGS = -lCrashReporterClient
+OTHER_LDFLAGS = -all_load -L/usr/lib/system -umbrella System $(CR_LDFLAGS) $(LIBCOMPILER_RT_LDFLAGS) $(LIBDYLD_LDFLAGS) $(LIBSYSCALL_LDFLAGS) $(LIBPLATFORM_LDFLAGS) $(UPLINK_LDFLAGS) $(INTERPOSE_LDFLAGS)
LIBCOMPILER_RT_LDFLAGS = -lcompiler_rt
LIBPLATFORM_LDFLAGS = -lsystem$(SIM_SUFFIX)_platform
LIBSYSCALL_LDFLAGS = -lsystem$(SIM_SUFFIX)_kernel
LIBDYLD_LDFLAGS = -ldyld
-// TODO: Eliminate the crosslink between libmalloc and Libc (stdio for stack logging, spinlocks)
+// TODO: Eliminate the crosslink between libmalloc and Libc (13046853)
UPLINK_LDFLAGS = -Wl,-upward-lsystem_c
+
+INTERPOSE_LDFLAGS = -Wl,-interposable_list,$(SRCROOT)/xcodeconfig/interposable.list
ORDER_FILE = $(SDKROOT)/$(APPLE_INTERNAL_DIR)/OrderFiles/$(PRODUCT_NAME).order
ORDER_FILE[sdk=*simulator*] =
DYLIB_CURRENT_VERSION = $(CURRENT_PROJECT_VERSION)
-PRODUCT_NAME = libsystem_malloc
-PUBLIC_HEADERS_FOLDER_PATH = /usr/include/malloc
-PRIVATE_HEADERS_FOLDER_PATH = /usr/local/include
-
-INSTALL_PATH = /usr/lib/system
-
-SYSTEM_FRAMEWORK_HEADERS = $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
-HEADER_SEARCH_PATHS = $(DERIVED_FILES_DIR)/dtrace $(SRCROOT)/include $(SYSTEM_FRAMEWORK_HEADERS) $(SDKROOT)/usr/local/include $(inherited)