VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/Firmware/ArmPlatformPkg/Scripts/Makefile@ 105681

Last change on this file since 105681 was 99464, checked in by vboxsync, 2 years ago

Devices/EFI/Firmware: Restore ArmPkg, ArmVirtPkg, ArmPlatformPkg in order to be able to build Aarch64 and Aarch32 firmware images for the virt platform, bugref:10400

  • Property svn:eol-style set to native
File size: 2.2 KB
Line 
1#/* @file
2# Copyright (c) 2011-2015, ARM Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-2-Clause-Patent
5#
6#*/
7
8EDK2_TOOLCHAIN ?= GCC5
9EDK2_ARCH ?= ARM
10EDK2_BUILD ?= DEBUG
11
12ifndef EDK2_DSC
13 $(error The Makfile macro 'EDK2_DSC' must be defined with an EDK2 DSC file.)
14endif
15ifeq ("$(EDK2_DSC)","ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.dsc")
16 BUILD_FIP=1
17 BUILD_PATH=$(WORKSPACE)/Build/ArmVExpress-FVP-AArch64
18 UEFI_BIN=FVP_AARCH64_EFI.fd
19endif
20
21ifeq ("$(OS)","Windows_NT")
22export WORKSPACE?=$(PWD)
23export EDK_TOOLS_PATH ?= $(WORKSPACE)\BaseTools
24endif
25
26SHELL := /bin/bash
27SILENT ?= @
28ECHO ?= echo
29MAKE ?= make -i -k
30RM ?= rm -f
31
32.PHONY: all clean
33
34EDK2_CONF = Conf/BuildEnv.sh Conf/build_rule.txt Conf/target.txt Conf/tools_def.txt
35
36#
37# FIP Support
38#
39ifeq ($(BUILD_FIP),"1")
40 ifeq ($(FIP_BIN),"")
41 $(info Define location of the FIP to automatically update the package after building UEFI.)
42 endif
43endif
44
45all: $(EDK2_CONF)
46ifeq ("$(OS)","Windows_NT")
47 build -a $(EDK2_ARCH) -p $(EDK2_DSC) -t $(EDK2_TOOLCHAIN) -b $(EDK2_BUILD) $(EDK2_MACROS)
48else
49 . ./edksetup.sh; build -a $(EDK2_ARCH) -p $(EDK2_DSC) -t $(EDK2_TOOLCHAIN) -b $(EDK2_BUILD) $(EDK2_MACROS)
50endif
51ifeq ("$(BUILD_FIP)","1")
52ifneq ($(FIP_BIN),"")
53 $(SILENT)which fip_create ; \
54 if [ $$? -ne 0 ]; then \
55 $(ECHO) "Warning: 'fip_create' tool is not in the PATH. The UEFI binary will not be added in the Firmware Image Package (FIP)."; \
56 else \
57 fip_create --bl33 $(BUILD_PATH)/$(EDK2_BUILD)_$(EDK2_TOOLCHAIN)/FV/$(UEFI_BIN) --dump $(FIP_BIN); \
58 fi
59endif
60endif
61
62$(EDK2_CONF):
63ifeq ("$(OS)","Windows_NT")
64 copy $(EDK_TOOLS_PATH)\Conf\build_rule.template Conf\build_rule.txt
65 copy $(EDK_TOOLS_PATH)\Conf\FrameworkDatabase.template Conf\FrameworkDatabase.txt
66 copy $(EDK_TOOLS_PATH)\Conf\target.template Conf\target.txt
67 copy $(EDK_TOOLS_PATH)\Conf\tools_def.template Conf\tools_def.txt
68else
69 . ./edksetup.sh; $(MAKE) -C BaseTools
70endif
71
72clean:
73ifeq ("$(OS)","Windows_NT")
74 build -a $(EDK2_ARCH) -p $(EDK2_DSC) -t $(EDK2_TOOLCHAIN) -b $(EDK2_BUILD) $(EDK2_MACROS) cleanall
75else
76 . ./edksetup.sh; build -a $(EDK2_ARCH) -p $(EDK2_DSC) -t $(EDK2_TOOLCHAIN) -b $(EDK2_BUILD) $(EDK2_MACROS) cleanall; \
77 rm -Rf $(EDK2_CONF) Conf/.cache
78endif
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette