Oops. The argument symbol initializers got lost on inlining,
[smatch.git] / Makefile
blob0444e8a9944bb37f59f02d641372f1d5f7e097cf
1 CC=gcc
2 CFLAGS=-g -Wall
3 AR=ar
5 PREFIX=/usr/local
6 PROGRAMS=test-lexing test-parsing obfuscate check
8 LIB_H= token.h parse.h lib.h symbol.h scope.h expression.h target.h
10 LIB_OBJS= parse.o tokenize.o pre-process.o symbol.o lib.o scope.o \
11 expression.o show-parse.o evaluate.o inline.o
13 LIB_FILE= sparse.a
14 LIBS=$(LIB_FILE)
16 all: $(PROGRAMS)
19 # Install the 'check' binary as 'sparse', just to confuse people.
21 # "The better to keep you on your toes, my dear".
23 install: check
24 install -C check $(PREFIX)/bin/sparse
26 test-lexing: test-lexing.o $(LIB_FILE)
27 gcc -o $@ $< $(LIBS)
29 test-parsing: test-parsing.o $(LIB_FILE)
30 gcc -o $@ $< $(LIBS)
32 obfuscate: obfuscate.o $(LIB_FILE)
33 gcc -o $@ $< $(LIBS)
35 check: check.o $(LIB_FILE)
36 gcc -o $@ $< $(LIBS)
38 $(LIB_FILE): $(LIB_OBJS)
39 $(AR) rcs $(LIB_FILE) $(LIB_OBJS)
41 evaluate.o: $(LIB_H)
42 expression.o: $(LIB_H)
43 lib.o: $(LIB_H)
44 parse.o: $(LIB_H)
45 pre-process.o: $(LIB_H) pre-process.h
46 scope.o: $(LIB_H)
47 show-parse.o: $(LIB_H)
48 symbol.o: $(LIB_H)
49 test-lexing.o: $(LIB_H)
50 test-parsing.o: $(LIB_H)
51 tokenize.o: $(LIB_H)
53 pre-process.h:
54 echo "#define GCC_INTERNAL_INCLUDE \"`$(CC) -print-file-name=include`\"" > pre-process.h
56 clean:
57 rm -f *.[oasi] core core.[0-9]* $(PROGRAMS) pre-process.h