mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-01 16:48:07 +02:00
We now store a list of tokens in our hash-table rather than a single string. This lets us replace each macro in the value as necessary. This code adds a link dependency on talloc which does exactly what we want in terms of memory management for a parser. The 3 tests added in the previous commit now pass.
25 lines
612 B
Makefile
25 lines
612 B
Makefile
# Debug symbols by default, but let the user avoid that with something
|
|
# like "make CFLAGS=-O2"
|
|
CFLAGS = -g
|
|
|
|
# But we use 'override' here so that "make CFLAGS=-O2" will still have
|
|
# all the warnings enabled.
|
|
override CFLAGS += -Wall -Wextra -Wwrite-strings -Wswitch-enum -Wno-unused
|
|
|
|
glcpp: glcpp.o glcpp-lex.o glcpp-parse.o hash_table.o
|
|
gcc -o $@ -ltalloc $^
|
|
|
|
%.c %.h: %.y
|
|
bison --debug --defines=$*.h --output=$*.c $^
|
|
|
|
%.c: %.l
|
|
flex --outfile=$@ $<
|
|
|
|
glcpp-lex.c: glcpp-parse.h
|
|
|
|
test:
|
|
@(cd tests; ./glcpp-test)
|
|
|
|
clean:
|
|
rm -f glcpp-lex.c glcpp-parse.c *.o *~
|
|
rm -f tests/*.out tests/*.gcc tests/*.expected
|