]> git.proxmox.com Git - mirror_edk2.git/commitdiff
BaseTools: remove ARMGCC and ARMLINUXGCC toolchains
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Wed, 12 Aug 2015 05:25:48 +0000 (05:25 +0000)
committerabiesheuvel <abiesheuvel@Edk2>
Wed, 12 Aug 2015 05:25:48 +0000 (05:25 +0000)
The ARMGCC and ARMLINUXGCC toolchains are specific to the ARM and
AARCH64 architectures, and overlap with the toolchain configuration
that is provided by the GCC44 - GCC49 toolchains, which are defined
for all architectures.

To reduce the maintenance burden, and make it easier to keep these
different architectures aligned, remove the ARMGCC and ARMLINUXGCC
toolchains entirely.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18212 6f19259b-4bc3-4df7-8a09-765794883524

BaseTools/Conf/build_rule.template
BaseTools/Conf/tools_def.template

index 1035025b668c1881d8a7dcf802c3391bc0932767..3637ef47414eb6a8c489ba8a3c8b2743417b8399 100644 (file)
         # For RVCTCYGWIN CC_FLAGS must be first to work around pathing issues\r
         "$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
 \r
-    <Command.ARMGCC, Command.ARMLINUXGCC, command.XCODE>\r
+    <Command.XCODE>\r
         "$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
 \r
 [C-Code-File.COMMON.IPF]\r
     <Command.RVCT>\r
         "$(SLINK)" $(SLINK_FLAGS) ${dst} --via $(OBJECT_FILES_LIST)\r
     \r
-    <Command.RVCTCYGWIN, Command.ARMGCC, Command.ARMLINUXGCC>\r
+    <Command.RVCTCYGWIN>\r
         # $(OBJECT_FILES_LIST) has wrong paths for cygwin\r
         "$(SLINK)" $(SLINK_FLAGS) ${dst} $(OBJECT_FILES)\r
 \r
         "$(DLINK)" -o ${dst} $(DLINK_FLAGS) --start-group $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST) --end-group $(DLINK2_FLAGS)\r
         "$(OBJCOPY)" $(OBJCOPY_FLAGS) ${dst}\r
 \r
-    <Command.ARMGCC, Command.ARMLINUXGCC>\r
-        "$(DLINK)" -o ${dst} $(DLINK_FLAGS) --start-group $(DLINK_SPATH) $(STATIC_LIBRARY_FILES) --end-group $(DLINK2_FLAGS)\r
-\r
     <Command.RVCT>\r
         "$(DLINK)" $(DLINK_FLAGS) -o ${dst} $(DLINK_SPATH) --via $(STATIC_LIBRARY_FILES_LIST) $(DLINK2_FLAGS)\r
 \r
     <Command.GCC>\r
         "$(DLINK)" $(DLINK_FLAGS) --start-group $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST) --end-group $(DLINK2_FLAGS)\r
 \r
-    <Command.ARMGCC, Command.ARMLINUXGCC>\r
-        "$(DLINK)" $(DLINK_FLAGS) --start-group $(DLINK_SPATH) $(STATIC_LIBRARY_FILES) --end-group $(DLINK2_FLAGS)\r
-\r
     <Command.RVCT>\r
         "$(DLINK)" $(DLINK_FLAGS) -o ${dst} $(DLINK_SPATH) --via $(STATIC_LIBRARY_FILES_LIST) $(DLINK2_FLAGS)\r
 \r
     <OutputFile>\r
         $(DEBUG_DIR)(+)$(MODULE_NAME).efi\r
 \r
-    <Command.MSFT, Command.INTEL, Command.RVCT, Command.ARMGCC, Command.ARMLINUXGCC>  \r
+    <Command.MSFT, Command.INTEL, Command.RVCT>\r
         "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS)\r
         $(CP) ${dst} $(OUTPUT_DIR)\r
         $(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi\r
     <OutputFile.MSFT, OutputFile.INTEL, OutputFile.GCC>\r
         $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.lib\r
 \r
-    <OutputFile.XCODE, OutputFile.RVCT, OutputFile.ARMGCC>\r
+    <OutputFile.XCODE, OutputFile.RVCT>\r
         $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc\r
 \r
     <Command.MSFT, Command.INTEL>\r
         "$(GENFW)" -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUID) --hiibinpackage $(HII_BINARY_PACKAGES) $(GENFW_FLAGS)\r
         "$(RC)" $(RC_FLAGS) $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc ${dst}\r
         \r
-    <Command.XCODE, Command.RVCT, Command.ARMGCC, Command.ARMLINUXGCC>  \r
+    <Command.XCODE, Command.RVCT>\r
         GenFw -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUID) --hiibinpackage $(HII_BINARY_PACKAGES)\r
         \r
         \r
index 0c41c862af83de7ea114e23b28c91e399150538e..6e2d4909b9fc5d0bb2bf438020bb4a6206de9942 100644 (file)
@@ -633,18 +633,6 @@ DEFINE SOURCERY_CYGWIN_TOOLS = /cygdrive/c/Program Files/CodeSourcery/Sourcery G
 #                             Required to build platforms or ACPI tables:\r
 #                               Microsoft ASL ACPI Compiler (asl.exe) v4.0.0 from\r
 #                               http://download.microsoft.com/download/2/c/1/2c16c7e0-96c1-40f5-81fc-3e4bf7b65496/microsoft_asl_compiler-v4-0-0.msi\r
-#   ARMGCC      -unix-   Requires:\r
-#                             ARM None EABI GCC 4.6.0\r
-#                        Optional:\r
-#                             Required to build platforms or ACPI tables:\r
-#                               Intel(r) ACPI Compiler from\r
-#                               https://acpica.org/downloads\r
-#   ARMLINUXGCC -unix-   Requires:\r
-#                             ARM Linux GNU EABI GCC 4.6.0\r
-#                        Optional:\r
-#                             Required to build platforms or ACPI tables:\r
-#                               Intel(r) ACPI Compiler from\r
-#                               https://acpica.org/downloads\r
 #   RVCT        -win-   Requires:\r
 #                             ARM C/C++ Compiler, 5.00\r
 #                        Optional:\r
@@ -6751,194 +6739,6 @@ RELEASE_RVCTCYGWIN_ARM_CC_FLAGS  = "$(CCPATH_FLAG)" $(ARCHCC_FLAGS) $(PLATFORM_F
 *_RVCTCYGWIN_ARM_VFRPP_PATH      = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
 *_RVCTCYGWIN_ARM_FROMELF_PATH    = ENV(WORKSPACE)/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py\r
 \r
-####################################################################################\r
-#\r
-# ARM EABI GCC (www.codesourcery.com)\r
-#\r
-####################################################################################\r
-#  ARMGCC         - ARM version of the GCC cross compiler\r
-\r
-*_ARMGCC_*_*_FAMILY          = GCC\r
-*_ARMGCC_*_*_BUILDRULEFAMILY = ARMGCC\r
-\r
-*_ARMGCC_*_MAKE_PATH         = make\r
-*_ARMGCC_*_MAKE_FLAGS        = --no-print-directory\r
-\r
-##################\r
-# ASL definitions\r
-##################\r
-*_ARMGCC_*_ASL_PATH          = DEF(UNIX_IASL_BIN)\r
-*_ARMGCC_*_ASL_FLAGS         = DEF(IASL_FLAGS)\r
-*_ARMGCC_*_ASL_OUTFLAGS      = DEF(IASL_OUTFLAGS)\r
-*_ARMGCC_*_ASLPP_FLAGS       = -x c -E -P\r
-*_ARMGCC_*_ASLCC_FLAGS       = -x c\r
-*_ARMGCC_*_ASLDLINK_FLAGS    = DEF(GCC_DLINK_FLAGS_COMMON) --entry ReferenceAcpiTable\r
-\r
-##################\r
-# ARM definitions\r
-##################\r
-\r
-*_ARMGCC_ARM_ASLCC_PATH      = ENV(CROSS_COMPILE)gcc\r
-*_ARMGCC_ARM_ASLDLINK_PATH   = ENV(CROSS_COMPILE)ld\r
-*_ARMGCC_ARM_ASLPP_PATH      = ENV(CROSS_COMPILE)gcc\r
-\r
-*_ARMGCC_ARM_CC_PATH         = ENV(CROSS_COMPILE)gcc\r
-*_ARMGCC_ARM_SLINK_PATH      = ENV(CROSS_COMPILE)ar\r
-*_ARMGCC_ARM_DLINK_PATH      = ENV(CROSS_COMPILE)ld\r
-*_ARMGCC_ARM_ASM_PATH        = ENV(CROSS_COMPILE)as\r
-*_ARMGCC_ARM_PP_PATH         = ENV(CROSS_COMPILE)gcc\r
-*_ARMGCC_ARM_VFRPP_PATH      = ENV(CROSS_COMPILE)gcc\r
-\r
-#\r
-# Use default values, or override in DSC file\r
-#\r
-*_ARMGCC_ARM_ARCHCC_FLAGS    =\r
-*_ARMGCC_ARM_ARCHASM_FLAGS   =\r
-*_ARMGCC_ARM_ARCHDLINK_FLAGS =\r
-*_ARMGCC_ARM_PLATFORM_FLAGS  = -march=armv7-a\r
-\r
-  DEBUG_ARMGCC_ARM_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -mlittle-endian -g\r
-RELEASE_ARMGCC_ARM_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -mlittle-endian\r
-\r
-*_ARMGCC_ARM_PP_FLAGS    = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h\r
-*_ARMGCC_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -x c -E -P -DVFRCOMPILE --include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h\r
-\r
-*_ARMGCC_ARM_SLINK_FLAGS =  -rc\r
-*_ARMGCC_ARM_DLINK_FLAGS =  $(ARCHDLINK_FLAGS) DEF(GCC_ARM_AARCH64_DLINK_COMMON) --oformat=elf32-littlearm\r
-\r
-  DEBUG_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -O0\r
-RELEASE_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -Wno-unused\r
-\r
-######################\r
-# AArch64 definitions\r
-######################\r
-# AARCH64 64bit ARM Bare-metal GCC (ARM Architecture 64)\r
-\r
-*_ARMGCC_AARCH64_ASLCC_PATH      = ENV(CROSS_COMPILE)gcc\r
-*_ARMGCC_AARCH64_ASLDLINK_PATH   = ENV(CROSS_COMPILE)ld\r
-*_ARMGCC_AARCH64_ASLPP_PATH      = ENV(CROSS_COMPILE)gcc\r
-\r
-*_ARMGCC_AARCH64_CC_PATH         = ENV(CROSS_COMPILE)gcc\r
-*_ARMGCC_AARCH64_SLINK_PATH      = ENV(CROSS_COMPILE)ar\r
-*_ARMGCC_AARCH64_DLINK_PATH      = ENV(CROSS_COMPILE)ld\r
-*_ARMGCC_AARCH64_ASM_PATH        = ENV(CROSS_COMPILE)as\r
-*_ARMGCC_AARCH64_PP_PATH         = ENV(CROSS_COMPILE)gcc\r
-*_ARMGCC_AARCH64_VFRPP_PATH      = ENV(CROSS_COMPILE)gcc\r
-\r
-#\r
-# Use default values, or override in DSC file\r
-#\r
-*_ARMGCC_AARCH64_ARCHCC_FLAGS    =\r
-*_ARMGCC_AARCH64_ARCHASM_FLAGS   =\r
-*_ARMGCC_AARCH64_ARCHDLINK_FLAGS =\r
-*_ARMGCC_AARCH64_PLATFORM_FLAGS  =\r
-\r
-  DEBUG_ARMGCC_AARCH64_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -g\r
-RELEASE_ARMGCC_AARCH64_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS)\r
-\r
-*_ARMGCC_AARCH64_PP_FLAGS    = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h\r
-*_ARMGCC_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -x c -E -P -DVFRCOMPILE --include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h\r
-\r
-*_ARMGCC_AARCH64_SLINK_FLAGS =  -rc\r
-*_ARMGCC_AARCH64_DLINK_FLAGS =  $(ARCHDLINK_FLAGS) DEF(GCC_ARM_AARCH64_DLINK_COMMON)\r
-\r
-  DEBUG_ARMGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -O0\r
-RELEASE_ARMGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable\r
-\r
-####################################################################################\r
-#\r
-# ARM GNU/Linux GCC\r
-#\r
-####################################################################################\r
-#  ARMLINUXGCC         - ARM version of the GCC cross compiler\r
-\r
-*_ARMLINUXGCC_*_*_FAMILY          = GCC\r
-*_ARMLINUXGCC_*_*_BUILDRULEFAMILY = ARMLINUXGCC\r
-\r
-*_ARMLINUXGCC_*_MAKE_PATH         = make\r
-*_ARMLINUXGCC_*_MAKE_FLAGS        = --no-print-directory\r
-\r
-##################\r
-# ASL definitions\r
-##################\r
-*_ARMLINUXGCC_*_ASL_PATH           = DEF(UNIX_IASL_BIN)\r
-*_ARMLINUXGCC_*_ASL_FLAGS          = DEF(IASL_FLAGS)\r
-*_ARMLINUXGCC_*_ASL_OUTFLAGS       = DEF(IASL_OUTFLAGS)\r
-*_ARMLINUXGCC_*_ASLPP_FLAGS        = -x c -E -P\r
-*_ARMLINUXGCC_*_ASLCC_FLAGS        = -x c\r
-*_ARMLINUXGCC_*_ASLDLINK_FLAGS     = DEF(GCC_DLINK_FLAGS_COMMON) --entry ReferenceAcpiTable\r
-\r
-##################\r
-# ARM definitions\r
-##################\r
-\r
-*_ARMLINUXGCC_ARM_ASLCC_PATH      = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-gcc\r
-*_ARMLINUXGCC_ARM_ASLDLINK_PATH   = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-ld\r
-*_ARMLINUXGCC_ARM_ASLPP_PATH      = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-gcc\r
-\r
-*_ARMLINUXGCC_ARM_CC_PATH         = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-gcc\r
-*_ARMLINUXGCC_ARM_SLINK_PATH      = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-ar\r
-*_ARMLINUXGCC_ARM_DLINK_PATH      = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-ld\r
-*_ARMLINUXGCC_ARM_ASM_PATH        = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-as\r
-*_ARMLINUXGCC_ARM_PP_PATH         = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-gcc\r
-*_ARMLINUXGCC_ARM_VFRPP_PATH      = ENV(ARMLINUXGCC_TOOLS_PATH)arm-linux-gnueabi-gcc\r
-\r
-#\r
-# Use default values, or override in DSC file\r
-#\r
-*_ARMLINUXGCC_ARM_ARCHCC_FLAGS    =\r
-*_ARMLINUXGCC_ARM_ARCHASM_FLAGS   = \r
-*_ARMLINUXGCC_ARM_ARCHDLINK_FLAGS =\r
-*_ARMLINUXGCC_ARM_PLATFORM_FLAGS  = -march=armv7-a\r
-\r
-  DEBUG_ARMLINUXGCC_ARM_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -mlittle-endian -g\r
-RELEASE_ARMLINUXGCC_ARM_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -mlittle-endian\r
-\r
-*_ARMLINUXGCC_ARM_PP_FLAGS    = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h\r
-*_ARMLINUXGCC_ARM_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -x c -E -P -DVFRCOMPILE --include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h\r
-\r
-*_ARMLINUXGCC_ARM_SLINK_FLAGS =  -rc\r
-*_ARMLINUXGCC_ARM_DLINK_FLAGS =  $(ARCHDLINK_FLAGS) DEF(GCC_ARM_AARCH64_DLINK_COMMON) --oformat=elf32-littlearm\r
-\r
-  DEBUG_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -mno-unaligned-access -O0\r
-RELEASE_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARM_CC_FLAGS) -mno-unaligned-access -Wno-unused-but-set-variable\r
-\r
-######################\r
-# AArch64 definitions\r
-######################\r
-# AARCH64 64bit ARM GNU/Linux GCC (ARM Architecture 64)\r
-\r
-*_ARMLINUXGCC_AARCH64_ASLCC_PATH      = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc\r
-*_ARMLINUXGCC_AARCH64_ASLDLINK_PATH   = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-ld\r
-*_ARMLINUXGCC_AARCH64_ASLPP_PATH      = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc\r
-\r
-*_ARMLINUXGCC_AARCH64_CC_PATH         = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc\r
-*_ARMLINUXGCC_AARCH64_SLINK_PATH      = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-ar\r
-*_ARMLINUXGCC_AARCH64_DLINK_PATH      = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-ld\r
-*_ARMLINUXGCC_AARCH64_ASM_PATH        = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-as\r
-*_ARMLINUXGCC_AARCH64_PP_PATH         = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc\r
-*_ARMLINUXGCC_AARCH64_VFRPP_PATH      = ENV(AARCH64LINUXGCC_TOOLS_PATH)aarch64-linux-gnu-gcc\r
-\r
-#\r
-# Use default values, or override in DSC file\r
-#\r
-*_ARMLINUXGCC_AARCH64_ARCHCC_FLAGS    =\r
-*_ARMLINUXGCC_AARCH64_ARCHASM_FLAGS   =\r
-*_ARMLINUXGCC_AARCH64_ARCHDLINK_FLAGS =\r
-*_ARMLINUXGCC_AARCH64_PLATFORM_FLAGS  =\r
-\r
-  DEBUG_ARMLINUXGCC_AARCH64_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS) -g\r
-RELEASE_ARMLINUXGCC_AARCH64_ASM_FLAGS   = $(ARCHASM_FLAGS) $(PLATFORM_FLAGS)\r
-\r
-*_ARMLINUXGCC_AARCH64_PP_FLAGS    = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h\r
-*_ARMLINUXGCC_AARCH64_VFRPP_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) -x c -E -P -DVFRCOMPILE --include $(DEST_DIR_DEBUG)/$(MODULE_NAME)StrDefs.h\r
-\r
-*_ARMLINUXGCC_AARCH64_SLINK_FLAGS =  -rc\r
-*_ARMLINUXGCC_AARCH64_DLINK_FLAGS =  $(ARCHDLINK_FLAGS) DEF(GCC_ARM_AARCH64_DLINK_COMMON)\r
-\r
-  DEBUG_ARMLINUXGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -O0\r
-RELEASE_ARMLINUXGCC_AARCH64_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_AARCH64_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable\r
-\r
 #################\r
 # ASM 16 linker defintions\r
 #################\r