aboutsummaryrefslogtreecommitdiff
path: root/programs/src/kconfig/Makefile
diff options
context:
space:
mode:
authorKarel Kočí <cynerd@email.cz>2014-12-14 19:28:28 +0100
committerKarel Kočí <cynerd@email.cz>2014-12-14 19:28:28 +0100
commit4ec68e612e5d6670a154677b4c8914f22153b122 (patch)
tree7fa4379e01336d0ac4e3613bb6b4d6ea7e66a04e /programs/src/kconfig/Makefile
parent5b99a9efbdd7026185266d71fca9615e124a6132 (diff)
downloadlinux-conf-perf-4ec68e612e5d6670a154677b4c8914f22153b122.tar.gz
linux-conf-perf-4ec68e612e5d6670a154677b4c8914f22153b122.tar.bz2
linux-conf-perf-4ec68e612e5d6670a154677b4c8914f22153b122.zip
Add kconfig_parser
kconfig_parser is placed to new folder tree. In folder "programs" will be all programs. Files in folder programs/src/kconfig/kconfig are taken from kernel v3.18-rc3. In future, they should be updated if new changes will be added to kernel.
Diffstat (limited to 'programs/src/kconfig/Makefile')
-rw-r--r--programs/src/kconfig/Makefile26
1 files changed, 26 insertions, 0 deletions
diff --git a/programs/src/kconfig/Makefile b/programs/src/kconfig/Makefile
new file mode 100644
index 0000000..cc86499
--- /dev/null
+++ b/programs/src/kconfig/Makefile
@@ -0,0 +1,26 @@
+.SUFFIXES:
+
+all: kconfig_parser
+
+
+clean:
+ rm -f kconfig/zconf.tab.c kconfig/zconf.lex.c kconfig/zconf.hash.c
+ rm -f ../../kconfig_parser
+
+INPUT_FILES = kconfig_parser.c
+INPUT_FILES += kconfig/zconf.tab.c \
+ boolexp.c \
+ symlist.c \
+ output.c
+
+kconfig_parser: $(INPUT_FILES) kconfig/zconf.lex.c kconfig/zconf.hash.c
+ gcc -O0 -w -ggdb -o ../../$@ $(INPUT_FILES)
+
+%.hash.c: %.gperf
+ gperf -t --output-file $@ -a -C -E -g -k '1,3,$$' -p -t $<
+
+%.lex.c: %.l
+ flex -o $@ -L -P zconf $<
+
+%.tab.c: %.y kconfig/zconf.lex.c kconfig/zconf.hash.c
+ bison -o $@ $< -p zconf -t -l