]> rtime.felk.cvut.cz Git - linux-conf-perf.git/blob - kconfig2sat/Makefile
Add skeleton for kconfig2sat tool
[linux-conf-perf.git] / kconfig2sat / Makefile
1 MAKEFLAGS += --no-builtin-rules
2
3 .PHONY: all clean
4 .SUFFIXES:
5
6 all: kconfig2sat
7
8 SRC = kconfig2sat.cc lcp_utils.c kconfig/zconf.tab.c
9
10 CFLAGS = -Wall -O2 -ggdb -DDEBUG
11 CXXFLAGS = -std=c++11
12
13 OBJ_C = $(patsubst %.c,%.o,$(filter %.c,$(SRC)))
14 OBJ_CC = $(patsubst %.cc,%.o,$(filter %.cc,$(SRC)))
15
16
17 kconfig2sat: $(OBJ_CC) $(OBJ_C)
18         g++ $(CXXFLAGS) $(CFLAGS) -o $@ $^
19
20 %.o: %.c
21         gcc -c $(CFLAGS) -o $@ $^
22
23 %.o: %.cc
24         g++ -c $(CXXFLAGS) $(CFLAGS) -o $@ $^
25
26 %.hash.c: %.gperf
27         gperf -t --output-file $@ -a -C -E -g -k '1,3,$$' -p -t $<
28
29 %.lex.c: %.l
30         flex -o $@  -L -P zconf $<
31
32 kconfig/zconf.tab.c: kconfig/zconf.lex.c kconfig/zconf.hash.c
33 %.tab.c: %.y
34         bison -o $@ $< -p zconf -t -l
35
36 clean::
37         $(RM) kconfig2sat $(OBJ)
38         $(RM) kconfig/zconf.tab.c kconfig/zconf.lex.c kconfig/zconf.hash.c