Documentation: Get rid of trailing whitespaces
[coreboot.git] / util / cbfstool / Makefile.inc
bloba60cee1e2758d006713d2140346829c33996bff3
1 compressionobj :=
2 compressionobj += compress.o
3 # LZ4
4 compressionobj += lz4.o
5 compressionobj += lz4hc.o
6 compressionobj += lz4frame.o
7 compressionobj += xxhash.o
8 compressionobj += lz4_wrapper.o
9 # LZMA
10 compressionobj += lzma.o
11 compressionobj += LzFind.o
12 compressionobj += LzmaDec.o
13 compressionobj += LzmaEnc.o
15 cbfsobj :=
16 cbfsobj += cbfstool.o
17 cbfsobj += common.o
18 cbfsobj += cbfs_image.o
19 cbfsobj += cbfs-mkstage.o
20 cbfsobj += cbfs-mkpayload.o
21 cbfsobj += elfheaders.o
22 cbfsobj += rmodule.o
23 cbfsobj += xdr.o
24 cbfsobj += partitioned_file.o
25 cbfsobj += platform_fixups.o
26 # COMMONLIB
27 cbfsobj += cbfs_private.o
28 cbfsobj += fsp_relocate.o
29 # FMAP
30 cbfsobj += fmap.o
31 cbfsobj += kv_pair.o
32 cbfsobj += valstr.o
33 # linux as payload
34 cbfsobj += linux_trampoline.o
35 cbfsobj += cbfs-payload-linux.o
36 # compression algorithms
37 cbfsobj += $(compressionobj)
39 fmapobj :=
40 fmapobj += fmaptool.o
41 fmapobj += cbfs_sections.o
42 fmapobj += fmap_from_fmd.o
43 fmapobj += fmd.o
44 fmapobj += fmd_parser.o
45 fmapobj += fmd_scanner.o
46 # FMAP
47 fmapobj += fmap.o
48 fmapobj += kv_pair.o
49 fmapobj += valstr.o
51 rmodobj :=
52 rmodobj += rmodtool.o
53 rmodobj += rmodule.o
54 rmodobj += common.o
55 rmodobj += elfheaders.o
56 rmodobj += xdr.o
58 ifwiobj :=
59 ifwiobj += ifwitool.o
60 ifwiobj += common.o
62 ifitobj :=
63 ifitobj += ifittool.o
64 ifitobj += common.o
65 ifitobj += fit.o
66 ifitobj += cbfs_image.o
67 # Make it link ....
68 ifitobj += xdr.o
69 ifitobj += elfheaders.o
70 ifitobj += partitioned_file.o
71 ifitobj += cbfs-mkstage.o
72 ifitobj += cbfs-mkpayload.o
73 ifitobj += rmodule.o
74 # FMAP
75 ifitobj += fmap.o
76 ifitobj += kv_pair.o
77 ifitobj += valstr.o
78 # compression algorithms
79 ifitobj += $(compressionobj)
82 cbfscompobj :=
83 cbfscompobj += $(compressionobj)
84 cbfscompobj += cbfscomptool.o
86 amdcompobj :=
87 amdcompobj += amdcompress.o
88 amdcompobj += elfheaders.o
89 amdcompobj += common.o
90 amdcompobj += xdr.o
92 elogobj :=
93 elogobj := elogtool.o
94 elogobj += eventlog.o
95 elogobj += valstr.o
96 elogobj += elog.o
97 elogobj += common.o
98 elogobj += flashrom.o
100 include $(top)/util/cbfstool/fpt_formats/Makefile.inc
101 cse_fpt_obj :=
102 cse_fpt_obj += cse_fpt.o
103 cse_fpt_obj += common.o
104 cse_fpt_obj += cse_helpers.o
105 cse_fpt_obj += $(foreach var, $(fpt_formats_obj), $(var))
107 include $(top)/util/cbfstool/bpdt_formats/Makefile.inc
108 cse_serger_obj :=
109 cse_serger_obj += cse_serger.o
110 cse_serger_obj += common.o
111 cse_serger_obj += cse_helpers.o
112 cse_serger_obj += $(foreach var, $(bpdt_formats_obj), $(var))
114 TOOLCFLAGS ?= -Werror -Wall -Wextra -Wshadow
115 TOOLCFLAGS += -Wcast-qual -Wmissing-prototypes -Wredundant-decls -Wshadow
116 TOOLCFLAGS += -Wstrict-prototypes -Wwrite-strings
117 TOOLCFLAGS += -O2
118 TOOLCPPFLAGS ?= -D_DEFAULT_SOURCE # memccpy() from string.h
119 TOOLCPPFLAGS += -D_BSD_SOURCE -D_SVID_SOURCE # _DEFAULT_SOURCE for older glibc
120 TOOLCPPFLAGS += -D_GNU_SOURCE # memmem() from string.h
121 TOOLCPPFLAGS += -I$(top)/util/cbfstool/flashmap
122 TOOLCPPFLAGS += -I$(top)/util/cbfstool
123 TOOLCPPFLAGS += -I$(objutil)/cbfstool
124 TOOLCPPFLAGS += -I$(top)/src/commonlib/include -I$(top)/src/commonlib/bsd/include
125 TOOLCPPFLAGS += -include $(top)/src/commonlib/bsd/include/commonlib/bsd/compiler.h
126 TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/firmware/include
127 TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/firmware/2lib/include
128 TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/host/include
129 TOOLCPPFLAGS += -I$(VBOOT_SOURCE)/host/lib/include
130 # UEFI header file support. It's not pretty, but that's what we currently
131 # have right now.
132 TOOLCPPFLAGS += -I$(top)/src
133 TOOLCPPFLAGS += -I$(top)/src/vendorcode/intel/edk2/uefi_2.4/MdePkg/Include
135 TOOLLDFLAGS ?=
136 HOSTCFLAGS += -fms-extensions
138 ifeq ($(shell uname -s | cut -c-7 2>/dev/null), MINGW32)
139 TOOLCFLAGS += -mno-ms-bitfields
140 endif
141 ifeq ($(shell uname -o 2>/dev/null), Cygwin)
142 TOOLCFLAGS+=-std=gnu11
143 TOOLCPPFLAGS+=-D_GNU_SOURCE
144 else
145 TOOLCFLAGS+=-std=c11
146 endif
148 LZ4CFLAGS ?= -Wno-strict-prototypes
150 VBOOT_HOSTLIB = $(VBOOT_HOST_BUILD)/libvboot_host.a
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)" \
157                 PKG_CONFIG="true" \
158                 USE_FLASHROM=0 \
159                 V=$(V) \
160                 DEBUG= \
161                 hostlib
163 $(objutil)/cbfstool/%.o: $(objutil)/cbfstool/%.c
164         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
165         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
167 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/%.c
168         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
169         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
171 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/flashmap/%.c
172         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
173         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
175 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/%.c
176         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
177         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
179 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/%.c
180         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
181         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
183 $(objutil)/cbfstool/%.o: $(top)/src/commonlib/%.c
184         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
185         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
187 $(objutil)/cbfstool/%.o: $(top)/src/commonlib/bsd/%.c
188         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
189         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
191 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/lz4/lib/%.c
192         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
193         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) $(LZ4CFLAGS) -c -o $@ $<
195 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/fpt_formats/%.c
196         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
197         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
199 $(objutil)/cbfstool/%.o: $(top)/util/cbfstool/bpdt_formats/%.c
200         printf "    HOSTCC     $(subst $(objutil)/,,$(@))\n"
201         $(HOSTCC) $(TOOLCPPFLAGS) $(TOOLCFLAGS) $(HOSTCFLAGS) -c -o $@ $<
203 $(objutil)/cbfstool/cbfstool: $(addprefix $(objutil)/cbfstool/,$(cbfsobj)) $(VBOOT_HOSTLIB)
204         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
205         $(HOSTCC) -v $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cbfsobj)) $(VBOOT_HOSTLIB)
207 $(objutil)/cbfstool/fmaptool: $(addprefix $(objutil)/cbfstool/,$(fmapobj))
208         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
209         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(fmapobj))
211 $(objutil)/cbfstool/rmodtool: $(addprefix $(objutil)/cbfstool/,$(rmodobj))
212         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
213         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(rmodobj))
215 $(objutil)/cbfstool/ifwitool: $(addprefix $(objutil)/cbfstool/,$(ifwiobj))
216         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
217         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(ifwiobj))
219 $(objutil)/cbfstool/ifittool: $(addprefix $(objutil)/cbfstool/,$(ifitobj)) $(VBOOT_HOSTLIB)
220         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
221         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(ifitobj)) $(VBOOT_HOSTLIB)
223 $(objutil)/cbfstool/cbfs-compression-tool: $(addprefix $(objutil)/cbfstool/,$(cbfscompobj))
224         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
225         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(cbfscompobj))
227 $(objutil)/cbfstool/amdcompress: $(addprefix $(objutil)/cbfstool/,$(amdcompobj))
228         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
229         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(amdcompobj)) -lz
231 $(objutil)/cbfstool/elogtool: $(addprefix $(objutil)/cbfstool/,$(elogobj)) $(VBOOT_HOSTLIB)
232         printf "    HOSTCC     $(subst $(objutil)/,,$(@)) (link)\n"
233         $(HOSTCC) $(TOOLLDFLAGS) -o $@ $(addprefix $(objutil)/cbfstool/,$(elogobj)) $(VBOOT_HOSTLIB)
235 $(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))
239 $(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))
243 # Yacc source is superset of header
244 $(objutil)/cbfstool/fmd.o: TOOLCFLAGS += -Wno-redundant-decls
245 $(objutil)/cbfstool/fmd_parser.o: TOOLCFLAGS += -Wno-redundant-decls
246 # Lex generates unneeded functions and declarations
247 $(objutil)/cbfstool/fmd_scanner.o: TOOLCFLAGS += -Wno-redundant-decls
248 $(objutil)/cbfstool/fmd_scanner.o: TOOLCFLAGS += -Wno-unused-function
249 # Tolerate lzma sdk warnings
250 $(objutil)/cbfstool/LzmaEnc.o: TOOLCFLAGS += -Wno-sign-compare -Wno-cast-qual
251 # Tolerate commonlib warnings
252 $(objutil)/cbfstool/cbfs_private.o: TOOLCFLAGS += -Wno-sign-compare
253 # Tolerate lz4 warnings
254 $(objutil)/cbfstool/lz4.o: TOOLCFLAGS += -Wno-missing-prototypes
255 $(objutil)/cbfstool/lz4_wrapper.o: TOOLCFLAGS += -Wno-attributes
257 $(objutil)/cbfstool/fmd.o: $(objutil)/cbfstool/fmd_parser.h
258 $(objutil)/cbfstool/fmd.o: $(objutil)/cbfstool/fmd_scanner.h
259 $(objutil)/cbfstool/fmd_parser.o: $(objutil)/cbfstool/fmd.o
260 $(objutil)/cbfstool/fmd_scanner.o: $(objutil)/cbfstool/fmd.o
261 $(objutil)/cbfstool/fmd_scanner.o: TOOLCFLAGS += -Wno-sign-compare
263 $(objutil)/cbfstool/%: $(top)/util/cbfstool/%_shipped
264         mkdir -p $(dir $@)
265         cp $< $@
267 ifeq ($(CONFIG_FMD_GENPARSER),y)
268 TOOLLEX := lex
269 TOOLYACC := yacc
271 # 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
274         echo "    LEX        util/cbfstool/fmd_scanner.[ch]"
275         $(TOOLLEX) -t --header-file=$(top)/util/cbfstool/fmd_scanner.h_shipped $< >$(top)/util/cbfstool/fmd_scanner.c_shipped
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
280         echo "    YACC       util/cbfstool/fmd_parser.[ch]"
281         $(TOOLYACC) -d $<
282         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
285 endif # CONFIG_FMD_GENPARSER