1# SPDX-License-Identifier: GPL-2.0+
2#
3# (C) Copyright 2017, Heinrich Schuchardt <xypron.glpk@gmx.de>
4
5# This file only gets included with CONFIG_EFI_LOADER set, so all
6# object inclusion implicitly depends on it
7
8asflags-y += -DHOST_ARCH="$(HOST_ARCH)"
9ccflags-y += -DHOST_ARCH="$(HOST_ARCH)"
10
11CFLAGS_efi_selftest_miniapp_exception.o := $(CFLAGS_EFI) -Os -ffreestanding
12CFLAGS_REMOVE_efi_selftest_miniapp_exception.o := $(CFLAGS_NON_EFI)
13CFLAGS_efi_selftest_miniapp_exit.o := $(CFLAGS_EFI) -Os -ffreestanding
14CFLAGS_REMOVE_efi_selftest_miniapp_exit.o := $(CFLAGS_NON_EFI)
15CFLAGS_efi_selftest_miniapp_return.o := $(CFLAGS_EFI) -Os -ffreestanding
16CFLAGS_REMOVE_efi_selftest_miniapp_return.o := $(CFLAGS_NON_EFI)
17
18obj-y += \
19efi_selftest.o \
20efi_selftest_bitblt.o \
21efi_selftest_config_table.o \
22efi_selftest_controllers.o \
23efi_selftest_console.o \
24efi_selftest_crc32.o \
25efi_selftest_devicepath_util.o \
26efi_selftest_events.o \
27efi_selftest_event_groups.o \
28efi_selftest_exception.o \
29efi_selftest_exitbootservices.o \
30efi_selftest_gop.o \
31efi_selftest_load_file.o \
32efi_selftest_loaded_image.o \
33efi_selftest_loadimage.o \
34efi_selftest_manageprotocols.o \
35efi_selftest_mem.o \
36efi_selftest_memory.o \
37efi_selftest_open_protocol.o \
38efi_selftest_register_notify.o \
39efi_selftest_reset.o \
40efi_selftest_set_virtual_address_map.o \
41efi_selftest_startimage_exit.o \
42efi_selftest_startimage_return.o \
43efi_selftest_textinput.o \
44efi_selftest_textinputex.o \
45efi_selftest_textoutput.o \
46efi_selftest_tpl.o \
47efi_selftest_util.o \
48efi_selftest_variables_common.o \
49efi_selftest_variables.o \
50efi_selftest_variables_runtime.o \
51efi_selftest_watchdog.o
52
53obj-$(CONFIG_EFI_ECPT) += efi_selftest_ecpt.o
54obj-$(CONFIG_NETDEVICES) += efi_selftest_snp.o
55
56obj-$(CONFIG_EFI_DEVICE_PATH_TO_TEXT) += efi_selftest_devicepath.o
57obj-$(CONFIG_EFI_UNICODE_COLLATION_PROTOCOL2) += \
58efi_selftest_unicode_collation.o
59
60ifeq ($(CONFIG_CPU_V7A)$(CONFIG_CPU_V7M)$(CONFIG_CPU_V7R),y)
61obj-y += efi_selftest_unaligned.o
62endif
63obj-$(CONFIG_EFI_LOADER_HII) += efi_selftest_hii.o
64obj-$(CONFIG_EFI_RNG_PROTOCOL) += efi_selftest_rng.o
65obj-$(CONFIG_EFI_GET_TIME) += efi_selftest_rtc.o
66obj-$(CONFIG_EFI_TCG2_PROTOCOL) += efi_selftest_tcg2.o
67
68ifeq ($(CONFIG_GENERATE_ACPI_TABLE),)
69obj-y += efi_selftest_fdt.o
70endif
71
72ifeq ($(CONFIG_BLK)$(CONFIG_DOS_PARTITION),yy)
73obj-y += efi_selftest_block_device.o
74endif
75
76obj-$(CONFIG_EFI_ESRT) += efi_selftest_esrt.o
77
78targets += \
79efi_miniapp_file_image_exception.h \
80efi_miniapp_file_image_exit.h \
81efi_miniapp_file_image_return.h \
82efi_selftest_miniapp_exception.efi \
83efi_selftest_miniapp_exit.efi \
84efi_selftest_miniapp_return.efi
85
86$(obj)/efi_miniapp_file_image_exception.h: $(obj)/efi_selftest_miniapp_exception.efi
87	$(obj)/../../tools/file2include $(obj)/efi_selftest_miniapp_exception.efi > \
88	$(obj)/efi_miniapp_file_image_exception.h
89
90$(obj)/efi_miniapp_file_image_exit.h: $(obj)/efi_selftest_miniapp_exit.efi
91	$(obj)/../../tools/file2include $(obj)/efi_selftest_miniapp_exit.efi > \
92	$(obj)/efi_miniapp_file_image_exit.h
93
94$(obj)/efi_miniapp_file_image_return.h: $(obj)/efi_selftest_miniapp_return.efi
95	$(obj)/../../tools/file2include $(obj)/efi_selftest_miniapp_return.efi > \
96	$(obj)/efi_miniapp_file_image_return.h
97
98$(obj)/efi_selftest_exception.o: $(obj)/efi_miniapp_file_image_exception.h
99
100$(obj)/efi_selftest_load_file.o: $(obj)/efi_miniapp_file_image_exit.h
101
102$(obj)/efi_selftest_loadimage.o: $(obj)/efi_miniapp_file_image_exit.h
103
104$(obj)/efi_selftest_startimage_exit.o: $(obj)/efi_miniapp_file_image_exit.h
105
106$(obj)/efi_selftest_startimage_return.o: $(obj)/efi_miniapp_file_image_return.h
107