## @file\r
# GNU/Linux makefile for C tools build.\r
#\r
-# Copyright (c) 2007 - 2012, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.<BR>\r
#\r
-# This program and the accompanying materials\r
-# are licensed and made available under the terms and conditions of the BSD License\r
-# which accompanies this distribution. The full text of the license may be found at\r
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
#\r
\r
-ifndef ARCH\r
+ifndef HOST_ARCH\r
#\r
- # If ARCH is not defined, then we use 'uname -m' to attempt\r
- # try to figure out the appropriate ARCH.\r
+ # If HOST_ARCH is not defined, then we use 'uname -m' to attempt\r
+ # try to figure out the appropriate HOST_ARCH.\r
#\r
uname_m = $(shell uname -m)\r
- $(info Attempting to detect ARCH from 'uname -m': $(uname_m))\r
+ $(info Attempting to detect HOST_ARCH from 'uname -m': $(uname_m))\r
ifneq (,$(strip $(filter $(uname_m), x86_64 amd64)))\r
- ARCH=X64\r
+ HOST_ARCH=X64\r
endif\r
ifeq ($(patsubst i%86,IA32,$(uname_m)),IA32)\r
- ARCH=IA32\r
+ HOST_ARCH=IA32\r
endif\r
ifneq (,$(findstring aarch64,$(uname_m)))\r
- ARCH=AARCH64\r
+ HOST_ARCH=AARCH64\r
+ else ifneq (,$(findstring arm64,$(uname_m)))\r
+ HOST_ARCH=AARCH64\r
+ else ifneq (,$(findstring arm,$(uname_m)))\r
+ HOST_ARCH=ARM\r
+ endif\r
+ ifneq (,$(findstring riscv64,$(uname_m)))\r
+ HOST_ARCH=RISCV64\r
endif\r
- ifneq (,$(findstring arm,$(uname_m)))\r
- ARCH=ARM\r
+ ifneq (,$(findstring loongarch64,$(uname_m)))\r
+ HOST_ARCH=LOONGARCH64\r
endif\r
- ifndef ARCH\r
- $(info Could not detected ARCH from uname results)\r
- $(error ARCH is not defined!)\r
+ ifndef HOST_ARCH\r
+ $(info Could not detected HOST_ARCH from uname results)\r
+ $(error HOST_ARCH is not defined!)\r
endif\r
- $(info Detected ARCH of $(ARCH) using uname.)\r
+ $(info Detected HOST_ARCH of $(HOST_ARCH) using uname.)\r
endif\r
\r
-export ARCH\r
+export HOST_ARCH\r
\r
MAKEROOT = .\r
\r
include Makefiles/header.makefile\r
\r
-all: makerootdir subdirs $(MAKEROOT)/libs\r
- @echo Finished building BaseTools C Tools with ARCH=$(ARCH)\r
+all: makerootdir subdirs\r
+ @echo Finished building BaseTools C Tools with HOST_ARCH=$(HOST_ARCH)\r
\r
LIBRARIES = Common\r
-# NON_BUILDABLE_APPLICATIONS = GenBootSector BootSectImage\r
+VFRAUTOGEN = VfrCompile/VfrLexer.h\r
APPLICATIONS = \\r
- GnuGenBootSector \\r
- BootSectImage \\r
- EfiLdrImage \\r
+ BrotliCompress \\r
+ VfrCompile \\r
EfiRom \\r
GenFfs \\r
GenFv \\r
GenFw \\r
- GenPage \\r
GenSec \\r
GenCrc32 \\r
- GenVtf \\r
LzmaCompress \\r
- Split \\r
TianoCompress \\r
VolInfo \\r
- VfrCompile\r
+ DevicePath\r
\r
SUBDIRS := $(LIBRARIES) $(APPLICATIONS)\r
\r
+$(LIBRARIES): $(MAKEROOT)/libs\r
+$(APPLICATIONS): $(LIBRARIES) $(MAKEROOT)/bin $(VFRAUTOGEN)\r
+\r
.PHONY: outputdirs\r
makerootdir:\r
-mkdir -p $(MAKEROOT)\r
$(patsubst %,%-clean,$(sort $(SUBDIRS))):\r
-$(MAKE) -C $(@:-clean=) clean\r
\r
+$(VFRAUTOGEN): VfrCompile/VfrSyntax.g\r
+ $(MAKE) -C VfrCompile VfrLexer.h\r
+\r
clean: $(patsubst %,%-clean,$(sort $(SUBDIRS)))\r
\r
clean: localClean\r