Patrick Georgi | ae570d5 | 2015-09-16 16:34:15 +0200 | [diff] [blame] | 1 | top ?= $(abspath ../..) |
| 2 | objutil ?= $(top)/util |
Felix Singer | 2060bff | 2022-02-27 05:06:09 +0100 | [diff] [blame] | 3 | RM ?= rm |
Patrick Georgi | ae570d5 | 2015-09-16 16:34:15 +0200 | [diff] [blame] | 4 | |
Alexander Couzens | 2c68b1c | 2016-06-16 20:16:54 -0700 | [diff] [blame] | 5 | CONFIG_FMD_GENPARSER ?= n |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 6 | |
Alexandru Gagniuc | 4a7b115 | 2014-01-27 17:17:29 -0600 | [diff] [blame] | 7 | HOSTCC ?= $(CC) |
Denis 'GNUtoo' Carikli | 3ef241f | 2015-11-11 05:27:25 +0100 | [diff] [blame] | 8 | PREFIX ?= /usr/local |
| 9 | BINDIR ?= $(PREFIX)/bin |
Yegor Timoshenko | c2e4941 | 2018-10-07 01:58:27 +0000 | [diff] [blame] | 10 | INSTALL ?= /usr/bin/env install |
Stefan Reinauer | 0316e1a | 2015-11-20 17:58:59 +0100 | [diff] [blame] | 11 | OBJCOPY ?= objcopy |
Felix Singer | 2060bff | 2022-02-27 05:06:09 +0100 | [diff] [blame] | 12 | override objutil := .. |
Sol Boucher | 0e53931 | 2015-03-05 15:38:03 -0800 | [diff] [blame] | 13 | |
Paul Kocialkowski | 61486b5 | 2016-07-24 12:14:38 +0200 | [diff] [blame] | 14 | VBOOT_SOURCE ?= $(top)/3rdparty/vboot |
Yu-Ping Wu | 0beddb5 | 2020-03-09 10:58:37 +0800 | [diff] [blame] | 15 | VBOOT_HOST_BUILD ?= $(abspath $(objutil)/vboot_lib) |
Paul Kocialkowski | 61486b5 | 2016-07-24 12:14:38 +0200 | [diff] [blame] | 16 | |
Sol Boucher | 0e53931 | 2015-03-05 15:38:03 -0800 | [diff] [blame] | 17 | .PHONY: all |
Furquan Shaikh | d7fb6a9 | 2021-09-16 22:04:11 -0700 | [diff] [blame] | 18 | all: cbfstool ifittool fmaptool rmodtool ifwitool cbfs-compression-tool elogtool cse_fpt cse_serger |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 19 | |
Antonello Dettori | 75c3705 | 2016-06-05 17:26:01 +0200 | [diff] [blame] | 20 | cbfstool: $(objutil)/cbfstool/cbfstool |
| 21 | |
| 22 | fmaptool: $(objutil)/cbfstool/fmaptool |
| 23 | |
| 24 | rmodtool: $(objutil)/cbfstool/rmodtool |
| 25 | |
| 26 | ifwitool: $(objutil)/cbfstool/ifwitool |
| 27 | |
Philipp Deppenwiese | 5ada002 | 2018-11-20 13:54:49 +0100 | [diff] [blame] | 28 | ifittool: $(objutil)/cbfstool/ifittool |
| 29 | |
Patrick Georgi | c88d16b | 2017-01-11 15:26:58 +0100 | [diff] [blame] | 30 | cbfs-compression-tool: $(objutil)/cbfstool/cbfs-compression-tool |
| 31 | |
Ricardo Quesada | c2cf394 | 2021-07-16 16:49:04 -0700 | [diff] [blame] | 32 | elogtool: $(objutil)/cbfstool/elogtool |
| 33 | |
Furquan Shaikh | 796aeeb | 2021-09-16 22:02:01 -0700 | [diff] [blame] | 34 | cse_fpt: $(objutil)/cbfstool/cse_fpt |
| 35 | |
Furquan Shaikh | d7fb6a9 | 2021-09-16 22:04:11 -0700 | [diff] [blame] | 36 | cse_serger: $(objutil)/cbfstool/cse_serger |
| 37 | |
| 38 | .PHONY: clean cbfstool ifittool fmaptool rmodtool ifwitool cbfs-compression-tool elogtool cse_fpt cse_serger |
Patrick Georgi | b7b56dd8 | 2009-09-14 13:29:27 +0000 | [diff] [blame] | 39 | clean: |
Felix Singer | 2060bff | 2022-02-27 05:06:09 +0100 | [diff] [blame] | 40 | $(RM) -f fmd_parser.c fmd_parser.h fmd_scanner.c fmd_scanner.h |
| 41 | $(RM) -f $(objutil)/cbfstool/cbfstool $(cbfsobj) |
| 42 | $(RM) -f $(objutil)/cbfstool/fmaptool $(fmapobj) |
| 43 | $(RM) -f $(objutil)/cbfstool/rmodtool $(rmodobj) |
| 44 | $(RM) -f $(objutil)/cbfstool/ifwitool $(ifwiobj) |
| 45 | $(RM) -f $(objutil)/cbfstool/ifittool $(ifitobj) |
| 46 | $(RM) -f $(objutil)/cbfstool/cbfs-compression-tool $(cbfscompobj) |
| 47 | $(RM) -f $(objutil)/cbfstool/elogtool $(elogobj) |
| 48 | $(RM) -f $(objutil)/cbfstool/cse_fpt $(cse_fpt_obj) |
| 49 | $(RM) -f $(objutil)/cbfstool/cse_serger $(cse_serger_obj) |
| 50 | $(RM) -rf $(VBOOT_HOST_BUILD) |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 51 | |
Stefan Reinauer | 0316e1a | 2015-11-20 17:58:59 +0100 | [diff] [blame] | 52 | linux_trampoline.c: linux_trampoline.S |
| 53 | rm -f linux_trampoline.c |
| 54 | $(CC) -m32 -o linux_trampoline linux_trampoline.S -ffreestanding -nostdlib -nostdinc -Wl,--defsym=_start=0 |
| 55 | $(OBJCOPY) -Obinary -j .data linux_trampoline trampoline |
| 56 | echo "/* This file is automatically generated. Do not manually change */" > trampoline.c |
Patrick Georgi | 1dd517c | 2020-05-10 20:45:08 +0200 | [diff] [blame] | 57 | echo "/* SPDX-License-Identifier: GPL-2.0-only */" >> trampoline.c |
Stefan Reinauer | 0316e1a | 2015-11-20 17:58:59 +0100 | [diff] [blame] | 58 | xxd -c 16 -i trampoline >> trampoline.c |
Stefan Reinauer | 0316e1a | 2015-11-20 17:58:59 +0100 | [diff] [blame] | 59 | mv trampoline.c linux_trampoline.c |
| 60 | rm linux_trampoline trampoline |
| 61 | |
Martin Roth | 92f447a | 2021-02-14 14:57:06 -0700 | [diff] [blame] | 62 | .PHONY: install distclean help |
Denis 'GNUtoo' Carikli | 3ef241f | 2015-11-11 05:27:25 +0100 | [diff] [blame] | 63 | install: all |
| 64 | mkdir -p $(DESTDIR)$(BINDIR) |
| 65 | $(INSTALL) cbfstool $(DESTDIR)$(BINDIR) |
| 66 | $(INSTALL) fmaptool $(DESTDIR)$(BINDIR) |
| 67 | $(INSTALL) rmodtool $(DESTDIR)$(BINDIR) |
| 68 | $(INSTALL) ifwitool $(DESTDIR)$(BINDIR) |
Philipp Deppenwiese | 5ada002 | 2018-11-20 13:54:49 +0100 | [diff] [blame] | 69 | $(INSTALL) ifittool $(DESTDIR)$(BINDIR) |
Denis 'GNUtoo' Carikli | 3ef241f | 2015-11-11 05:27:25 +0100 | [diff] [blame] | 70 | $(INSTALL) cbfs-compression-tool $(DESTDIR)$(BINDIR) |
Ricardo Quesada | c2cf394 | 2021-07-16 16:49:04 -0700 | [diff] [blame] | 71 | $(INSTALL) elogtool $(DESTDIR)$(BINDIR) |
Furquan Shaikh | 796aeeb | 2021-09-16 22:02:01 -0700 | [diff] [blame] | 72 | $(INSTALL) cse_fpt $(DESTDIR)$(BINDIR) |
Furquan Shaikh | d7fb6a9 | 2021-09-16 22:04:11 -0700 | [diff] [blame] | 73 | $(INSTALL) cse_serger $(DESTDIR)$(BINDIR) |
Denis 'GNUtoo' Carikli | 3ef241f | 2015-11-11 05:27:25 +0100 | [diff] [blame] | 74 | |
Martin Roth | 92f447a | 2021-02-14 14:57:06 -0700 | [diff] [blame] | 75 | distclean: clean |
| 76 | |
| 77 | help: |
| 78 | @echo "cbfstool & associated tools" |
| 79 | @echo "Targets: all, clean, distclean, help" |
| 80 | @echo " cbfstool - Manipulate CBFS images" |
| 81 | @echo " fmaptool - Compile Flashmap descriptor (fmd) files" |
| 82 | @echo " rmodtool - Create relocatable modules" |
| 83 | @echo " ifwitool - Manipulate Intel FW Image (IFWI)" |
| 84 | @echo " ifittool - Manipulate Intel FW Interface Table (FIT)" |
| 85 | @echo " cbfs-compression-tool - benchmark compression algorithms" |
Ricardo Quesada | c2cf394 | 2021-07-16 16:49:04 -0700 | [diff] [blame] | 86 | @echo " elogtool - Display ELOG events" |
Furquan Shaikh | 796aeeb | 2021-09-16 22:02:01 -0700 | [diff] [blame] | 87 | @echo " cse_fpt - Manage Intel CSE Flash Partition Table (FPT)" |
Furquan Shaikh | d7fb6a9 | 2021-09-16 22:04:11 -0700 | [diff] [blame] | 88 | @echo " cse_serger - Stitch Intel CSE components" |
Martin Roth | 92f447a | 2021-02-14 14:57:06 -0700 | [diff] [blame] | 89 | |
Vadim Bendebury | 98485de | 2018-11-01 20:48:21 -0700 | [diff] [blame] | 90 | ifneq ($(V),1) |
Stefan Reinauer | 30ff362 | 2015-11-21 17:53:32 +0100 | [diff] [blame] | 91 | .SILENT: |
Vadim Bendebury | 98485de | 2018-11-01 20:48:21 -0700 | [diff] [blame] | 92 | endif |
Stefan Reinauer | 30ff362 | 2015-11-21 17:53:32 +0100 | [diff] [blame] | 93 | |
Patrick Georgi | ae570d5 | 2015-09-16 16:34:15 +0200 | [diff] [blame] | 94 | include Makefile.inc |
Patrick Georgi | 67d958b | 2021-05-29 16:12:29 +0200 | [diff] [blame] | 95 | |
| 96 | $(objutil)/cbfstool/cbfstool.o: $(VBOOT_SOURCE)/firmware/include/vb2_sha.h |
Ricardo Quesada | c2cf394 | 2021-07-16 16:49:04 -0700 | [diff] [blame] | 97 | $(objutil)/cbfstool/elogtool.o: $(VBOOT_SOURCE)/firmware/include/vb2_sha.h |
Patrick Georgi | 67d958b | 2021-05-29 16:12:29 +0200 | [diff] [blame] | 98 | |
| 99 | $(VBOOT_SOURCE)/firmware/include/vb2_sha.h: |
| 100 | cd $(VBOOT_SOURCE) && git submodule update --init . |