Makefile revision 1.28
11.28Smrg#	$NetBSD: Makefile,v 1.28 2019/01/17 07:39:00 mrg Exp $
21.2Stls#
31.12Smrg#	$eterna: Makefile,v 1.30 2010/07/11 00:34:27 mrg Exp $
41.11Smrg#
51.11Smrg# berkeley (netbsd) makefile.  see Makefile.boot for other systems.
61.1Stls
71.1Stls# compile-time options are:
81.12Smrg#	NO_DEBUG		/* don't include debugging support */
91.1Stls#	NO_USER_SUPPORT		/* don't support /~user requests */
101.1Stls#	NO_CGIBIN_SUPPORT	/* don't support cgi-bin requests */
111.1Stls#	NO_DIRINDEX_SUPPORT	/* don't support directory indexing */
121.1Stls#	NO_DAEMON_MODE		/* don't support daemon mode */
131.1Stls#	NO_DYNAMIC_CONTENT	/* don't support dynamic content updates */
141.1Stls#	NO_SSL_SUPPORT		/* don't support ssl (https) */
151.1Stls#	DO_HTPASSWD		/* support .htpasswd files */
161.16Smbalmer#	NO_LUA_SUPPORT		/* don't support Lua for dynamic content */
171.12Smrg#
181.24Smrg# other system specific defines:
191.24Smrg#	HAVE_NBUTIL_H		/* netbsd compat is in <nbutil.h>
201.24Smrg#				(don't forget to also enable -lnbutil)
211.24Smrg#
221.12Smrg# these are usually set via the "COPTS" variable, or some other method
231.12Smrg# for setting CFLAGS relevant to your make, eg
241.12Smrg#   % make COPTS="-DDO_HTPASSWD"
251.12Smrg
261.3SreedCOPTS+=	-DDO_HTPASSWD
271.23SmrgPROG=	bozohttpd
281.23SmrgLINKS=	${BINDIR}/bozohttpd ${BINDIR}/httpd
291.23SmrgMAN=	bozohttpd.8
301.23SmrgMLINKS+=bozohttpd.8 httpd.8
311.1StlsSRCS=	bozohttpd.c ssl-bozo.c auth-bozo.c cgi-bozo.c daemon-bozo.c \
321.16Smbalmer	tilde-luzah-bozo.c dir-index-bozo.c content-bozo.c lua-bozo.c
331.11SmrgSRCS+=	main.c
341.1Stls
351.17SheLDADD=	-lcrypt -llua -lm
361.17SheDPADD=	${LIBCRYPT} ${LIBLUA} ${LIBM}
371.5Smrg
381.11SmrgWARNS?=	4
391.11Smrg
401.24Smrg.if defined(.OS.MAKE)
411.24SmrgOPSYS=	${.OS.MAKE}
421.24Smrg.else
431.24SmrgOPSYS:=	${:!uname -s!:S/-//g:S/\///g}
441.24Smrg.endif
451.24Smrg
461.24Smrg.if ${OPSYS} == "QNX"
471.24SmrgCPPFLAGS+=	-DHAVE_NBUTIL_H
481.24SmrgLDADD+=		-lnbutil
491.24Smrg.endif
501.24Smrg
511.5SmrgLDADD+=	-lssl -lcrypto
521.5SmrgDPADD+=	${LIBSSL} ${LIBCRYPTO}
531.5Smrg
541.13Smrg#
551.13Smrg# Build release things.
561.13Smrg#
571.13SmrgNROFF?=		nroff
581.15Smbalmer
591.13SmrgPREHTMLFROB=	sed \
601.13Smrg		    -e 's/&/\&amp;/' \
611.13Smrg		    -e 's/</\&lt;/' \
621.13Smrg		    -e 's/>/\&gt;/'
631.13Smrg
641.13SmrgHTMLFROB=	sed \
651.13Smrg		    -e 's/\([MC] "[^"]*\)<dd>$$/\1<b>"<\/b><dd>/' \
661.13Smrg		    -e 's/'"''"'/\&rdquo;/' \
671.13Smrg		    -e 's/""/\&ldquo;/' \
681.13Smrg		    -e 's/<a href="\.\.\/html[^>]*>\(.*\)<\/a>/\1/'
691.13Smrg
701.13SmrgTXTFROB=	col -b
711.13Smrg
721.13Smrgbozohttpd.8.html: bozohttpd.8
731.13Smrg	$(PREHTMLFROB) $> | $(NROFF) -mdoc2html | $(HTMLFROB) > $@
741.15Smbalmer
751.13Smrgbozohttpd.8.txt: bozohttpd.8
761.13Smrg	$(NROFF) -mdoc -Tascii $> | $(TXTFROB) > $@
771.13Smrg
781.13SmrgCLEANFILES+=	bozohttpd.8.html bozohttpd.8.txt
791.13Smrg
801.28Smrgcheck:
811.28Smrg	cd ${.CURDIR}/testsuite && ${MAKE} check
821.28Smrg
831.14Smrg# Create a distfile: uses /tmp
841.14SmrgBASE=bozohttpd-${BOZOVER}
851.14SmrgTAR=${BASE}.tar
861.14Smrgexport-distfile:
871.14Smrg	dir=`mktemp -d /tmp/bozo-export-XXXXXX`; \
881.14Smrg	cd "$${dir}" || exit; \
891.14Smrg	mkdir ${BASE}; \
901.14Smrg	( cd ${BASE} || exit; \
911.14Smrg	  cp -r "${.CURDIR}/." "."; \
921.14Smrg	  find . -name .CVS | xargs rm -r; \
931.14Smrg	); \
941.14Smrg	pax -wf ${TAR} ${BASE}; \
951.20Smrg	gzip -nc9 ${TAR} > ${TAR}.gz; \
961.22Smrg	bzip2 -9 ${TAR}; \
971.22Smrg	echo "Exported two files in $${dir}:"; \
981.22Smrg	echo ${TAR}.gz; \
991.22Smrg	echo ${TAR}.bz2
1001.14Smrg
1011.1Stls.include <bsd.prog.mk>
102