1 83f0f95a 2022-09-29 op include config.mk
3 83f0f95a 2022-09-29 op # -- options --
5 83f0f95a 2022-09-29 op PREFIX = /usr/local
6 83f0f95a 2022-09-29 op SBINDIR = ${PREFIX}/sbin
7 83f0f95a 2022-09-29 op MANDIR = ${PREFIX}/man
8 83f0f95a 2022-09-29 op WWWDIR = /var/www/htdocs
10 83f0f95a 2022-09-29 op # -- build-related variables --
12 b0a6bcf7 2022-09-13 op PROG = galileo
14 83f0f95a 2022-09-29 op DISTNAME = ${PROG}-${VERSION}
16 d358df0e 2022-09-29 op SRCS = galileo.c config.c fcgi.c fragments.c log.c proc.c proxy.c \
17 83f0f95a 2022-09-29 op template/tmpl.c xmalloc.c y.tab.c
19 83f0f95a 2022-09-29 op COBJS = ${COMPATS:.c=.o}
20 83f0f95a 2022-09-29 op OBJS = ${SRCS:.c=.o} ${COBJS}
22 71d4bcee 2022-09-14 op MAN = ${PROG}.conf.5 ${PROG}.8
24 83f0f95a 2022-09-29 op # -- public targets --
27 83f0f95a 2022-09-29 op .PHONY: all clean distclean install uninstall
30 83f0f95a 2022-09-29 op rm -f *.[do] y.tab.* compat/*.[do] tests/*.[do] fragments.c
31 83f0f95a 2022-09-29 op ${MAKE} -C template clean
33 83f0f95a 2022-09-29 op distclean: clean
34 83f0f95a 2022-09-29 op rm -f config.h config.h.old config.mk config.log config.log.old
35 83f0f95a 2022-09-29 op ${MAKE} -C template distclean
38 83f0f95a 2022-09-29 op mkdir -p ${DESTDIR}${MANDIR}/man5
39 83f0f95a 2022-09-29 op mkdir -p ${DESTDIR}${MANDIR}/man8
40 83f0f95a 2022-09-29 op mkdir -p ${DESTDIR}${SBINDIR}
41 83f0f95a 2022-09-29 op mkdir -p ${DESTDIR}${WWWDIR}
42 83f0f95a 2022-09-29 op ${INSTALL_MAN} galileo.conf.5 ${DESTDIR}${MANDIR}/man5/${PROG}.conf.5
43 83f0f95a 2022-09-29 op ${INSTALL_MAN} galileo.8 ${DESTDIR}${MANDIR}/man8/${PROG}.8
44 83f0f95a 2022-09-29 op ${INSTALL_PROGRAM} ${PROG} ${DESTDIR}${SBINDIR}
45 83f0f95a 2022-09-29 op ${INSTALL_DATA} galileo.css ${DESTDIR}${WWWDIR}
48 83f0f95a 2022-09-29 op rm ${DESTDIR}${MANDIR}/man5/${PROG}.conf.5
49 83f0f95a 2022-09-29 op rm ${DESTDIR}${MANDIR}/man8/${PROG}.8
50 83f0f95a 2022-09-29 op rm ${DESTDIR}${SBINDIR}/${PROG}
51 83f0f95a 2022-09-29 op rm ${DESTDIR}${WWWDIR}/galileo.css
53 83f0f95a 2022-09-29 op # -- internal build targets --
55 83f0f95a 2022-09-29 op ${PROG}: ${OBJS}
56 83f0f95a 2022-09-29 op ${CC} -o $@ ${OBJS} ${LIBS} ${LDFLAGS}
58 83f0f95a 2022-09-29 op template/template:
59 83f0f95a 2022-09-29 op ${MAKE} -C template
61 83f0f95a 2022-09-29 op fragments.c: template/template fragments.tmpl
62 83f0f95a 2022-09-29 op ./template/template fragments.tmpl > $@ || rm -f $@
64 83f0f95a 2022-09-29 op y.tab.c: parse.y
65 83f0f95a 2022-09-29 op ${YACC} -b y parse.y
68 83f0f95a 2022-09-29 op ${CC} ${CFLAGS} -c $< -o $@
70 83f0f95a 2022-09-29 op # -- maintainer targets --
72 83f0f95a 2022-09-29 op DISTFILES = Makefile \
78 83f0f95a 2022-09-29 op fragments.tmpl \
81 83f0f95a 2022-09-29 op galileo.conf.5 \
94 83f0f95a 2022-09-29 op dist: ${DISTNAME}.sha256
96 83f0f95a 2022-09-29 op ${DISTNAME}.sha256: ${DISTNAME}.tar.gz
97 83f0f95a 2022-09-29 op sha256 ${DISTNAME}.tar.gz > $@
99 83f0f95a 2022-09-29 op ${DISTNAME}.tar.gz: ${DISTFILES}
100 83f0f95a 2022-09-29 op mkdir -p .dist/${DISTNAME}/
101 83f0f95a 2022-09-29 op ${INSTALL} -m 0644 ${DISTFILES} .dist/${DISTNAME}
102 83f0f95a 2022-09-29 op ${MAKE} -C compat DESTDIR=${PWD}/.dist/${DISTNAME}/compat dist
103 83f0f95a 2022-09-29 op ${MAKE} -C template DESTDIR=${PWD}/.dist/${DISTNAME}/template dist
104 83f0f95a 2022-09-29 op ${MAKE} -C tests DESTDIR=${PWD}/.dist/${DISTNAME}/tests dist
105 83f0f95a 2022-09-29 op cd .dist/${DISTNAME} && chmod 755 configure template/configure
106 83f0f95a 2022-09-29 op cd .dist && tar czf ../$@ ${DISTNAME}
107 83f0f95a 2022-09-29 op rm -rf .dist/
109 83f0f95a 2022-09-29 op .PHONY: ${DISTNAME}.tar.gz
111 83f0f95a 2022-09-29 op # -- dependencies --
113 83f0f95a 2022-09-29 op -include galileo.d
114 83f0f95a 2022-09-29 op -include config.d
115 83f0f95a 2022-09-29 op -include fcgi.d
116 83f0f95a 2022-09-29 op -include fragments.d
117 83f0f95a 2022-09-29 op -include log.d
118 83f0f95a 2022-09-29 op -include parse.d
119 83f0f95a 2022-09-29 op -include proc.d
120 83f0f95a 2022-09-29 op -include proxy.d
121 83f0f95a 2022-09-29 op -include tmpl.d
122 83f0f95a 2022-09-29 op -include xmalloc.d