780e931eed
The name blobtool is confusing as 'blob' is also used to describe nonfree software in binary form. Since this utility deals with binary configurations it makes more sense to call it bincfg. Change-Id: I3339274f1c42df4bb4a6b30b9538d91c3c03d7d0 Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> Reviewed-on: https://review.coreboot.org/23239 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Kocialkowski <contact@paulk.fr> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
41 lines
1.5 KiB
Makefile
41 lines
1.5 KiB
Makefile
bincfg_obj := bincfg.lex.o bincfg.tab.o
|
|
|
|
BINCFG_FLAGS += -I$(top)/util/bincfg -I$(objutil)/bincfg
|
|
|
|
$(objutil)/bincfg:
|
|
mkdir -p $@
|
|
|
|
$(objutil)/bincfg/.generated: $(objutil)/bincfg
|
|
touch $@
|
|
|
|
$(objutil)/bincfg/%.o: util/bincfg/%.c | $(objutil)/bincfg/.generated
|
|
printf " HOSTCC $(subst $(obj)/,,$(@))\n"
|
|
$(HOSTCC) $(BINCFG_FLAGS) $(HOSTCFLAGS) -c -o $@ $<
|
|
|
|
$(objutil)/bincfg/%.o: $(objutil)/bincfg/%.c
|
|
printf " HOSTCC $(subst $(obj)/,,$(@))\n"
|
|
$(HOSTCC) $(BINCFG_FLAGS) $(HOSTCFLAGS) -c -o $@ $<
|
|
|
|
ifeq ($(CONFIG_UTIL_GENPARSER),y)
|
|
$(top)/util/bincfg/bincfg.lex.c_shipped: $(top)/util/bincfg/bincfg.l
|
|
printf " FLEX $(subst $(top)/,,$(@))\n"
|
|
flex -L -o $@ $<
|
|
|
|
# the .c rule also creates .h
|
|
$(top)/util/bincfg/bincfg.tab.h_shipped: $(top)/util/bincfg/bincfg.tab.c_shipped
|
|
$(top)/util/bincfg/bincfg.tab.c_shipped: $(top)/util/bincfg/bincfg.y
|
|
printf " BISON $(subst $(top)/,,$(@))\n"
|
|
bison -l --defines=$(top)/util/bincfg/bincfg.tab.h_shipped -o $@ $<
|
|
endif
|
|
|
|
$(objutil)/bincfg/bincfg.lex.o: $(objutil)/bincfg/bincfg.tab.h
|
|
|
|
$(objutil)/bincfg/%: $(top)/util/bincfg/%_shipped
|
|
mkdir -p $(dir $@)
|
|
cp $< $@
|
|
|
|
$(objutil)/bincfg/bincfg: $(addprefix $(objutil)/bincfg/,$(bincfg_obj))
|
|
printf " HOSTCC $(subst $(obj)/,,$(@)) (link)\n"
|
|
$(HOSTCC) $(BINCFG_FLAGS) -o $@ $(addprefix $(objutil)/bincfg/,$(bincfg_obj))
|
|
|
|
$(addprefix $(objutil)/bincfg/,$(bincfg_obj)) : $(objutil)/bincfg/bincfg.tab.h $(objutil)/bincfg/bincfg.tab.c $(objutil)/bincfg/bincfg.lex.c
|