DEFINE GCC45_IA32_PREFIX = /usr/bin/\r
DEFINE GCC45_X64_PREFIX = /usr/bin/\r
\r
+DEFINE GCC46_IA32_PREFIX = /usr/bin/\r
+DEFINE GCC46_X64_PREFIX = /usr/bin/\r
+\r
DEFINE UNIX_IASL_BIN = /usr/bin/iasl\r
#DEFINE UNIX_IASL_BIN = $(HOME)/programs/iasl\r
DEFINE WIN_ASL_BIN_DIR = C:\ASL\r
# Required to build platforms or ACPI tables:\r
# Intel(r) ACPI Compiler v20101013 from\r
# http://www.acpica.org/downloads/previous_releases.php\r
+# GCC45 -Linux- Requires:\r
+# GCC 4.5 (Native)\r
+# Optional:\r
+# Required to build platforms or ACPI tables:\r
+# Intel(r) ACPI Compiler v20101013 from\r
+# http://www.acpica.org/downloads/previous_releases.php\r
+# GCC46 -Linux- Requires:\r
+# GCC 4.6 (Native)\r
+# Optional:\r
+# Required to build platforms or ACPI tables:\r
+# Intel(r) ACPI Compiler v20101013 from\r
+# http://www.acpica.org/downloads/previous_releases.php\r
# ELFGCC -Linux- Requires:\r
# GCC(this tool chain uses whatever version of gcc and binutils that is installed in /usr/bin)\r
# Optional:\r
# MSFT - Microsoft\r
# GCC - GNU GCC\r
# INTEL - INTEL\r
+# RVCT - ARM RealView Toolchain\r
####################################################################################\r
####################################################################################\r
#\r
DEFINE GCC45_X64_DLINK_FLAGS = DEF(GCC44_X64_DLINK_FLAGS)\r
DEFINE GCC45_ASM_FLAGS = DEF(GCC44_ASM_FLAGS)\r
\r
+DEFINE GCC46_IA32_CC_FLAGS = DEF(GCC45_IA32_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable\r
+DEFINE GCC46_X64_CC_FLAGS = DEF(GCC45_X64_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable\r
+DEFINE GCC46_IA32_X64_DLINK_COMMON = DEF(GCC45_IA32_X64_DLINK_COMMON)\r
+DEFINE GCC46_IA32_X64_ASLDLINK_FLAGS = DEF(GCC45_IA32_X64_ASLDLINK_FLAGS)\r
+DEFINE GCC46_IA32_X64_DLINK_FLAGS = DEF(GCC45_IA32_X64_DLINK_FLAGS)\r
+DEFINE GCC46_X64_DLINK_FLAGS = DEF(GCC45_X64_DLINK_FLAGS)\r
+DEFINE GCC46_ASM_FLAGS = DEF(GCC45_ASM_FLAGS)\r
+\r
####################################################################################\r
#\r
# Unix GCC And Intel Linux ACPI Compiler\r
*_GCC45_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)\r
*_GCC45_X64_OBJCOPY_FLAGS = \r
\r
+####################################################################################\r
+#\r
+# GCC 4.6 - This configuration is used to compile under Linux to produce\r
+# PE/COFF binaries using GCC 4.6.\r
+#\r
+####################################################################################\r
+*_GCC46_*_*_FAMILY = GCC\r
+\r
+*_GCC46_*_MAKE_PATH = make\r
+*_GCC46_*_ASL_PATH = DEF(UNIX_IASL_BIN)\r
+\r
+*_GCC46_*_PP_FLAGS = DEF(GCC_PP_FLAGS)\r
+*_GCC46_*_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS)\r
+*_GCC46_*_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS)\r
+*_GCC46_*_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS)\r
+*_GCC46_*_APP_FLAGS =\r
+*_GCC46_*_ASL_FLAGS = DEF(IASL_FLAGS)\r
+*_GCC46_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS)\r
+\r
+##################\r
+# GCC46 IA32 definitions\r
+##################\r
+*_GCC46_IA32_OBJCOPY_PATH = DEF(GCC46_IA32_PREFIX)objcopy\r
+*_GCC46_IA32_CC_PATH = DEF(GCC46_IA32_PREFIX)gcc\r
+*_GCC46_IA32_SLINK_PATH = DEF(GCC46_IA32_PREFIX)ar\r
+*_GCC46_IA32_DLINK_PATH = DEF(GCC46_IA32_PREFIX)ld\r
+*_GCC46_IA32_ASLDLINK_PATH = DEF(GCC46_IA32_PREFIX)ld\r
+*_GCC46_IA32_ASM_PATH = DEF(GCC46_IA32_PREFIX)gcc\r
+*_GCC46_IA32_PP_PATH = DEF(GCC46_IA32_PREFIX)gcc\r
+*_GCC46_IA32_VFRPP_PATH = DEF(GCC46_IA32_PREFIX)gcc\r
+*_GCC46_IA32_ASLCC_PATH = DEF(GCC46_IA32_PREFIX)gcc\r
+*_GCC46_IA32_ASLPP_PATH = DEF(GCC46_IA32_PREFIX)gcc\r
+*_GCC46_IA32_RC_PATH = DEF(GCC46_IA32_PREFIX)objcopy\r
+\r
+*_GCC46_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m32\r
+*_GCC46_IA32_ASLDLINK_FLAGS = DEF(GCC46_IA32_X64_ASLDLINK_FLAGS) -m elf_i386\r
+*_GCC46_IA32_ASM_FLAGS = DEF(GCC46_ASM_FLAGS) -m32 -march=i386\r
+*_GCC46_IA32_CC_FLAGS = DEF(GCC46_IA32_CC_FLAGS) -Os\r
+*_GCC46_IA32_DLINK_FLAGS = DEF(GCC46_IA32_X64_DLINK_FLAGS) -m elf_i386 --oformat=elf32-i386\r
+*_GCC46_IA32_RC_FLAGS = DEF(GCC_IA32_RC_FLAGS)\r
+*_GCC46_IA32_OBJCOPY_FLAGS = \r
+\r
+##################\r
+# GCC46 X64 definitions\r
+##################\r
+*_GCC46_X64_OBJCOPY_PATH = DEF(GCC46_X64_PREFIX)objcopy\r
+*_GCC46_X64_CC_PATH = DEF(GCC46_X64_PREFIX)gcc\r
+*_GCC46_X64_SLINK_PATH = DEF(GCC46_X64_PREFIX)ar\r
+*_GCC46_X64_DLINK_PATH = DEF(GCC46_X64_PREFIX)ld\r
+*_GCC46_X64_ASLDLINK_PATH = DEF(GCC46_X64_PREFIX)ld\r
+*_GCC46_X64_ASM_PATH = DEF(GCC46_X64_PREFIX)gcc\r
+*_GCC46_X64_PP_PATH = DEF(GCC46_X64_PREFIX)gcc\r
+*_GCC46_X64_VFRPP_PATH = DEF(GCC46_X64_PREFIX)gcc\r
+*_GCC46_X64_ASLCC_PATH = DEF(GCC46_X64_PREFIX)gcc\r
+*_GCC46_X64_ASLPP_PATH = DEF(GCC46_X64_PREFIX)gcc\r
+*_GCC46_X64_RC_PATH = DEF(GCC46_X64_PREFIX)objcopy\r
+\r
+*_GCC46_X64_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) -m64\r
+*_GCC46_X64_ASLDLINK_FLAGS = DEF(GCC46_IA32_X64_ASLDLINK_FLAGS) -m elf_x86_64\r
+*_GCC46_X64_ASM_FLAGS = DEF(GCC46_ASM_FLAGS) -m64 -melf_x86_64\r
+*_GCC46_X64_CC_FLAGS = DEF(GCC46_X64_CC_FLAGS)\r
+*_GCC46_X64_DLINK_FLAGS = DEF(GCC46_X64_DLINK_FLAGS)\r
+*_GCC46_X64_RC_FLAGS = DEF(GCC_X64_RC_FLAGS)\r
+*_GCC46_X64_OBJCOPY_FLAGS = \r
+\r
####################################################################################\r
#\r
# Cygwin GCC And Intel ACPI Compiler\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) --oformat=elf32-littlearm --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map\r
+*_ARMGCC_ARM_DLINK_FLAGS = $(ARCHDLINK_FLAGS) -Ttext=0x0 --oformat=elf32-littlearm --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map\r
\r
DEBUG_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -combine -O0\r
RELEASE_ARMGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -combine -Wno-unused\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 = -mthumb\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) --oformat=elf32-littlearm --emit-relocs -nostdlib -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map $(DEST_DIR_DEBUG)/$(BASE_NAME).map\r
+\r
+ DEBUG_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -Wno-address -O0\r
+RELEASE_ARMLINUXGCC_ARM_CC_FLAGS = $(ARCHCC_FLAGS) $(PLATFORM_FLAGS) DEF(GCC_ARMGCC_CC_FLAGS) -Wno-address -Wno-unused-but-set-variable\r
+\r
#################\r
# ASM 16 linker defintions\r
#################\r