2 # Builds test programs. This is launched from elf_test.BuildElfTestFiles()
4 # Copyright (C) 2017 Google, Inc
5 # Written by Simon Glass <sjg@chromium.org>
7 # SPDX-License-Identifier: GPL-2.0+
11 CFLAGS := -march=i386 -m32 -nostdlib -I $(SRC)../../../include \
12 -Wl,--no-dynamic-linker
14 LDS_UCODE := -T $(SRC)u_boot_ucode_ptr.lds
15 LDS_BINMAN := -T $(SRC)u_boot_binman_syms.lds
16 LDS_BINMAN_BAD := -T $(SRC)u_boot_binman_syms_bad.lds
17 LDS_BINMAN_X86 := -T $(SRC)u_boot_binman_syms_x86.lds
19 TARGETS = u_boot_ucode_ptr u_boot_no_ucode_ptr bss_data \
20 u_boot_binman_syms u_boot_binman_syms.bin u_boot_binman_syms_bad \
21 u_boot_binman_syms_size u_boot_binman_syms_x86
25 u_boot_no_ucode_ptr: CFLAGS += $(LDS_UCODE)
26 u_boot_no_ucode_ptr: u_boot_no_ucode_ptr.c
28 u_boot_ucode_ptr: CFLAGS += $(LDS_UCODE)
29 u_boot_ucode_ptr: u_boot_ucode_ptr.c
31 bss_data: CFLAGS += $(SRC)bss_data.lds
34 u_boot_binman_syms.bin: u_boot_binman_syms
35 objcopy -O binary $< -R .note.gnu.build-id $@
37 u_boot_binman_syms: CFLAGS += $(LDS_BINMAN)
38 u_boot_binman_syms: u_boot_binman_syms.c
40 u_boot_binman_syms_x86: CFLAGS += $(LDS_BINMAN_X86)
41 u_boot_binman_syms_x86: u_boot_binman_syms_x86.c
43 u_boot_binman_syms_bad: CFLAGS += $(LDS_BINMAN_BAD)
44 u_boot_binman_syms_bad: u_boot_binman_syms_bad.c
46 u_boot_binman_syms_size: CFLAGS += $(LDS_BINMAN)
47 u_boot_binman_syms_size: u_boot_binman_syms_size.c
53 @echo "Makefile for binman test programs"
55 @echo "Intended for use on x86 hosts"
59 @echo -e "\thelp - Print help (this is it!)"
60 @echo -e "\tall - Builds test programs (default targget)"
61 @echo -e "\tclean - Delete output files"