Loading...
#include "base.xcconfig" LIBSYSTEM_LIBS[sdk=*simulator*] = -Wl,-no_warn_unused_dylibs -Wl,-upward-lsystem_sim_platform -Wl,-upward-lsystem_malloc -Wl,-upward-lsystem_c -Wl,-upward-lsystem_sim_pthread -Wl,-upward-lxpc -Wl,-upward-lsystem_blocks -Wl,-upward-lsystem_sim_kernel -Wl,-upward-ldispatch LIBSYSTEM_LIBS[sdk=embedded*] = -Wl,-no_warn_unused_dylibs -Wl,-upward-lsystem_platform -Wl,-upward-lsystem_malloc -Wl,-upward-lsystem_c -Wl,-upward-lsystem_pthread -Wl,-upward-lxpc -Wl,-upward-lsystem_blocks -Wl,-upward-lsystem_kernel -Wl,-upward-ldispatch -Wl,-upward-lcompiler_rt LIBSYSTEM_LIBS[sdk=macosx*] = -Wl,-no_warn_unused_dylibs -Wl,-upward-lsystem_platform -Wl,-upward-lsystem_malloc -Wl,-upward-lsystem_c -Wl,-upward-lsystem_pthread -Wl,-upward-lxpc -Wl,-upward-lsystem_blocks -Wl,-upward-lsystem_kernel -Wl,-upward-ldispatch -Wl,-upward-lcompiler_rt LIBSYSTEM_LIBS[sdk=driverkit*] = -Wl,-no_warn_unused_dylibs -Wl,-upward-lsystem_platform -Wl,-upward-lsystem_malloc -Wl,-upward-lsystem_c -Wl,-upward-lsystem_pthread -Wl,-upward-lsystem_kernel LIBSYSTEM_LIBS[sdk=exclavekit*] = -Wl,-no_warn_unused_dylibs -Wl,-upward-llibc -Wl,-upward-lsystem_malloc INSTALL_PATH = $(SYSTEM_PREFIX)/usr/lib/system // Disable building the _asan variant for dyld on ExclaveKit BUILD_VARIANTS[sdk=exclavekit*] = normal GCC_PREPROCESSOR_DEFINITIONS_Release = GCC_PREPROCESSOR_DEFINITIONS_Debug = DEBUG=1 GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS_$(CONFIGURATION)) BUILDING_LIBDYLD=1 GCC_PREPROCESSOR_DEFINITIONS[sdk=exclavekit*] = $(GCC_PREPROCESSOR_DEFINITIONS_$(CONFIGURATION)) BUILDING_LIBDYLD=1 L4_CONFIG_PLAT_EVP=1 SYSTEM_HEADER_SEARCH_PATHS = SYSTEM_HEADER_SEARCH_PATHS[sdk=exclavekit*] = $(SDKROOT)$(SYSTEM_PREFIX)/usr/local/standalone/cL4/include // We don't have many symbols in libdyld.dylib, so mark them up manually with __attribute__((section())) and avoid the SDK dirty data file // FIXME: We force DATA_CONST for now to ensure ld64 generates split seg v2 on x86_64 DIRTY = -Wl,-dirty_data_list,${SRCROOT}/configs/libdyld.dirty -Wl,-data_const // FIXME: -Wl,-unexported_symbol is a hack to deal with C++20 comparison visbility, we can probably fix it better OTHER_LDFLAGS = -Wl,-no_inits -nostdlib -lCrashReporterClient $(LIBSYSTEM_LIBS) -umbrella System -L$(SDKROOT)/$(DRIVERKITROOT)/usr/lib/system $(EXTRA_SECTIONS) -Wl,-unexported_symbol,__ZNSt3* $(DIRTY) OTHER_LDFLAGS[sdk=exclavekit*] = -Wl,-no_inits -nostdlib $(LIBSYSTEM_LIBS) -umbrella System -L$(SDKROOT)/$(SYSTEM_PREFIX)/usr/lib/system $(EXTRA_SECTIONS) -Wl,-unexported_symbol,__ZNSt3* $(DIRTY) PRIVATE_TAPI_FLAGS = -extra-private-header ${SRCROOT}/include/mach-o/dyld_priv.h -extra-private-header ./include/mach-o/dyld_introspection.h -extra-private-header ./include/mach-o/dyld_process_info.h -extra-private-header ./include/mach-o/utils_priv.h PRIVATE_TAPI_FLAGS[sdk=*simulator*] = -extra-private-header ./include/dlfcn_private.h -extra-private-header ${SRCROOT}/include/mach-o/dyld_priv.h -extra-private-header ./include/mach-o/dyld_process_info.h -extra-private-header ./include/mach-o/dyld_introspection.h -extra-private-header ./include/mach-o/utils_priv.h PRIVATE_TAPI_FLAGS[sdk=embedded*] = -extra-private-header ./include/dlfcn_private.h -extra-private-header ${SRCROOT}/include/mach-o/dyld_priv.h -extra-private-header ./include/mach-o/dyld_introspection.h -extra-private-header ./include/mach-o/dyld_process_info.h -extra-private-header ./include/mach-o/utils_priv.h PRIVATE_TAPI_FLAGS[sdk=macosx*] = -extra-private-header ./include/dlfcn_private.h -extra-private-header ${SRCROOT}/include/mach-o/dyld_priv.h -extra-private-header ./include/mach-o/dyld_introspection.h -extra-private-header ./include/mach-o/dyld_process_info.h -extra-private-header ./include/mach-o/utils_priv.h PRIVATE_TAPI_FLAGS[sdk=driverkit*] = -extra-private-header ./include/dlfcn_private.h -extra-private-header ${SRCROOT}/include/mach-o/dyld_priv.h PRIVATE_TAPI_FLAGS[sdk=exclavekit*] = -extra-private-header ./include/dlfcn_private.h -extra-private-header ${SRCROOT}/include/mach-o/dyld_priv.h OTHER_TAPI_FLAGS = -extra-public-header ./include/mach-o/dyld.h -extra-public-header ./include/mach-o/utils.h -extra-public-header ./include/dlfcn.h $(PRIVATE_TAPI_FLAGS) -ObjC++ -std=c++20 -umbrella System OTHER_TAPI_FLAGS[sdk=driverkit*] = -extra-public-header ./include/mach-o/dyld.h -extra-public-header ./include/dlfcn.h $(PRIVATE_TAPI_FLAGS) -ObjC++ -std=c++20 -umbrella System OTHER_TAPI_FLAGS[sdk=exclavekit*] = -extra-public-header ./include/mach-o/dyld.h -extra-public-header ./include/dlfcn.h $(PRIVATE_TAPI_FLAGS) -ObjC++ -std=c++20 -umbrella System |