Blob


1 CC = cc
2 CFLAGS = -Wall -Wextra -g
3 LDFLAGS = -ltls
4 LEX = lex
5 YACC = yacc
7 PREFIX = /usr/local
9 # /usr/local/lib on FreeBSD
10 LIBDIR = /usr/lib/
12 .PHONY: all static clean test install
14 all: gmid TAGS README.md
16 lex.yy.c: lex.l y.tab.c
17 ${LEX} lex.l
19 y.tab.c: parse.y
20 ${YACC} -b y -d parse.y
22 OBJS = gmid.o iri.o utf8.o lex.yy.o y.tab.o ex.o server.o sandbox.o
23 gmid: ${OBJS}
24 ${CC} ${OBJS} -o gmid ${LDFLAGS}
26 static: ${OBJS}
27 ${CC} -static ${OBJS} \
28 ${LIBDIR}/libcrypto.a ${LIBDIR}/libtls.a ${LIBDIR}/libssl.a \
29 -o gmid
30 strip gmid
32 TAGS: gmid.c iri.c utf8.c ex.c server.c sandbox.c
33 -etags gmid.c iri.c utf8.c ex.c server.c sandbox.c || true
35 clean:
36 rm -f *.o lex.yy.c y.tab.c y.tab.h y.output gmid iri_test
38 iri_test: iri_test.o iri.o utf8.o
39 ${CC} iri_test.o iri.o utf8.o -o iri_test ${LDFLAGS}
41 test: gmid iri_test
42 @echo "IRI tests"
43 @echo "=============================="
44 ./iri_test
45 @echo
46 @echo "server tests"
47 @echo "=============================="
48 cd test && ./test.sh
50 install: gmid
51 install -o root -g wheel -m 0755 gmid ${PREFIX}/bin/
52 install -o root -g wheel -m 0644 gmid.1 ${PREFIX}/man/man1