From 0ea0020c48efff41c9badde82abe4e3a27ce4994 Mon Sep 17 00:00:00 2001 From: SergeySlice Date: Wed, 6 Sep 2023 19:27:06 +0300 Subject: [PATCH] restore old xcode8 and create new xcode14 toolset Signed-off-by: SergeySlice --- BaseTools/Conf/tools_def.template | 79 ++++++++++++++++++++++++++++++- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template index 798f6e29a..489b712bd 100644 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -2746,7 +2746,7 @@ RELEASEMACOS_XCODE8_X64_DLINK_FLAGS = -arch x86_64 -nostdlib -Wl,-u,_$(IMAG # -Wno-varargs # -Wno-unused-const-variable - DEFINE XCODE8_COMMON_FLAGS = -nostdinc -c -Wall -Wextra -include AutoGen.h -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mms-bitfields -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -mno-red-zone -fno-common -fdata-sections -ffreestanding -ffunction-sections -fno-asynchronous-unwind-tables -m64 -mabi=ms -mcmodel=small -DNO_MSABI_VA_FUNCS -fno-strict-aliasing -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-deprecated-non-prototype + DEFINE XCODE8_COMMON_FLAGS = -nostdinc -c -Wall -Wextra -include AutoGen.h -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mms-bitfields -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -mno-red-zone -fno-common -fdata-sections -ffreestanding -ffunction-sections -fno-asynchronous-unwind-tables -m64 -mabi=ms -mcmodel=small -DNO_MSABI_VA_FUNCS -fno-strict-aliasing -Wno-unused-parameter @@ -2767,6 +2767,83 @@ RELEASEMACOS_XCODE8_X64_DLINK_FLAGS = -arch x86_64 -nostdlib -Wl,-u,_$(IMAG *_XCODE8_*_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) *_XCODE8_*_APP_FLAGS = DEF(GCC_PP_FLAGS) +# +# XCODE14 support +# + +*_XCODE14_*_*_FAMILY = GCC +*_XCODE14_*_*_BUILDRULEFAMILY = XCODE +*_XCODE14_*_*_BUILDRULEORDER = nasm S s + +*_XCODE14_*_MTOC_PATH = ENV(MTOC_PREFIX)mtoc.NEW_jief + +*_XCODE14_*_MAKE_PATH = make +*_XCODE14_*_DSYMUTIL_PATH = /usr/bin/dsymutil + + DEBUG_XCODE14_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll + NOOPT_XCODE14_*_MTOC_FLAGS = -align 0x20 -d $(DEBUG_DIR)/$(MODULE_NAME).dll +RELEASE_XCODE14_*_MTOC_FLAGS = -align 0x20 + +# +# use xcode-select to change Xcode version of command line tools +# +*_XCODE14_*_CC_PATH = clang +*_XCODE14_*_SLINK_PATH = libtool +*_XCODE14_*_DLINK_PATH = clang +*_XCODE14_*_ASM_PATH = clang +*_XCODE14_*_PP_PATH = clang +*_XCODE14_*_VFRPP_PATH = clang +*_XCODE14_*_ASL_PATH = DEF(UNIX_IASL_BIN) +*_XCODE14_*_ASLCC_PATH = clang +*_XCODE14_*_ASLPP_PATH = clang +*_XCODE14_*_ASLDLINK_PATH = clang +*_XCODE14_*_NASM_PATH = ENV(NASM_PREFIX)nasm + +################## +# X64 definitions +################## + DEBUG_XCODE14_X64_DLINK_FLAGS = -arch x86_64 -nostdlib -Wl,-u,_$(IMAGE_ENTRY_POINT),-e,_$(IMAGE_ENTRY_POINT),-preload,-segalign,0x20,-pie,-all_load,-dead_strip,-seg1addr,0x260,-object_path_lto,$(DEST_DIR_DEBUG)/$(BASE_NAME).o,-map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map + DEBUGMACOS_XCODE14_X64_DLINK_FLAGS = -arch x86_64 -nostdlib -Wl,-u,_$(IMAGE_ENTRY_POINT),-e,_$(IMAGE_ENTRY_POINT),-preload,-segalign,0x20,-pie,-all_load,-dead_strip,-seg1addr,0x800,-map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map + RELEASE_XCODE14_X64_DLINK_FLAGS = -arch x86_64 -nostdlib -Wl,-u,_$(IMAGE_ENTRY_POINT),-e,_$(IMAGE_ENTRY_POINT),-preload,-segalign,0x20,-pie,-all_load,-dead_strip,-seg1addr,0x260,-map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map +RELEASEMACOS_XCODE14_X64_DLINK_FLAGS = -arch x86_64 -nostdlib -Wl,-u,_$(IMAGE_ENTRY_POINT),-e,_$(IMAGE_ENTRY_POINT),-preload,-segalign,0x20,-pie,-all_load,-dead_strip,-seg1addr,0x800,-map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map + + *_XCODE14_X64_SLINK_FLAGS = -static -no_warning_for_no_symbols -o + + DEBUG_XCODE14_X64_ASM_FLAGS = -c -x assembler -arch x86_64 -g + DEBUGMACOS_XCODE14_X64_ASM_FLAGS = -c -x assembler -arch x86_64 -g + RELEASE_XCODE14_X64_ASM_FLAGS = -c -x assembler -arch x86_64 + RELEASEMACOS_XCODE14_X64_ASM_FLAGS = -c -x assembler -arch x86_64 + + *_XCODE14_X64_NASM_FLAGS = -f macho64 + *_XCODE14_*_PP_FLAGS = DEF(GCC_PP_FLAGS) + *_XCODE14_*_VFRPP_FLAGS = -x c -E -P -DVFRCOMPILE -include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h + + +# -mno-implicit-float +# -Wno-varargs +# -Wno-unused-const-variable + + DEFINE XCODE14_COMMON_FLAGS = -nostdinc -c -Wall -Wextra -include AutoGen.h -fno-ms-extensions -fno-stack-protector -fno-builtin -fshort-wchar -mms-bitfields -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings -mno-red-zone -fno-common -fdata-sections -ffreestanding -ffunction-sections -fno-asynchronous-unwind-tables -m64 -mabi=ms -mcmodel=small -DNO_MSABI_VA_FUNCS -fno-strict-aliasing -Wno-unused-parameter -Wno-unused-but-set-variable -Wno-deprecated-non-prototype + + + + DEBUG_XCODE14_X64_CC_FLAGS = -g3 -gdwarf -O0 DEF(XCODE14_COMMON_FLAGS) -target x86_64-pc-win32-macho "-DEFIAPI=__attribute__((ms_abi))" + DEBUGMACOS_XCODE14_X64_CC_FLAGS = -g3 -gdwarf -O0 DEF(XCODE14_COMMON_FLAGS) + RELEASE_XCODE14_X64_CC_FLAGS = -Os DEF(XCODE14_COMMON_FLAGS) -target x86_64-pc-win32-macho "-DEFIAPI=__attribute__((ms_abi))" -Werror + RELEASEMACOS_XCODE14_X64_CC_FLAGS = -Os DEF(XCODE14_COMMON_FLAGS) + DEBUG_XCODE14_X64_CXX_FLAGS = -g3 -gdwarf -O0 DEF(XCODE14_COMMON_FLAGS) -target x86_64-pc-win32-macho "-DEFIAPI=__attribute__((ms_abi))" + DEBUGMACOS_XCODE14_X64_CXX_FLAGS = -g3 -gdwarf -O0 DEF(XCODE14_COMMON_FLAGS) + RELEASE_XCODE14_X64_CXX_FLAGS = -Os DEF(XCODE14_COMMON_FLAGS) -target x86_64-pc-win32-macho "-DEFIAPI=__attribute__((ms_abi))" -Werror + RELEASEMACOS_XCODE14_X64_CXX_FLAGS = -Os DEF(XCODE14_COMMON_FLAGS) + +*_XCODE14_*_ASLCC_FLAGS = -x c -save-temps -g -O0 -fshort-wchar -fno-strict-aliasing -Wall -Werror -c -include AutoGen.h +*_XCODE14_*_ASLDLINK_FLAGS = -nostdlib -Wl,-e,_ReferenceAcpiTable,-preload,-segalign,0x20,-pie,-seg1addr,0x260,-read_only_relocs,suppress,-map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map +*_XCODE14_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) +*_XCODE14_*_ASL_FLAGS = +*_XCODE14_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) +*_XCODE14_*_DTCPP_FLAGS = DEF(GCC_DTCPP_FLAGS) +*_XCODE14_*_APP_FLAGS = DEF(GCC_PP_FLAGS) + #################################################################################### # # RVCT Common