]> git.cameronkatri.com Git - mandoc.git/blob - Makefile
To better match groff parsing, reject digits and some mathematical
[mandoc.git] / Makefile
1 # $Id: Makefile,v 1.542 2022/05/19 15:37:47 schwarze Exp $
2 #
3 # Copyright (c) 2011, 2013-2022 Ingo Schwarze <schwarze@openbsd.org>
4 # Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
5 #
6 # Permission to use, copy, modify, and distribute this software for any
7 # purpose with or without fee is hereby granted, provided that the above
8 # copyright notice and this permission notice appear in all copies.
9 #
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17
18 VERSION = 1.14.6
19
20 # === LIST OF FILES ====================================================
21
22 TESTSRCS = test-attribute.c \
23 test-be32toh.c \
24 test-cmsg.c \
25 test-dirent-namlen.c \
26 test-EFTYPE.c \
27 test-err.c \
28 test-fts.c \
29 test-getline.c \
30 test-getsubopt.c \
31 test-isblank.c \
32 test-mkdtemp.c \
33 test-mkstemps.c \
34 test-nanosleep.c \
35 test-noop.c \
36 test-ntohl.c \
37 test-O_DIRECTORY.c \
38 test-ohash.c \
39 test-PATH_MAX.c \
40 test-pledge.c \
41 test-progname.c \
42 test-reallocarray.c \
43 test-recallocarray.c \
44 test-recvmsg.c \
45 test-rewb-bsd.c \
46 test-rewb-sysv.c \
47 test-sandbox_init.c \
48 test-strcasestr.c \
49 test-stringlist.c \
50 test-strlcat.c \
51 test-strlcpy.c \
52 test-strndup.c \
53 test-strptime.c \
54 test-strsep.c \
55 test-strtonum.c \
56 test-vasprintf.c \
57 test-wchar.c
58
59 SRCS = arch.c \
60 att.c \
61 catman.c \
62 cgi.c \
63 chars.c \
64 compat_err.c \
65 compat_fts.c \
66 compat_getline.c \
67 compat_getsubopt.c \
68 compat_isblank.c \
69 compat_mkdtemp.c \
70 compat_mkstemps.c \
71 compat_ohash.c \
72 compat_progname.c \
73 compat_reallocarray.c \
74 compat_recallocarray.c \
75 compat_strcasestr.c \
76 compat_stringlist.c \
77 compat_strlcat.c \
78 compat_strlcpy.c \
79 compat_strndup.c \
80 compat_strsep.c \
81 compat_strtonum.c \
82 compat_vasprintf.c \
83 dba.c \
84 dba_array.c \
85 dba_read.c \
86 dba_write.c \
87 dbm.c \
88 dbm_map.c \
89 demandoc.c \
90 eqn.c \
91 eqn_html.c \
92 eqn_term.c \
93 html.c \
94 lib.c \
95 main.c \
96 man.c \
97 man_html.c \
98 man_macro.c \
99 man_term.c \
100 man_validate.c \
101 mandoc.c \
102 mandoc_aux.c \
103 mandoc_dbg.c \
104 mandoc_msg.c \
105 mandoc_ohash.c \
106 mandoc_xr.c \
107 mandocd.c \
108 mandocdb.c \
109 manpath.c \
110 mansearch.c \
111 mdoc.c \
112 mdoc_argv.c \
113 mdoc_html.c \
114 mdoc_macro.c \
115 mdoc_man.c \
116 mdoc_markdown.c \
117 mdoc_state.c \
118 mdoc_term.c \
119 mdoc_validate.c \
120 msec.c \
121 out.c \
122 preconv.c \
123 read.c \
124 roff.c \
125 roff_escape.c \
126 roff_html.c \
127 roff_term.c \
128 roff_validate.c \
129 soelim.c \
130 st.c \
131 tag.c \
132 tbl.c \
133 tbl_data.c \
134 tbl_html.c \
135 tbl_layout.c \
136 tbl_opts.c \
137 tbl_term.c \
138 term.c \
139 term_ascii.c \
140 term_ps.c \
141 term_tab.c \
142 term_tag.c \
143 tree.c
144
145 DISTFILES = INSTALL \
146 LICENSE \
147 Makefile \
148 Makefile.depend \
149 NEWS \
150 TODO \
151 apropos.1 \
152 catman.8 \
153 cgi.h.example \
154 compat_fts.h \
155 compat_ohash.h \
156 compat_stringlist.h \
157 configure \
158 configure.local.example \
159 dba.h \
160 dba_array.h \
161 dba_write.h \
162 dbm.h \
163 dbm_map.h \
164 demandoc.1 \
165 eqn.7 \
166 eqn.h \
167 eqn_parse.h \
168 gmdiff \
169 html.h \
170 lib.in \
171 libman.h \
172 libmandoc.h \
173 libmdoc.h \
174 main.h \
175 makewhatis.8 \
176 man.1 \
177 man.7 \
178 man.cgi.3 \
179 man.cgi.8 \
180 man.conf.5 \
181 man.h \
182 man.options.1 \
183 manconf.h \
184 mandoc.1 \
185 mandoc.3 \
186 mandoc.css \
187 mandoc.db.5 \
188 mandoc.h \
189 mandoc_aux.h \
190 mandoc_char.7 \
191 mandoc_dbg.h \
192 mandoc_dbg_init.3 \
193 mandoc_escape.3 \
194 mandoc_headers.3 \
195 mandoc_html.3 \
196 mandoc_malloc.3 \
197 mandoc_ohash.h \
198 mandoc_parse.h \
199 mandoc_xr.h \
200 mandocd.8 \
201 mansearch.3 \
202 mansearch.h \
203 mchars_alloc.3 \
204 mdoc.7 \
205 mdoc.h \
206 msec.in \
207 out.h \
208 predefs.in \
209 roff.7 \
210 roff.h \
211 roff_int.h \
212 soelim.1 \
213 tag.h \
214 tbl.3 \
215 tbl.7 \
216 tbl.h \
217 tbl_int.h \
218 tbl_parse.h \
219 term.h \
220 term_tag.h \
221 $(SRCS) \
222 $(TESTSRCS)
223
224 LIBMAN_OBJS = man.o \
225 man_macro.o \
226 man_validate.o
227
228 LIBMDOC_OBJS = att.o \
229 lib.o \
230 mdoc.o \
231 mdoc_argv.o \
232 mdoc_macro.o \
233 mdoc_state.o \
234 mdoc_validate.o \
235 st.o
236
237 LIBROFF_OBJS = eqn.o \
238 roff.o \
239 roff_escape.o \
240 roff_validate.o \
241 tbl.o \
242 tbl_data.o \
243 tbl_layout.o \
244 tbl_opts.o
245
246 LIBMANDOC_OBJS = $(LIBMAN_OBJS) \
247 $(LIBMDOC_OBJS) \
248 $(LIBROFF_OBJS) \
249 $(DEBUG_OBJS) \
250 arch.o \
251 chars.o \
252 mandoc.o \
253 mandoc_aux.o \
254 mandoc_msg.o \
255 mandoc_ohash.o \
256 mandoc_xr.o \
257 msec.o \
258 preconv.o \
259 read.o \
260 tag.o
261
262 ALL_COBJS = compat_err.o \
263 compat_fts.o \
264 compat_getline.o \
265 compat_getsubopt.o \
266 compat_isblank.o \
267 compat_mkdtemp.o \
268 compat_mkstemps.o \
269 compat_ohash.o \
270 compat_progname.o \
271 compat_reallocarray.o \
272 compat_recallocarray.o \
273 compat_strcasestr.o \
274 compat_stringlist.o \
275 compat_strlcat.o \
276 compat_strlcpy.o \
277 compat_strndup.o \
278 compat_strsep.o \
279 compat_strtonum.o \
280 compat_vasprintf.o
281
282 MANDOC_HTML_OBJS = eqn_html.o \
283 html.o \
284 man_html.o \
285 mdoc_html.o \
286 roff_html.o \
287 tbl_html.o
288
289 MANDOC_TERM_OBJS = eqn_term.o \
290 man_term.o \
291 mdoc_term.o \
292 roff_term.o \
293 term.o \
294 term_ascii.o \
295 term_ps.o \
296 term_tab.o \
297 term_tag.o \
298 tbl_term.o
299
300 DBM_OBJS = dbm.o \
301 dbm_map.o \
302 mansearch.o
303
304 DBA_OBJS = dba.o \
305 dba_array.o \
306 dba_read.o \
307 dba_write.o \
308 mandocdb.o
309
310 MAIN_OBJS = $(MANDOC_HTML_OBJS) \
311 $(MANDOC_MAN_OBJS) \
312 $(MANDOC_TERM_OBJS) \
313 $(DBM_OBJS) \
314 $(DBA_OBJS) \
315 main.o \
316 manpath.o \
317 mdoc_man.o \
318 mdoc_markdown.o \
319 out.o \
320 tree.o
321
322 CGI_OBJS = $(MANDOC_HTML_OBJS) \
323 $(DBM_OBJS) \
324 cgi.o \
325 out.o
326
327 MANDOCD_OBJS = $(MANDOC_HTML_OBJS) \
328 $(MANDOC_TERM_OBJS) \
329 mandocd.o \
330 out.o
331
332 DEMANDOC_OBJS = demandoc.o
333
334 WWW_MANS = apropos.1.html \
335 demandoc.1.html \
336 man.1.html \
337 man.options.1.html \
338 mandoc.1.html \
339 soelim.1.html \
340 man.cgi.3.html \
341 mandoc.3.html \
342 mandoc_dbg_init.3.html \
343 mandoc_escape.3.html \
344 mandoc_headers.3.html \
345 mandoc_html.3.html \
346 mandoc_malloc.3.html \
347 mansearch.3.html \
348 mchars_alloc.3.html \
349 tbl.3.html \
350 man.conf.5.html \
351 mandoc.db.5.html \
352 eqn.7.html \
353 man.7.html \
354 mandoc_char.7.html \
355 mdoc.7.html \
356 roff.7.html \
357 tbl.7.html \
358 catman.8.html \
359 makewhatis.8.html \
360 man.cgi.8.html \
361 mandocd.8.html
362
363 WWW_INCS = eqn.h.html \
364 html.h.html \
365 man.h.html \
366 manconf.h.html \
367 mandoc.h.html \
368 mandoc_aux.h.html \
369 mandoc_parse.h.html \
370 mansearch.h.html \
371 mdoc.h.html \
372 roff.h.html \
373 tbl.h.html \
374 tbl_int.h.html \
375 tbl_parse.h.html
376
377 # === USER CONFIGURATION ===============================================
378
379 include Makefile.local
380
381 # === DEPENDENCY HANDLING ==============================================
382
383 all: mandoc man demandoc soelim $(BUILD_TARGETS) Makefile.local
384
385 install: base-install $(INSTALL_TARGETS)
386
387 www: $(WWW_MANS) $(WWW_INCS)
388
389 $(WWW_MANS) $(WWW_INCS): mandoc
390
391 .PHONY: base-install cgi-install install www-install
392 .PHONY: clean distclean depend
393
394 include Makefile.depend
395
396 # === TARGETS CONTAINING SHELL COMMANDS ================================
397
398 distclean: clean
399 rm -f Makefile.local config.h config.h.old config.log config.log.old
400
401 clean:
402 rm -f libmandoc.a $(LIBMANDOC_OBJS) $(ALL_COBJS)
403 rm -f mandoc man $(MAIN_OBJS)
404 rm -f man.cgi $(CGI_OBJS)
405 rm -f mandocd catman catman.o $(MANDOCD_OBJS)
406 rm -f demandoc $(DEMANDOC_OBJS)
407 rm -f soelim soelim.o
408 rm -f $(WWW_MANS) $(WWW_INCS) mandoc*.tar.gz mandoc*.sha256
409 rm -f Makefile.tmp1 Makefile.tmp2
410 rm -rf *.dSYM
411
412 base-install: mandoc demandoc soelim
413 mkdir -p $(DESTDIR)$(BINDIR)
414 mkdir -p $(DESTDIR)$(SBINDIR)
415 mkdir -p $(DESTDIR)$(MANDIR)/man1
416 mkdir -p $(DESTDIR)$(MANDIR)/man5
417 mkdir -p $(DESTDIR)$(MANDIR)/man7
418 mkdir -p $(DESTDIR)$(MANDIR)/man8
419 $(INSTALL_PROGRAM) mandoc demandoc $(DESTDIR)$(BINDIR)
420 $(INSTALL_PROGRAM) soelim $(DESTDIR)$(BINDIR)/$(BINM_SOELIM)
421 cd $(DESTDIR)$(BINDIR) && $(LN) mandoc $(BINM_MAN)
422 cd $(DESTDIR)$(BINDIR) && $(LN) mandoc $(BINM_APROPOS)
423 cd $(DESTDIR)$(BINDIR) && $(LN) mandoc $(BINM_WHATIS)
424 cd $(DESTDIR)$(SBINDIR) && \
425 $(LN) ${BIN_FROM_SBIN}/mandoc $(BINM_MAKEWHATIS)
426 $(INSTALL_MAN) mandoc.1 demandoc.1 $(DESTDIR)$(MANDIR)/man1
427 $(INSTALL_MAN) soelim.1 $(DESTDIR)$(MANDIR)/man1/$(BINM_SOELIM).1
428 $(INSTALL_MAN) man.1 $(DESTDIR)$(MANDIR)/man1/$(BINM_MAN).1
429 $(INSTALL_MAN) apropos.1 $(DESTDIR)$(MANDIR)/man1/$(BINM_APROPOS).1
430 cd $(DESTDIR)$(MANDIR)/man1 && $(LN) $(BINM_APROPOS).1 $(BINM_WHATIS).1
431 $(INSTALL_MAN) man.conf.5 $(DESTDIR)$(MANDIR)/man5/$(MANM_MANCONF).5
432 $(INSTALL_MAN) mandoc.db.5 $(DESTDIR)$(MANDIR)/man5
433 $(INSTALL_MAN) man.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_MAN).7
434 $(INSTALL_MAN) mdoc.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_MDOC).7
435 $(INSTALL_MAN) roff.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_ROFF).7
436 $(INSTALL_MAN) eqn.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_EQN).7
437 $(INSTALL_MAN) tbl.7 $(DESTDIR)$(MANDIR)/man7/$(MANM_TBL).7
438 $(INSTALL_MAN) mandoc_char.7 $(DESTDIR)$(MANDIR)/man7
439 $(INSTALL_MAN) makewhatis.8 \
440 $(DESTDIR)$(MANDIR)/man8/$(BINM_MAKEWHATIS).8
441
442 lib-install: libmandoc.a
443 mkdir -p $(DESTDIR)$(LIBDIR)
444 mkdir -p $(DESTDIR)$(INCLUDEDIR)
445 mkdir -p $(DESTDIR)$(MANDIR)/man3
446 $(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR)
447 $(INSTALL_LIB) eqn.h man.h mandoc.h mandoc_aux.h mandoc_parse.h \
448 mdoc.h roff.h tbl.h $(DESTDIR)$(INCLUDEDIR)
449 $(INSTALL_MAN) mandoc.3 mandoc_escape.3 mandoc_malloc.3 \
450 mansearch.3 mchars_alloc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3
451
452 cgi-install: man.cgi
453 mkdir -p $(DESTDIR)$(CGIBINDIR)
454 mkdir -p $(DESTDIR)$(HTDOCDIR)
455 $(INSTALL_PROGRAM) man.cgi $(DESTDIR)$(CGIBINDIR)
456 $(INSTALL_DATA) mandoc.css $(DESTDIR)$(HTDOCDIR)
457
458 catman-install: mandocd catman
459 mkdir -p $(DESTDIR)$(SBINDIR)
460 mkdir -p $(DESTDIR)$(MANDIR)/man8
461 $(INSTALL_PROGRAM) mandocd $(DESTDIR)$(SBINDIR)
462 $(INSTALL_PROGRAM) catman $(DESTDIR)$(SBINDIR)/$(BINM_CATMAN)
463 $(INSTALL_MAN) mandocd.8 $(DESTDIR)$(MANDIR)/man8
464 $(INSTALL_MAN) catman.8 $(DESTDIR)$(MANDIR)/man8/$(BINM_CATMAN).8
465
466 uninstall:
467 rm -f $(DESTDIR)$(BINDIR)/mandoc
468 rm -f $(DESTDIR)$(BINDIR)/demandoc
469 rm -f $(DESTDIR)$(BINDIR)/$(BINM_SOELIM)
470 rm -f $(DESTDIR)$(BINDIR)/$(BINM_MAN)
471 rm -f $(DESTDIR)$(BINDIR)/$(BINM_APROPOS)
472 rm -f $(DESTDIR)$(BINDIR)/$(BINM_WHATIS)
473 rm -f $(DESTDIR)$(SBINDIR)/$(BINM_MAKEWHATIS)
474 rm -f $(DESTDIR)$(MANDIR)/man1/mandoc.1
475 rm -f $(DESTDIR)$(MANDIR)/man1/demandoc.1
476 rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_SOELIM).1
477 rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_MAN).1
478 rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_APROPOS).1
479 rm -f $(DESTDIR)$(MANDIR)/man1/$(BINM_WHATIS).1
480 rm -f $(DESTDIR)$(MANDIR)/man5/$(MANM_MANCONF).5
481 rm -f $(DESTDIR)$(MANDIR)/man5/mandoc.db.5
482 rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_MAN).7
483 rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_MDOC).7
484 rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_ROFF).7
485 rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_EQN).7
486 rm -f $(DESTDIR)$(MANDIR)/man7/$(MANM_TBL).7
487 rm -f $(DESTDIR)$(MANDIR)/man7/mandoc_char.7
488 rm -f $(DESTDIR)$(MANDIR)/man8/$(BINM_MAKEWHATIS).8
489 rm -f $(DESTDIR)$(CGIBINDIR)/man.cgi
490 rm -f $(DESTDIR)$(HTDOCDIR)/mandoc.css
491 rm -f $(DESTDIR)$(SBINDIR)/mandocd
492 rm -f $(DESTDIR)$(SBINDIR)/$(BINM_CATMAN)
493 rm -f $(DESTDIR)$(MANDIR)/man8/mandocd.8
494 rm -f $(DESTDIR)$(MANDIR)/man8/$(BINM_CATMAN).8
495 rm -f $(DESTDIR)$(LIBDIR)/libmandoc.a
496 rm -f $(DESTDIR)$(MANDIR)/man3/mandoc.3
497 rm -f $(DESTDIR)$(MANDIR)/man3/mandoc_escape.3
498 rm -f $(DESTDIR)$(MANDIR)/man3/mandoc_malloc.3
499 rm -f $(DESTDIR)$(MANDIR)/man3/mansearch.3
500 rm -f $(DESTDIR)$(MANDIR)/man3/mchars_alloc.3
501 rm -f $(DESTDIR)$(MANDIR)/man3/tbl.3
502 rm -f $(DESTDIR)$(INCLUDEDIR)/eqn.h
503 rm -f $(DESTDIR)$(INCLUDEDIR)/man.h
504 rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc.h
505 rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc_aux.h
506 rm -f $(DESTDIR)$(INCLUDEDIR)/mandoc_parse.h
507 rm -f $(DESTDIR)$(INCLUDEDIR)/mdoc.h
508 rm -f $(DESTDIR)$(INCLUDEDIR)/roff.h
509 rm -f $(DESTDIR)$(INCLUDEDIR)/tbl.h
510 [ ! -e $(DESTDIR)$(INCLUDEDIR) ] || rmdir $(DESTDIR)$(INCLUDEDIR)
511
512 regress: all
513 cd regress && ./regress.pl
514
515 regress-clean:
516 cd regress && ./regress.pl . clean
517
518 Makefile.local config.h: configure $(TESTSRCS)
519 @echo "$@ is out of date; please run ./configure"
520 @exit 1
521
522 libmandoc.a: $(MANDOC_COBJS) $(LIBMANDOC_OBJS)
523 $(AR) rs $@ $(MANDOC_COBJS) $(LIBMANDOC_OBJS)
524
525 mandoc: $(MAIN_OBJS) libmandoc.a
526 $(CC) -o $@ $(LDFLAGS) $(MAIN_OBJS) libmandoc.a $(LDADD)
527
528 man: mandoc
529 $(LN) mandoc man
530
531 man.cgi: $(CGI_OBJS) libmandoc.a
532 $(CC) $(STATIC) -o $@ $(LDFLAGS) $(CGI_OBJS) libmandoc.a $(LDADD)
533
534 mandocd: $(MANDOCD_OBJS) libmandoc.a
535 $(CC) -o $@ $(LDFLAGS) $(MANDOCD_OBJS) libmandoc.a $(LDADD)
536
537 catman: catman.o libmandoc.a
538 $(CC) -o $@ $(LDFLAGS) catman.o libmandoc.a $(LDADD)
539
540 demandoc: $(DEMANDOC_OBJS) libmandoc.a
541 $(CC) -o $@ $(LDFLAGS) $(DEMANDOC_OBJS) libmandoc.a $(LDADD)
542
543 soelim: $(SOELIM_COBJS) soelim.o
544 $(CC) -o $@ $(LDFLAGS) $(SOELIM_COBJS) soelim.o
545
546 # --- maintainer targets ---
547
548 www-install: www
549 $(INSTALL_DATA) mandoc.css $(HTDOCDIR)
550 $(INSTALL_DATA) $(WWW_MANS) $(HTDOCDIR)/man
551 $(INSTALL_DATA) $(WWW_INCS) $(HTDOCDIR)/includes
552
553 depend: config.h
554 ./configure -depend
555 mkdep -f Makefile.tmp1 $(CFLAGS) $(SRCS)
556 perl -e 'undef $$/; $$_ = <>; s|/usr/include/\S+||g; \
557 s|\\\n||g; s| +| |g; s| $$||mg; print;' \
558 Makefile.tmp1 > Makefile.tmp2
559 rm Makefile.tmp1
560 mv Makefile.tmp2 Makefile.depend
561
562 regress-distclean:
563 @find regress \
564 -name '.#*' -o \
565 -name '*.orig' -o \
566 -name '*.rej' -o \
567 -name '*.core' \
568 -exec rm -i {} \;
569
570 regress-distcheck:
571 @find regress ! -type d ! -type f
572 @find regress -type f \
573 ! -path '*/CVS/*' \
574 ! -name Makefile \
575 ! -name Makefile.inc \
576 ! -name '*.in' \
577 ! -name '*.out_ascii' \
578 ! -name '*.out_utf8' \
579 ! -name '*.out_html' \
580 ! -name '*.out_markdown' \
581 ! -name '*.out_lint' \
582 ! -path regress/regress.pl \
583 ! -path regress/regress.pl.1
584
585 dist: mandoc-$(VERSION).sha256
586
587 mandoc-$(VERSION).sha256: mandoc-$(VERSION).tar.gz
588 sha256 mandoc-$(VERSION).tar.gz > $@
589
590 mandoc-$(VERSION).tar.gz: $(DISTFILES)
591 ls regress/*/*/*.mandoc_* && exit 1 || true
592 mkdir -p .dist/mandoc-$(VERSION)/
593 $(INSTALL) -m 0644 $(DISTFILES) .dist/mandoc-$(VERSION)
594 cp -pR regress .dist/mandoc-$(VERSION)
595 find .dist/mandoc-$(VERSION)/regress \
596 -type d -name CVS -print0 | xargs -0 rm -rf
597 chmod 755 .dist/mandoc-$(VERSION)/configure
598 ( cd .dist/ && tar zcf ../$@ mandoc-$(VERSION) )
599 rm -rf .dist/
600
601 dist-install: dist
602 $(INSTALL_DATA) mandoc-$(VERSION).tar.gz mandoc-$(VERSION).sha256 \
603 $(HTDOCDIR)/snapshots
604
605 # === SUFFIX RULES =====================================================
606
607 .SUFFIXES: .1 .3 .5 .7 .8 .h
608 .SUFFIXES: .1.html .3.html .5.html .7.html .8.html .h.html
609
610 .h.h.html:
611 highlight -I $< > $@
612
613 .1.1.html .3.3.html .5.5.html .7.7.html .8.8.html:
614 ./mandoc -Thtml -Wwarning,stop \
615 -O 'style=/mandoc.css,man=/man/%N.%S.html;https://man.openbsd.org/%N.%S,includes=/includes/%I.html' \
616 $< > $@