Home | History | Annotate | Line # | Download | only in httpd
Makefile revision 1.32.2.1
      1  1.32.2.1  perseant #	$NetBSD: Makefile,v 1.32.2.1 2025/08/02 05:55:00 perseant Exp $
      2       1.2       tls #
      3      1.12       mrg #	$eterna: Makefile,v 1.30 2010/07/11 00:34:27 mrg Exp $
      4      1.11       mrg #
      5      1.11       mrg # berkeley (netbsd) makefile.  see Makefile.boot for other systems.
      6       1.1       tls 
      7       1.1       tls # compile-time options are:
      8      1.12       mrg #	NO_DEBUG		/* don't include debugging support */
      9       1.1       tls #	NO_USER_SUPPORT		/* don't support /~user requests */
     10       1.1       tls #	NO_CGIBIN_SUPPORT	/* don't support cgi-bin requests */
     11       1.1       tls #	NO_DIRINDEX_SUPPORT	/* don't support directory indexing */
     12       1.1       tls #	NO_DAEMON_MODE		/* don't support daemon mode */
     13       1.1       tls #	NO_DYNAMIC_CONTENT	/* don't support dynamic content updates */
     14       1.1       tls #	NO_SSL_SUPPORT		/* don't support ssl (https) */
     15       1.1       tls #	DO_HTPASSWD		/* support .htpasswd files */
     16      1.16   mbalmer #	NO_LUA_SUPPORT		/* don't support Lua for dynamic content */
     17      1.29    jruoho #	NO_BLOCKLIST_SUPPORT	/* don't support blocklist */
     18      1.12       mrg #
     19      1.24       mrg # other system specific defines:
     20      1.24       mrg #	HAVE_NBUTIL_H		/* netbsd compat is in <nbutil.h>
     21      1.24       mrg #				(don't forget to also enable -lnbutil)
     22      1.24       mrg #
     23      1.12       mrg # these are usually set via the "COPTS" variable, or some other method
     24      1.12       mrg # for setting CFLAGS relevant to your make, eg
     25      1.12       mrg #   % make COPTS="-DDO_HTPASSWD"
     26      1.12       mrg 
     27       1.3      reed COPTS+=	-DDO_HTPASSWD
     28      1.23       mrg PROG=	bozohttpd
     29      1.23       mrg LINKS=	${BINDIR}/bozohttpd ${BINDIR}/httpd
     30      1.23       mrg MAN=	bozohttpd.8
     31      1.23       mrg MLINKS+=bozohttpd.8 httpd.8
     32       1.1       tls SRCS=	bozohttpd.c ssl-bozo.c auth-bozo.c cgi-bozo.c daemon-bozo.c \
     33      1.16   mbalmer 	tilde-luzah-bozo.c dir-index-bozo.c content-bozo.c lua-bozo.c
     34      1.11       mrg SRCS+=	main.c
     35       1.1       tls 
     36      1.32  christos COPTS.ssl-bozo.c+=-Wno-error=deprecated-declarations
     37      1.32  christos 
     38      1.29    jruoho LDADD=	-lblocklist -lcrypt -llua -lm
     39      1.29    jruoho DPADD=	${LIBBLOCKLIST} ${LIBCRYPT} ${LIBLUA} ${LIBM}
     40       1.5       mrg 
     41      1.11       mrg WARNS?=	4
     42  1.32.2.1  perseant LINTFLAGS+=	-X 193	# statement not reached
     43      1.11       mrg 
     44      1.24       mrg .if defined(.OS.MAKE)
     45      1.24       mrg OPSYS=	${.OS.MAKE}
     46      1.24       mrg .else
     47      1.24       mrg OPSYS:=	${:!uname -s!:S/-//g:S/\///g}
     48      1.24       mrg .endif
     49      1.24       mrg 
     50      1.24       mrg .if ${OPSYS} == "QNX"
     51      1.24       mrg CPPFLAGS+=	-DHAVE_NBUTIL_H
     52      1.24       mrg LDADD+=		-lnbutil
     53      1.24       mrg .endif
     54      1.24       mrg 
     55  1.32.2.1  perseant LDADD+=	-lssl -lcrypto -lpthread
     56  1.32.2.1  perseant DPADD+=	${LIBSSL} ${LIBCRYPTO} ${LIBPTHREAD}
     57       1.5       mrg 
     58      1.13       mrg #
     59      1.13       mrg # Build release things.
     60      1.13       mrg #
     61      1.13       mrg NROFF?=		nroff
     62      1.15   mbalmer 
     63      1.13       mrg PREHTMLFROB=	sed \
     64      1.13       mrg 		    -e 's/&/\&amp;/' \
     65      1.13       mrg 		    -e 's/</\&lt;/' \
     66      1.13       mrg 		    -e 's/>/\&gt;/'
     67      1.13       mrg 
     68      1.13       mrg HTMLFROB=	sed \
     69      1.13       mrg 		    -e 's/\([MC] "[^"]*\)<dd>$$/\1<b>"<\/b><dd>/' \
     70      1.13       mrg 		    -e 's/'"''"'/\&rdquo;/' \
     71      1.13       mrg 		    -e 's/""/\&ldquo;/' \
     72      1.13       mrg 		    -e 's/<a href="\.\.\/html[^>]*>\(.*\)<\/a>/\1/'
     73      1.13       mrg 
     74      1.13       mrg TXTFROB=	col -b
     75      1.13       mrg 
     76      1.13       mrg bozohttpd.8.html: bozohttpd.8
     77      1.13       mrg 	$(PREHTMLFROB) $> | $(NROFF) -mdoc2html | $(HTMLFROB) > $@
     78      1.15   mbalmer 
     79      1.13       mrg bozohttpd.8.txt: bozohttpd.8
     80      1.13       mrg 	$(NROFF) -mdoc -Tascii $> | $(TXTFROB) > $@
     81      1.13       mrg 
     82      1.13       mrg CLEANFILES+=	bozohttpd.8.html bozohttpd.8.txt
     83      1.13       mrg 
     84      1.28       mrg check:
     85      1.28       mrg 	cd ${.CURDIR}/testsuite && ${MAKE} check
     86      1.28       mrg 
     87      1.30       mrg .if empty(BOZOVER)
     88      1.30       mrg BOZOVER!=	sed -n \
     89      1.30       mrg 		    -e s/\"$$// -e \
     90      1.31       mrg 		    's/\#define[ 	]*SERVER_SOFTWARE[ 	]*\"bozohttpd\///p'  ${.PARSEDIR}/bozohttpd.c
     91      1.30       mrg .endif
     92      1.30       mrg 
     93      1.14       mrg # Create a distfile: uses /tmp
     94      1.14       mrg BASE=bozohttpd-${BOZOVER}
     95      1.14       mrg TAR=${BASE}.tar
     96      1.14       mrg export-distfile:
     97      1.14       mrg 	dir=`mktemp -d /tmp/bozo-export-XXXXXX`; \
     98      1.14       mrg 	cd "$${dir}" || exit; \
     99      1.14       mrg 	mkdir ${BASE}; \
    100      1.14       mrg 	( cd ${BASE} || exit; \
    101      1.14       mrg 	  cp -r "${.CURDIR}/." "."; \
    102      1.14       mrg 	  find . -name .CVS | xargs rm -r; \
    103      1.14       mrg 	); \
    104      1.14       mrg 	pax -wf ${TAR} ${BASE}; \
    105      1.20       mrg 	gzip -nc9 ${TAR} > ${TAR}.gz; \
    106      1.22       mrg 	bzip2 -9 ${TAR}; \
    107      1.22       mrg 	echo "Exported two files in $${dir}:"; \
    108      1.22       mrg 	echo ${TAR}.gz; \
    109      1.22       mrg 	echo ${TAR}.bz2
    110      1.14       mrg 
    111       1.1       tls .include <bsd.prog.mk>
    112