summaryrefslogtreecommitdiff
path: root/scripts/config/Makefile
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-04-20 20:17:34 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-04-20 20:17:34 +0000
commit5c472fc895c32a189d574b338057164e95430825 (patch)
tree1c9f8d640f5320a29eed7c1663a1965b976cd63c /scripts/config/Makefile
parentfb0f5600577daecb03f52f07049d72471cd9eca5 (diff)
add kconfig from linux 2.6 to scripts/config
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3682 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'scripts/config/Makefile')
-rw-r--r--scripts/config/Makefile49
1 files changed, 49 insertions, 0 deletions
diff --git a/scripts/config/Makefile b/scripts/config/Makefile
new file mode 100644
index 0000000000..04e8330a01
--- /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 $@