diff --git a/src/Kconfig b/src/Kconfig index c86b6684a6..0995e1a36e 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -80,6 +80,16 @@ config CCACHE Enables the use of ccache for faster builds. Requires ccache in path. +config SCONFIG_GENPARSER + bool "Generate SCONFIG parser using flex and bison" + default n + depends on EXPERT + help + Enable this option if you are working on the sconfig + device tree parser and made changes to sconfig.l and + sconfig.y. + Otherwise, say N. + config USE_OPTION_TABLE bool "Use CMOS for configuration values" default n diff --git a/util/sconfig/Makefile.inc b/util/sconfig/Makefile.inc index a1ee64da88..97a445f037 100644 --- a/util/sconfig/Makefile.inc +++ b/util/sconfig/Makefile.inc @@ -16,13 +16,15 @@ $(objutil)/sconfig/%.o: $(objutil)/sconfig/%.c printf " HOSTCC $(subst $(obj)/,,$(@))\n" $(HOSTCC) $(SCONFIGFLAGS) $(HOSTCFLAGS) -c -o $@ $< -ifdef SCONFIG_GENPARSER +ifdef CONFIG_SCONFIG_GENPARSER $(top)/util/sconfig/lex.yy.c_shipped: $(top)/util/sconfig/sconfig.l + printf " FLEX $(subst $(top)/,,$(@))\n" flex -L -o $@ $< # the .c rule also creates .h $(top)/util/sconfig/sconfig.tab.h_shipped: $(top)/util/sconfig/sconfig.tab.c_shipped $(top)/util/sconfig/sconfig.tab.c_shipped: $(top)/util/sconfig/sconfig.y + printf " BISON $(subst $(top)/,,$(@))\n" bison -l --defines=$(top)/util/sconfig/sconfig.tab.h_shipped -o $@ $< endif