blob: a60cee1e2758d006713d2140346829c33996bff3 [file] [log] [blame]
Patrick Georgic88d16b2017-01-11 15:26:58 +01001compressionobj :=
2compressionobj += compress.o
3# LZ4
4compressionobj += lz4.o
5compressionobj += lz4hc.o
6compressionobj += lz4frame.o
7compressionobj += xxhash.o
8compressionobj += lz4_wrapper.o
9# LZMA
10compressionobj += lzma.o
11compressionobj += LzFind.o
12compressionobj += LzmaDec.o
13compressionobj += LzmaEnc.o
14
Patrick Georgi0588d192009-08-12 15:00:51 +000015cbfsobj :=
Stefan Reinauer2e200cd2012-10-30 14:02:45 -070016cbfsobj += cbfstool.o
Patrick Georgib7b56dd82009-09-14 13:29:27 +000017cbfsobj += common.o
Hung-Te Lineab2c812013-01-29 01:56:17 +080018cbfsobj += cbfs_image.o
Patrick Georgib7b56dd82009-09-14 13:29:27 +000019cbfsobj += cbfs-mkstage.o
20cbfsobj += cbfs-mkpayload.o
Ronald G. Minnicha8a133d2013-12-30 13:16:18 -080021cbfsobj += elfheaders.o
Aaron Durbin4be16742015-09-15 17:00:23 -050022cbfsobj += rmodule.o
Ronald G. Minnichaa2f7392013-12-03 11:13:35 -080023cbfsobj += xdr.o
Sol Bouchere3260a02015-03-25 13:40:08 -070024cbfsobj += partitioned_file.o
Julius Werner76dab5f2020-03-19 21:09:35 -070025cbfsobj += platform_fixups.o
Julius Werner09f29212015-09-29 13:51:35 -070026# COMMONLIB
Julius Werner4bfbabd2020-05-06 17:27:02 -070027cbfsobj += cbfs_private.o
Furquan Shaikhb0c2fe02016-05-09 12:23:01 -070028cbfsobj += fsp_relocate.o
Sol Bouchere3260a02015-03-25 13:40:08 -070029# FMAP
30cbfsobj += fmap.o
31cbfsobj += kv_pair.o
32cbfsobj += valstr.o
Patrick Georgide36d332013-08-27 20:22:21 +020033# linux as payload
34cbfsobj += linux_trampoline.o
35cbfsobj += cbfs-payload-linux.o
Patrick Georgic88d16b2017-01-11 15:26:58 +010036# compression algorithms
37cbfsobj += $(compressionobj)
Patrick Georgi0588d192009-08-12 15:00:51 +000038
Sol Boucher69b88bf2015-02-26 11:47:19 -080039fmapobj :=
40fmapobj += fmaptool.o
Sol Boucher023e8292015-03-18 10:13:48 -070041fmapobj += cbfs_sections.o
Sol Boucher69b88bf2015-02-26 11:47:19 -080042fmapobj += fmap_from_fmd.o
43fmapobj += fmd.o
44fmapobj += fmd_parser.o
45fmapobj += fmd_scanner.o
46# FMAP
47fmapobj += fmap.o
48fmapobj += kv_pair.o
49fmapobj += valstr.o
50
Sol Boucher0e539312015-03-05 15:38:03 -080051rmodobj :=
Aaron Durbin4fde5a62014-03-07 15:11:53 -060052rmodobj += rmodtool.o
53rmodobj += rmodule.o
54rmodobj += common.o
55rmodobj += elfheaders.o
56rmodobj += xdr.o
57
Furquan Shaikh233f1b62016-05-19 16:12:16 -070058ifwiobj :=
59ifwiobj += ifwitool.o
60ifwiobj += common.o
61
Philipp Deppenwiese5ada0022018-11-20 13:54:49 +010062ifitobj :=
63ifitobj += ifittool.o
64ifitobj += common.o
65ifitobj += fit.o
66ifitobj += cbfs_image.o
67# Make it link ....
68ifitobj += xdr.o
69ifitobj += elfheaders.o
70ifitobj += partitioned_file.o
71ifitobj += cbfs-mkstage.o
72ifitobj += cbfs-mkpayload.o
73ifitobj += rmodule.o
Philipp Deppenwiese5ada0022018-11-20 13:54:49 +010074# FMAP
75ifitobj += fmap.o
76ifitobj += kv_pair.o
77ifitobj += valstr.o
78# compression algorithms
79ifitobj += $(compressionobj)
80
81
Patrick Georgic88d16b2017-01-11 15:26:58 +010082cbfscompobj :=
83cbfscompobj += $(compressionobj)
84cbfscompobj += cbfscomptool.o
85
Marshall Dawson30cf1552019-03-19 14:48:33 -060086amdcompobj :=
87amdcompobj += amdcompress.o
88amdcompobj += elfheaders.o
89amdcompobj += common.o
90amdcompobj += xdr.o
91
Ricardo Quesadac2cf3942021-07-16 16:49:04 -070092elogobj :=
93elogobj := elogtool.o
94elogobj += eventlog.o
95elogobj += valstr.o
96elogobj += elog.o
97elogobj += common.o
Edward O'Callaghan774dcff2022-06-06 20:01:04 +100098elogobj += flashrom.o
Ricardo Quesadac2cf3942021-07-16 16:49:04 -070099
Furquan Shaikh796aeeb2021-09-16 22:02:01 -0700100include $(top)/util/cbfstool/fpt_formats/Makefile.inc
101cse_fpt_obj :=
102cse_fpt_obj += cse_fpt.o
103cse_fpt_obj += common.o
Furquan Shaikh555f0402021-10-08 15:18:33 -0700104cse_fpt_obj += cse_helpers.o
Furquan Shaikh796aeeb2021-09-16 22:02:01 -0700105cse_fpt_obj += $(foreach var, $(fpt_formats_obj), $(var))
106
Furquan Shaikhd7fb6a92021-09-16 22:04:11 -0700107include $(top)/util/cbfstool/bpdt_formats/Makefile.inc
108cse_serger_obj :=
109cse_serger_obj += cse_serger.o
110cse_serger_obj += common.o
Furquan Shaikh555f0402021-10-08 15:18:33 -0700111cse_serger_obj += cse_helpers.o
Furquan Shaikhd7fb6a92021-09-16 22:04:11 -0700112cse_serger_obj += $(foreach var, $(bpdt_formats_obj), $(var))
113
Martin Roth92f447a2021-02-14 14:57:06 -0700114TOOLCFLAGS ?= -Werror -Wall -Wextra -Wshadow
Sol Boucher0e539312015-03-05 15:38:03 -0800115TOOLCFLAGS += -Wcast-qual -Wmissing-prototypes -Wredundant-decls -Wshadow
116TOOLCFLAGS += -Wstrict-prototypes -Wwrite-strings
Patrick Georgi8474e7d2017-01-11 17:17:18 +0100117TOOLCFLAGS += -O2
Sol Boucher69b88bf2015-02-26 11:47:19 -0800118TOOLCPPFLAGS ?= -D_DEFAULT_SOURCE # memccpy() from string.h
Julius Wernerd6900a92020-01-29 11:34:44 -0800119TOOLCPPFLAGS += -D_BSD_SOURCE -D_SVID_SOURCE # _DEFAULT_SOURCE for older glibc
Julius Werner4bfbabd2020-05-06 17:27:02 -0700120TOOLCPPFLAGS += -D_GNU_SOURCE # memmem() from string.h
Sol Boucher69b88bf2015-02-26 11:47:19 -0800121TOOLCPPFLAGS += -I$(top)/util/cbfstool/flashmap
Patrick Georgi7b321452015-05-19 16:43:05 +0200122TOOLCPPFLAGS += -I$(top)/util/cbfstool
123TOOLCPPFLAGS += -I$(objutil)/cbfstool
Julius Werner98eeb962019-12-11 15:47:42 -0800124TOOLCPPFLAGS += -I$(top)/src/commonlib/include -I$(top)/src/commonlib/bsd/include
125TOOLCPPFLAGS += -include $(top)/src/commonlib/bsd/include/commonlib/bsd/compiler.h
Paul Kocialkowski61486b52016-07-24 12:14:38 +0200126TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/firmware/include
127TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/firmware/2lib/include
Julius Wernerd4775652020-03-13 16:43:34 -0700128TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/host/include
Ricardo Quesadac2cf3942021-07-16 16:49:04 -0700129TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/host/lib/include
Aaron Durbin8a414a02015-10-01 17:02:45 -0500130# UEFI header file support. It's not pretty, but that's what we currently
131# have right now.
132TOOLCPPFLAGS += -I$(top)/src
133TOOLCPPFLAGS += -I$(top)/src/vendorcode/intel/edk2/uefi_2.4/MdePkg/Include
134
Paul Menzel6548ae92015-05-03 09:35:32 +0200135TOOLLDFLAGS ?=
Werner Zeh8c3780a2015-10-02 09:56:32 +0200136HOSTCFLAGS += -fms-extensions
Sol Boucher0e539312015-03-05 15:38:03 -0800137
Zheng Baoc31cdd82012-10-22 16:39:24 +0800138ifeq ($(shell uname -s | cut -c-7 2>/dev/null), MINGW32)
Patrick Georgicdeb1c42015-09-16 16:19:26 +0200139TOOLCFLAGS += -mno-ms-bitfields
Zheng Baoc31cdd82012-10-22 16:39:24 +0800140endif
Stefan Reinauer354c11d2015-09-15 17:41:07 -0700141ifeq ($(shell uname -o 2>/dev/null), Cygwin)
Julius Werner3833f0f2019-12-11 22:01:32 -0800142TOOLCFLAGS+=-std=gnu11
Stefan Reinauer354c11d2015-09-15 17:41:07 -0700143TOOLCPPFLAGS+=-D_GNU_SOURCE
144else
Julius Werner3833f0f2019-12-11 22:01:32 -0800145TOOLCFLAGS+=-std=c11
Stefan Reinauer354c11d2015-09-15 17:41:07 -0700146endif
Zheng Baoc31cdd82012-10-22 16:39:24 +0800147
Manoj Guptadfb8d802022-04-27 20:23:11 -0700148LZ4CFLAGS ?= -Wno-strict-prototypes
149
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800150VBOOT_HOSTLIB = $(VBOOT_HOST_BUILD)/libvboot_host.a
151
152$(VBOOT_HOSTLIB):
153 printf " MAKE $(subst $(objutil)/,,$(@))\n"
154 unset CFLAGS LDFLAGS; $(MAKE) -C $(VBOOT_SOURCE) \
155 BUILD=$(VBOOT_HOST_BUILD) \
156 CC="$(HOSTCC)" \
Patrick Georgic6dd4432020-06-29 21:01:44 +0200157 PKG_CONFIG="true" \
Angel Ponsbb58c1e2022-06-18 12:00:33 +0200158 USE_FLASHROM=0 \
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800159 V=$(V) \
Nico Huber6cd4d322021-06-22 14:31:20 +0000160 DEBUG= \
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800161 hostlib
162
Patrick Georgi7b321452015-05-19 16:43:05 +0200163$(objutil)/cbfstool/%.o: $(objutil)/cbfstool/%.c
164 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
165 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
166
Patrick Georgia2acbc72010-04-16 22:48:57 +0000167$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/%.c
168 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
Sol Boucher0e539312015-03-05 15:38:03 -0800169 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
Patrick Georgi0588d192009-08-12 15:00:51 +0000170
Sol Boucher69b88bf2015-02-26 11:47:19 -0800171$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/flashmap/%.c
172 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
173 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
174
Stefan Reinaueraa3f7ba2013-03-28 16:51:45 -0700175$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/%.c
176 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
Sol Boucher0e539312015-03-05 15:38:03 -0800177 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
Patrick Georgib7b56dd82009-09-14 13:29:27 +0000178
Stefan Reinauer2e200cd2012-10-30 14:02:45 -0700179$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/%.c
Zheng Baoa182cbd2012-12-14 15:44:59 +0800180 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
Sol Boucher0e539312015-03-05 15:38:03 -0800181 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
Patrick Georgib7b56dd82009-09-14 13:29:27 +0000182
Aaron Durbin8a414a02015-10-01 17:02:45 -0500183$(objutil)/cbfstool/%.o: $(top)/src/commonlib/%.c
184 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
185 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
186
Julius Werner98eeb962019-12-11 15:47:42 -0800187$(objutil)/cbfstool/%.o: $(top)/src/commonlib/bsd/%.c
188 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
189 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
190
Julius Werner09f29212015-09-29 13:51:35 -0700191$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lz4/lib/%.c
192 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
Manoj Guptadfb8d802022-04-27 20:23:11 -0700193 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) $(LZ4CFLAGS) -c -o $@ $<
Julius Werner09f29212015-09-29 13:51:35 -0700194
Furquan Shaikh796aeeb2021-09-16 22:02:01 -0700195$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/fpt_formats/%.c
196 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
197 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
198
Furquan Shaikhd7fb6a92021-09-16 22:04:11 -0700199$(objutil)/cbfstool/%.o: $(top)/util/cbfstool/bpdt_formats/%.c
200 printf " HOSTCC $(subst $(objutil)/,,$(@))\n"
201 $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
202
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800203$(objutil)/cbfstool/cbfstool: $(addprefix $(objutil)/cbfstool/,$(cbfsobj)) $(VBOOT_HOSTLIB)
Stefan Reinaueraa3f7ba2013-03-28 16:51:45 -0700204 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800205 $(HOSTCC) -v $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cbfsobj)) $(VBOOT_HOSTLIB)
Aaron Durbin4fde5a62014-03-07 15:11:53 -0600206
Sol Boucher69b88bf2015-02-26 11:47:19 -0800207$(objutil)/cbfstool/fmaptool: $(addprefix $(objutil)/cbfstool/,$(fmapobj))
208 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
209 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(fmapobj))
210
Patrick Georgi913e1712014-07-15 12:28:12 +0200211$(objutil)/cbfstool/rmodtool: $(addprefix $(objutil)/cbfstool/,$(rmodobj))
Aaron Durbin4fde5a62014-03-07 15:11:53 -0600212 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
Paul Menzel6548ae92015-05-03 09:35:32 +0200213 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(rmodobj))
Sol Boucher0e539312015-03-05 15:38:03 -0800214
Furquan Shaikh233f1b62016-05-19 16:12:16 -0700215$(objutil)/cbfstool/ifwitool: $(addprefix $(objutil)/cbfstool/,$(ifwiobj))
216 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
217 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(ifwiobj))
218
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800219$(objutil)/cbfstool/ifittool: $(addprefix $(objutil)/cbfstool/,$(ifitobj)) $(VBOOT_HOSTLIB)
Philipp Deppenwiese5ada0022018-11-20 13:54:49 +0100220 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
Yu-Ping Wu0beddb52020-03-09 10:58:37 +0800221 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(ifitobj)) $(VBOOT_HOSTLIB)
Philipp Deppenwiese5ada0022018-11-20 13:54:49 +0100222
Patrick Georgic88d16b2017-01-11 15:26:58 +0100223$(objutil)/cbfstool/cbfs-compression-tool: $(addprefix $(objutil)/cbfstool/,$(cbfscompobj))
224 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
225 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cbfscompobj))
226
Marshall Dawson30cf1552019-03-19 14:48:33 -0600227$(objutil)/cbfstool/amdcompress: $(addprefix $(objutil)/cbfstool/,$(amdcompobj))
228 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
229 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(amdcompobj)) -lz
230
Martin Rothe3e965b2022-02-25 17:28:04 -0700231$(objutil)/cbfstool/elogtool: $(addprefix $(objutil)/cbfstool/,$(elogobj)) $(VBOOT_HOSTLIB)
Ricardo Quesadac2cf3942021-07-16 16:49:04 -0700232 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
Martin Rothe3e965b2022-02-25 17:28:04 -0700233 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(elogobj)) $(VBOOT_HOSTLIB)
Ricardo Quesadac2cf3942021-07-16 16:49:04 -0700234
Furquan Shaikh796aeeb2021-09-16 22:02:01 -0700235$(objutil)/cbfstool/cse_fpt: $(addprefix $(objutil)/cbfstool/,$(cse_fpt_obj))
236 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
237 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cse_fpt_obj))
238
Furquan Shaikhd7fb6a92021-09-16 22:04:11 -0700239$(objutil)/cbfstool/cse_serger: $(addprefix $(objutil)/cbfstool/,$(cse_serger_obj))
240 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n"
241 $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cse_serger_obj))
242
Sol Boucher69b88bf2015-02-26 11:47:19 -0800243# Yacc source is superset of header
Kyösti Mälkkic8771492015-05-09 08:06:02 +0300244$(objutil)/cbfstool/fmd.o: TOOLCFLAGS += -Wno-redundant-decls
Sol Boucher69b88bf2015-02-26 11:47:19 -0800245$(objutil)/cbfstool/fmd_parser.o: TOOLCFLAGS += -Wno-redundant-decls
Kyösti Mälkkic8771492015-05-09 08:06:02 +0300246# Lex generates unneeded functions and declarations
247$(objutil)/cbfstool/fmd_scanner.o: TOOLCFLAGS += -Wno-redundant-decls
Sol Boucher69b88bf2015-02-26 11:47:19 -0800248$(objutil)/cbfstool/fmd_scanner.o: TOOLCFLAGS += -Wno-unused-function
Sol Boucher0e539312015-03-05 15:38:03 -0800249# Tolerate lzma sdk warnings
250$(objutil)/cbfstool/LzmaEnc.o: TOOLCFLAGS += -Wno-sign-compare -Wno-cast-qual
Julius Werner4bfbabd2020-05-06 17:27:02 -0700251# Tolerate commonlib warnings
252$(objutil)/cbfstool/cbfs_private.o: TOOLCFLAGS += -Wno-sign-compare
Julius Werner09f29212015-09-29 13:51:35 -0700253# Tolerate lz4 warnings
254$(objutil)/cbfstool/lz4.o: TOOLCFLAGS += -Wno-missing-prototypes
Nico Huber591dbfe2019-12-14 20:44:47 +0100255$(objutil)/cbfstool/lz4_wrapper.o: TOOLCFLAGS += -Wno-attributes
Sol Boucher69b88bf2015-02-26 11:47:19 -0800256
Patrick Georgi7b321452015-05-19 16:43:05 +0200257$(objutil)/cbfstool/fmd.o: $(objutil)/cbfstool/fmd_parser.h
258$(objutil)/cbfstool/fmd.o: $(objutil)/cbfstool/fmd_scanner.h
Kyösti Mälkkid32b2732015-05-15 09:27:34 +0300259$(objutil)/cbfstool/fmd_parser.o: $(objutil)/cbfstool/fmd.o
260$(objutil)/cbfstool/fmd_scanner.o: $(objutil)/cbfstool/fmd.o
Patrick Georgi2b807342016-06-28 20:45:34 +0200261$(objutil)/cbfstool/fmd_scanner.o: TOOLCFLAGS += -Wno-sign-compare
Kyösti Mälkkid32b2732015-05-15 09:27:34 +0300262
Patrick Georgi7b321452015-05-19 16:43:05 +0200263$(objutil)/cbfstool/%: $(top)/util/cbfstool/%_shipped
Kyösti Mälkkid32b2732015-05-15 09:27:34 +0300264 mkdir -p $(dir $@)
265 cp $< $@
266
Sol Boucher69b88bf2015-02-26 11:47:19 -0800267ifeq ($(CONFIG_FMD_GENPARSER),y)
268TOOLLEX := lex
269TOOLYACC := yacc
270
Kyösti Mälkkid32b2732015-05-15 09:27:34 +0300271# the .c rule also creates .h
272$(top)/util/cbfstool/fmd_scanner.h_shipped: $(top)/util/cbfstool/fmd_scanner.c_shipped
273$(top)/util/cbfstool/fmd_scanner.c_shipped: $(top)/util/cbfstool/fmd_scanner.l
Sol Boucher69b88bf2015-02-26 11:47:19 -0800274 echo " LEX util/cbfstool/fmd_scanner.[ch]"
Kyösti Mälkkid32b2732015-05-15 09:27:34 +0300275 $(TOOLLEX) -t --header-file=$(top)/util/cbfstool/fmd_scanner.h_shipped $< >$(top)/util/cbfstool/fmd_scanner.c_shipped
276
277# the .c rule also creates .h
278$(top)/util/cbfstool/fmd_parser.h_shipped: $(top)/util/cbfstool/fmd_parser.c_shipped
279$(top)/util/cbfstool/fmd_parser.c_shipped: $(top)/util/cbfstool/fmd_parser.y
Sol Boucher69b88bf2015-02-26 11:47:19 -0800280 echo " YACC util/cbfstool/fmd_parser.[ch]"
281 $(TOOLYACC) -d $<
Kyösti Mälkkid32b2732015-05-15 09:27:34 +0300282 mv -f y.tab.c $(top)/util/cbfstool/fmd_parser.c_shipped
283 mv -f y.tab.h $(top)/util/cbfstool/fmd_parser.h_shipped
284
285endif # CONFIG_FMD_GENPARSER