3
# Sub-Makefile for EFI thunking ROM image.
5
# The thunking ROM image is where the CPU starts in an EFI config. It is
6
# responsible for setting up and switching to protected or long mode and
7
# invoking the SEC CORE image in the Firmware Volume.
11
# Copyright (C) 2009 Sun Microsystems, Inc.
13
# This file is part of VirtualBox Open Source Edition (OSE), as
14
# available from http://www.virtualbox.org. This file is free software;
15
# you can redistribute it and/or modify it under the terms of the GNU
16
# General Public License (GPL) as published by the Free Software
17
# Foundation, in version 2 as it comes in the "COPYING" file of the
18
# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
19
# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
21
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
22
# Clara, CA 95054 USA or visit http://www.sun.com if you need
23
# additional information or have any questions.
26
SUB_DEPTH = ../../../../..
27
include $(KBUILD_PATH)/subheader.kmk
31
# The library containing the ROM binary.
33
LIBRARIES += EfiThunkBin
34
EfiThunkBin_TEMPLATE = VBOXR3
35
EfiThunkBin_DEFS = IN_VBOXDD2
36
EfiThunkBin_SOURCES = $(EfiThunkBin_0_OUTDIR)/EfiThunkBin.c
38
$(EfiThunkBin_0_OUTDIR)/EfiThunkBin.c
40
$$(EfiThunkBin_0_OUTDIR)/EfiThunkBin.c: $$(EfiThunk_1_TARGET) $(VBOX_BIN2C) | $$(dir $$@)
41
$(VBOX_BIN2C) -min 4 -max 4 -ascii -export EfiThunkBinary $< $@
45
# The ROM binary that gets turned into a library.
48
EfiThunk_TEMPLATE = DUMMY
49
EfiThunk_LDTOOL = VBoxDummyObjLdTool
50
EfiThunk_ASTOOL = YASM
51
EfiThunk_ASFLAGS = -f bin -a x86 --force-strict
52
EfiThunk_INCS = ../Firmware2/VBoxPkg/Include
53
EfiThunk_SOURCES = EfiThunk.asm
56
# Used by EfiThunk. Promote to Config.kmk if needed else where.
58
TOOL_VBoxDummyObjLdTool = Dummy Obj LD tool that just copies the object without linking.
59
define TOOL_VBoxDummyObjLdTool_LINK_MISCBIN_CMDS
60
$(CP) -vf $(objs) $(out)
63
include $(KBUILD_PATH)/subfooter.kmk