diff options
Diffstat (limited to 'scripts/config/Makefile')
-rw-r--r-- | scripts/config/Makefile | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/scripts/config/Makefile b/scripts/config/Makefile new file mode 100644 index 000000000..04e8330a0 --- /dev/null +++ b/scripts/config/Makefile @@ -0,0 +1,49 @@ +# =========================================================================== +# Kernel configuration targets +# These targets are used from top-level makefile + +# =========================================================================== +# Shared Makefile for the various kconfig executables: +# conf: Used for defconfig, oldconfig and related targets +# mconf: Used for the mconfig target. +# Utilizes the lxdialog package +# object files used by all kconfig flavours + +conf-objs := conf.o zconf.tab.o +mconf-objs := mconf.o zconf.tab.o + +clean-files := lkc_defs.h qconf.moc .tmp_qtcheck \ + .tmp_gtkcheck zconf.tab.c lex.zconf.c zconf.hash.c + +all: conf mconf lxdialog + +.PHONY: lxdialog +lxdialog: + $(MAKE) -C lxdialog + +conf: $(conf-objs) +mconf: $(mconf-objs) + +clean: + rm -f *.o $(clean-files) conf mconf + $(MAKE) -C lxdialog clean + +zconf.tab.o: lex.zconf.c zconf.hash.c + +kconfig_load.o: lkc_defs.h + +lkc_defs.h: $(src)/lkc_proto.h + sed < $< > $@ 's/P(\([^,]*\),.*/#define \1 (\*\1_p)/' + +zconf.tab.c: zconf.y +lex.zconf.c: zconf.l +zconf.hash.c: zconf.gperf + +%.tab.c: %.y + bison -l -b $* -p $(notdir $*) $< && cp $@ $@_shipped || cp $@_shipped $@ + +lex.%.c: %.l + flex -L -P$(notdir $*) -o$@ $< && cp $@ $@_shipped || cp $@_shipped $@ + +%.hash.c: %.gperf + gperf < $< > $@ && cp $@ $@_shipped || cp $@_shipped $@ |