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 SRCS = gmid.c iri.c utf8.c ex.c server.c sandbox.c mime.c
23 OBJS = ${SRCS:.c=.o} lex.yy.o y.tab.o
25 gmid: ${OBJS}
26 ${CC} ${OBJS} -o gmid ${LDFLAGS}
28 static: ${OBJS}
29 ${CC} -static ${OBJS} \
30 ${LIBDIR}/libcrypto.a ${LIBDIR}/libtls.a ${LIBDIR}/libssl.a \
31 -o gmid
32 strip gmid
34 TAGS: ${SRCS}
35 -etags ${SRCS} || true
37 clean:
38 rm -f *.o lex.yy.c y.tab.c y.tab.h y.output gmid iri_test
40 iri_test: iri_test.o iri.o utf8.o
41 ${CC} iri_test.o iri.o utf8.o -o iri_test ${LDFLAGS}
43 test: gmid iri_test
44 @echo "IRI tests"
45 @echo "=============================="
46 ./iri_test
47 @echo
48 @echo "server tests"
49 @echo "=============================="
50 cd test && ./test.sh
52 install: gmid
53 install -o root -g wheel -m 0755 gmid ${PREFIX}/bin/
54 install -o root -g wheel -m 0644 gmid.1 ${PREFIX}/man/man1