Blame


1 96e3c013 2022-07-04 op # Copyright (c) 2022 Omar Polo <op@omarpolo.com>
2 96e3c013 2022-07-04 op # Copyright (c) 2011, 2013-2022 Ingo Schwarze <schwarze@openbsd.org>
3 96e3c013 2022-07-04 op # Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
4 96e3c013 2022-07-04 op #
5 96e3c013 2022-07-04 op # Permission to use, copy, modify, and distribute this software for any
6 96e3c013 2022-07-04 op # purpose with or without fee is hereby granted, provided that the above
7 96e3c013 2022-07-04 op # copyright notice and this permission notice appear in all copies.
8 96e3c013 2022-07-04 op #
9 96e3c013 2022-07-04 op # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 96e3c013 2022-07-04 op # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 96e3c013 2022-07-04 op # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 96e3c013 2022-07-04 op # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 96e3c013 2022-07-04 op # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 96e3c013 2022-07-04 op # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 96e3c013 2022-07-04 op # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 96e3c013 2022-07-04 op
17 3096da4e 2021-10-07 op # tests to run as a port of the regression suite. Leave empty to run
18 3096da4e 2021-10-07 op # all.
19 3096da4e 2021-10-07 op TESTS=
20 3096da4e 2021-10-07 op
21 1610f954 2023-06-13 op # -- build-related variables --
22 1610f954 2023-06-13 op
23 1610f954 2023-06-13 op COBJS = ${COMPATS:.c=.o}
24 1610f954 2023-06-13 op
25 86693a33 2023-06-11 op GMID_SRCS = gmid.c config.c crypto.c dirs.c fcgi.c iri.c log.c \
26 86693a33 2023-06-11 op logger.c mime.c proc.c proxy.c puny.c sandbox.c \
27 86693a33 2023-06-11 op server.c utf8.c utils.c y.tab.c
28 96e3c013 2022-07-04 op
29 96e3c013 2022-07-04 op GMID_OBJS = ${GMID_SRCS:.c=.o} ${COBJS}
30 96e3c013 2022-07-04 op
31 86693a33 2023-06-11 op GE_SRCS = ge.c config.c crypto.c dirs.c fcgi.c iri.c log.c mime.c \
32 86693a33 2023-06-11 op proc.c proxy.c puny.c sandbox.c server.c utf8.c utils.c
33 0126d91d 2022-09-07 op
34 0126d91d 2022-09-07 op GE_OBJS = ${GE_SRCS:.c=.o} ${COBJS}
35 0126d91d 2022-09-07 op
36 c727f8dd 2023-06-08 op GG_SRCS = gg.c iri.c utf8.c
37 96e3c013 2022-07-04 op
38 96e3c013 2022-07-04 op GG_OBJS = ${GG_SRCS:.c=.o} ${COBJS}
39 96e3c013 2022-07-04 op
40 cbb7f9fc 2023-06-08 op SRCS = gmid.h log.h parse.y proc.h \
41 c727f8dd 2023-06-08 op ${GMID_SRCS} ${GE_SRCS} ${GG_SRCS}
42 96e3c013 2022-07-04 op
43 96e3c013 2022-07-04 op DISTNAME = gmid-${VERSION}
44 96e3c013 2022-07-04 op
45 1610f954 2023-06-13 op # -- public targets --
46 1610f954 2023-06-13 op
47 1610f954 2023-06-13 op all: config.mk gmid ge gg
48 34886b1e 2023-05-08 op .PHONY: all tags static clean cleanall test regress install
49 3e4749f7 2020-10-02 op
50 1610f954 2023-06-13 op config.mk config.h: configure
51 96e3c013 2022-07-04 op @echo "$@ is out of date; please run ./configure"
52 96e3c013 2022-07-04 op @exit 1
53 771d8f28 2021-01-17 op
54 1610f954 2023-06-13 op include config.mk
55 771d8f28 2021-01-17 op
56 3e4749f7 2020-10-02 op clean:
57 68e38f49 2023-06-08 op rm -f *.[do] compat/*.[do] y.tab.c y.tab.h y.output gmid ge gg
58 d5f4d615 2021-02-01 op rm -f compile_flags.txt
59 8518014c 2021-07-11 op ${MAKE} -C regress clean
60 33d32d1f 2020-12-25 op
61 96e3c013 2022-07-04 op distclean: clean
62 1610f954 2023-06-13 op rm -f config.h config.h.old config.log config.log.old config.mk
63 96e3c013 2022-07-04 op
64 57d2fca4 2022-03-26 op test: regress
65 e2075518 2022-02-03 op regress: all
66 8e7e7cac 2021-01-02 op ${MAKE} 'TESTS=${TESTS}' -C regress all
67 5c2e310e 2021-01-22 op
68 3eabd37f 2022-09-08 op install: gmid gg ge
69 ac69e83a 2021-01-21 op mkdir -p ${DESTDIR}${BINDIR}
70 ac69e83a 2021-01-21 op mkdir -p ${DESTDIR}${MANDIR}/man1
71 bf2850b9 2022-04-07 op mkdir -p ${DESTDIR}${MANDIR}/man5
72 3eabd37f 2022-09-08 op mkdir -p ${DESTDIR}${MANDIR}/man8
73 ac69e83a 2021-01-21 op ${INSTALL_PROGRAM} gmid ${DESTDIR}${BINDIR}
74 135307cf 2022-01-30 op ${INSTALL_PROGRAM} gg ${DESTDIR}${BINDIR}
75 3eabd37f 2022-09-08 op ${INSTALL_PROGRAM} ge ${DESTDIR}${BINDIR}
76 3eabd37f 2022-09-08 op ${INSTALL_MAN} gmid.8 ${DESTDIR}${MANDIR}/man8
77 bf2850b9 2022-04-07 op ${INSTALL_MAN} gmid.conf.5 ${DESTDIR}${MANDIR}/man5
78 0126d91d 2022-09-07 op ${INSTALL_MAN} ge.1 ${DESTDIR}${MANDIR}/man1
79 135307cf 2022-01-30 op ${INSTALL_MAN} gg.1 ${DESTDIR}${MANDIR}/man1
80 d5f4d615 2021-02-01 op
81 96e3c013 2022-07-04 op uninstall:
82 3eabd37f 2022-09-08 op rm ${DESTDIR}${BINDIR}/ge
83 96e3c013 2022-07-04 op rm ${DESTDIR}${BINDIR}/gg
84 96e3c013 2022-07-04 op rm ${DESTDIR}${BINDIR}/gmid
85 3eabd37f 2022-09-08 op rm ${DESTDIR}${MANDIR}/man1/ge.1
86 96e3c013 2022-07-04 op rm ${DESTDIR}${MANDIR}/man1/gg.1
87 96e3c013 2022-07-04 op rm ${DESTDIR}${MANDIR}/man5/gmid.conf.5
88 3eabd37f 2022-09-08 op rm ${DESTDIR}${MANDIR}/man8/gmid.8
89 a3c5f745 2021-02-23 op
90 1610f954 2023-06-13 op tags:
91 1610f954 2023-06-13 op ctags ${SRCS}
92 1610f954 2023-06-13 op
93 1610f954 2023-06-13 op # --internal build targets --
94 1610f954 2023-06-13 op
95 1610f954 2023-06-13 op gmid: ${GMID_OBJS}
96 1610f954 2023-06-13 op ${CC} ${GMID_OBJS} -o $@ ${LIBS} ${LDFLAGS}
97 1610f954 2023-06-13 op
98 1610f954 2023-06-13 op ge: ${GE_OBJS}
99 1610f954 2023-06-13 op ${CC} ${GE_OBJS} -o $@ ${LIBS} ${LDFLAGS}
100 1610f954 2023-06-13 op
101 1610f954 2023-06-13 op gg: ${GG_OBJS}
102 1610f954 2023-06-13 op ${CC} ${GG_OBJS} -o $@ ${LIBS} ${LDFLAGS}
103 1610f954 2023-06-13 op
104 1610f954 2023-06-13 op y.tab.c: parse.y
105 1610f954 2023-06-13 op ${YACC} -b y parse.y
106 1610f954 2023-06-13 op
107 a3c5f745 2021-02-23 op # make sure we pass -o to ${CC}. OpenBSD default suffix rule doesn't
108 a3c5f745 2021-02-23 op .SUFFIXES: .c .o
109 a3c5f745 2021-02-23 op .c.o:
110 a3c5f745 2021-02-23 op ${CC} ${CFLAGS} -c $< -o $@
111 96e3c013 2022-07-04 op
112 4b93be28 2022-10-31 op # -- maintainer targets --
113 4b93be28 2022-10-31 op
114 5dad3900 2023-06-14 op .PHONY: release dist
115 5dad3900 2023-06-14 op
116 c727f8dd 2023-06-08 op DISTFILES = .cirrus.yml .dockerignore .gitignore ChangeLog LICENSE \
117 846842e1 2023-06-08 op Makefile README.md config.c configure configure.local.example \
118 86693a33 2023-06-11 op crypto.c dirs.c fcgi.c ge.1 ge.c gg.1 gg.c gmid.8 gmid.c \
119 86693a33 2023-06-11 op gmid.conf.5 gmid.h iri.c log.c log.h logger.c mime.c \
120 86693a33 2023-06-11 op parse.y proxy.c puny.c sandbox.c server.c utf8.c utils.c \
121 86693a33 2023-06-11 op y.tab.c
122 4b93be28 2022-10-31 op
123 5dad3900 2023-06-14 op release:
124 5dad3900 2023-06-14 op sed -i -e '/^RELEASE=/s/no/yes' configure
125 5dad3900 2023-06-14 op ${MAKE} dist
126 5dad3900 2023-06-14 op sed -i -e '/^RELEASE=/s/yes/no' configure
127 5dad3900 2023-06-14 op
128 96e3c013 2022-07-04 op dist: ${DISTNAME}.sha256
129 96e3c013 2022-07-04 op
130 96e3c013 2022-07-04 op ${DISTNAME}.sha256: ${DISTNAME}.tar.gz
131 96e3c013 2022-07-04 op
132 96e3c013 2022-07-04 op ${DISTNAME}.tar.gz: ${DISTFILES}
133 96e3c013 2022-07-04 op mkdir -p .dist/${DISTNAME}/
134 4b93be28 2022-10-31 op ${INSTALL} -m 0644 ${DISTFILES} .dist/${DISTNAME}/
135 96e3c013 2022-07-04 op cd .dist/${DISTNAME} && chmod 755 configure
136 4b93be28 2022-10-31 op ${MAKE} -C compat DESTDIR=${PWD}/.dist/${DISTNAME}/compat dist
137 4b93be28 2022-10-31 op ${MAKE} -C contrib DESTDIR=${PWD}/.dist/${DISTNAME}/contrib dist
138 4b93be28 2022-10-31 op ${MAKE} -C have DESTDIR=${PWD}/.dist/${DISTNAME}/have dist
139 4b93be28 2022-10-31 op ${MAKE} -C regress DESTDIR=${PWD}/.dist/${DISTNAME}/regress dist
140 96e3c013 2022-07-04 op cd .dist/ && tar zcf ../$@ ${DISTNAME}
141 96e3c013 2022-07-04 op rm -rf .dist/
142 68e38f49 2023-06-08 op
143 68e38f49 2023-06-08 op # -- dependencies --
144 68e38f49 2023-06-08 op
145 68e38f49 2023-06-08 op -include config.d
146 f29d705e 2023-06-23 op -include crypto.d
147 68e38f49 2023-06-08 op -include dirs.d
148 68e38f49 2023-06-08 op -include fcgi.d
149 f29d705e 2023-06-23 op -include ge.d
150 68e38f49 2023-06-08 op -include gg.d
151 68e38f49 2023-06-08 op -include gmid.d
152 68e38f49 2023-06-08 op -include iri.d
153 68e38f49 2023-06-08 op -include log.d
154 68e38f49 2023-06-08 op -include logger.d
155 68e38f49 2023-06-08 op -include mime.d
156 68e38f49 2023-06-08 op -include proc.d
157 68e38f49 2023-06-08 op -include proxy.d
158 68e38f49 2023-06-08 op -include puny.d
159 68e38f49 2023-06-08 op -include sandbox.d
160 68e38f49 2023-06-08 op -include server.d
161 68e38f49 2023-06-08 op -include utf8.d
162 68e38f49 2023-06-08 op -include utils.d
163 68e38f49 2023-06-08 op -include y.tab.d