#include "Base.xcconfig"
#include? "../../../LocalOverrides.xcconfig"

ARCHS = $(ARCHS_STANDARD_32_64_BIT);

ONLY_ACTIVE_ARCH = YES;

TARGET_MAC_OS_X_VERSION_MAJOR = $(MAC_OS_X_VERSION_MAJOR);

MACOSX_DEPLOYMENT_TARGET = $(MACOSX_DEPLOYMENT_TARGET_$(PLATFORM_NAME)_$(TARGET_MAC_OS_X_VERSION_MAJOR));
MACOSX_DEPLOYMENT_TARGET_macosx_101300 = 10.13;
MACOSX_DEPLOYMENT_TARGET_macosx_101400 = 10.14;
MACOSX_DEPLOYMENT_TARGET_macosx_101500 = 10.15;
MACOSX_DEPLOYMENT_TARGET_macosx_101600 = 10.16;

ENGINEERING_BUILD = 1;

GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES;
DEBUG_INFORMATION_FORMAT = dwarf;

SDKROOT = $(SDKROOT_$(USE_INTERNAL_SDK));
SDKROOT_ = macosx;
SDKROOT_YES = macosx.internal;

COMBINE_INSPECTOR_RESOURCES = NO;
COMBINE_TEST_RESOURCES = YES;

WK_DEFAULT_LTO_MODE = $(WK_USER_LTO_MODE_none);
