git stults online reflex / master makefile
master

Tree @master (Download .tar.gz)

makefile @masterraw · history · blame

CC=gcc
FLEX=flex
BISON=bison
CYTHON=cython
PREFIX=/usr/local
SEDFLAGS=-E 's/RULE\(([^)]+)\)/\1/'

all: rx

debug: SEDFLAGS=-E 's/RULE\(([^)]+)\)/\1 { printf(\"\1\\n\"); }/'
debug: all

rx: rx-src
	$(CC) -g -O2 rx-parse.c rx-lex.c rx.c -lfl -o rx

rx-src: rx-parse.c rx-lex.c

rx-parse.post.y: rx-parse.y
	sed $(SEDFLAGS) rx-parse.y > rx-parse.post.y

rx-parse.c: rx-parse.post.y
	$(BISON) --defines=rx-parse.h --output=rx-parse.c --debug rx-parse.post.y

rx-parse.h: rx-parse.c

rx-lex.c: rx-parse.h rx-lex.l
	$(FLEX) --header-file=rx-lex.h --outfile=rx-lex.c rx-lex.l

rx-lex.h: rx-lex.c

clean:
	\rm -Rf *~ *.o *.so rx-lex.[ch] rx-parse.[ch] rx-parse.output rx-parse.post.y rx

.PHONY: install