]> git.proxmox.com Git - mirror_edk2.git/commitdiff
BaseTools: Barf on unknown HOST_ARCH in C Makefile
authorChema Gonzalez <chemag@fb.com>
Thu, 28 Dec 2017 00:23:56 +0000 (16:23 -0800)
committerLiming Gao <liming.gao@intel.com>
Wed, 24 Jan 2018 03:47:32 +0000 (11:47 +0800)
I was getting `HOST_ARCH` set using the linux arch name ("x86_64"), which
is different from the MS one ("X64").

It is not clear anyway we can proceed without valid build variables
(`ARCH_INCLUDE`, `BIN_PATH`, `LIB_PATH`, `SYS_BIN_PATH`, and
`SYS_LIB_PATH`).

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Chema Gonzalez <chemag@gmail.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
BaseTools/Source/C/Makefiles/header.makefile
BaseTools/Source/C/Makefiles/ms.common

index 27aa28b2fa02cec9234a52eb6bb2bcfca8d1ce57..e034da258cdca3c1b47aefb7365f3bba650f9985 100644 (file)
@@ -29,18 +29,18 @@ BUILD_LD ?= ld
 LINKER ?= $(BUILD_CC)\r
 ifeq ($(HOST_ARCH), IA32)\r
 ARCH_INCLUDE = -I $(MAKEROOT)/Include/Ia32/\r
-endif\r
 \r
-ifeq ($(HOST_ARCH), X64)\r
+else ifeq ($(HOST_ARCH), X64)\r
 ARCH_INCLUDE = -I $(MAKEROOT)/Include/X64/\r
-endif\r
 \r
-ifeq ($(HOST_ARCH), ARM)\r
+else ifeq ($(HOST_ARCH), ARM)\r
 ARCH_INCLUDE = -I $(MAKEROOT)/Include/Arm/\r
-endif\r
 \r
-ifeq ($(HOST_ARCH), AARCH64)\r
+else ifeq ($(HOST_ARCH), AARCH64)\r
 ARCH_INCLUDE = -I $(MAKEROOT)/Include/AArch64/\r
+\r
+else\r
+$(error Bad HOST_ARCH)\r
 endif\r
 \r
 INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT) -I $(MAKEROOT)/Include/Common -I $(MAKEROOT)/Include/ -I $(MAKEROOT)/Include/IndustryStandard -I $(MAKEROOT)/Common/ -I .. -I . $(ARCH_INCLUDE) \r
index a6bfea5036c4fc5c0ffcb3ea1a9c0c654cc4382c..d23308c4bbea060a6b44354d2dc4023d7078519a 100644 (file)
@@ -42,14 +42,16 @@ BIN_PATH     = $(BASE_TOOLS_PATH)\Bin\Win32
 LIB_PATH     = $(BASE_TOOLS_PATH)\Lib\Win32\r
 SYS_BIN_PATH = $(EDK_TOOLS_PATH)\Bin\Win32\r
 SYS_LIB_PATH = $(EDK_TOOLS_PATH)\Lib\Win32\r
-!ENDIF\r
 \r
-!IF "$(HOST_ARCH)"=="X64"\r
+!ELSEIF "$(HOST_ARCH)"=="X64"\r
 ARCH_INCLUDE = $(SOURCE_PATH)\Include\X64\r
 BIN_PATH     = $(BASE_TOOLS_PATH)\Bin\Win64\r
 LIB_PATH     = $(BASE_TOOLS_PATH)\Lib\Win64\r
 SYS_BIN_PATH = $(EDK_TOOLS_PATH)\Bin\Win64\r
 SYS_LIB_PATH = $(EDK_TOOLS_PATH)\Lib\Win64\r
+\r
+!ELSE\r
+!ERROR "Bad HOST_ARCH"\r
 !ENDIF\r
 \r
 CC = cl.exe\r