# $Id: Makefile,v 1.34 2004/12/14 17:47:54 archie Exp $ PROG= lws VERSION= 0.2.1 SRCS= lws_config.c lws_server_subsystem.c lws_tmpl.c \ lws_tmpl_auth.c lws_tmpl_config.c lws_tmpl_http.c \ lws_tmpl_logs.c lws_tmpl_memstats.c lws_tmpl_misc.c \ lws_tmpl_object.c lws_tmpl_passwd.c lws_tmpl_string.c \ main.c PREFIX?= /usr/local BINDIR= ${PREFIX}/bin MANDIR= ${PREFIX}/man/man SFILES= default-config.xml docroot admin ca MAN1= lws.1 CFLAGS+= -DLWS_SERVER_VERSION=\"${VERSION}\" CFLAGS+= -DPREFIX=\"${PREFIX}\" CFLAGS+= -I${PREFIX}/include CFLAGS+= -Wall -Wbad-function-cast -Wcast-align -Wchar-subscripts \ -Wformat -Winline -Wmissing-prototypes -Wnested-externs \ -Wpointer-arith -Wunused -Wwrite-strings CFLAGS+= -pthread #CFLAGS+= -g -static LDADD+= -L${PREFIX}/lib -lpdel LDADD+= -lexpat -lssl -lcrypto -lcrypt -lradius -lnetgraph DPADD+= ${PREFIX}/lib/libpdel.a lws.1: lws.1.in sed 's,@PREFIX@,${PREFIX},g' < ${.ALLSRC} > ${.TARGET} CLEANFILES+= lws.1 # # Install template files and create SSL key and cert # beforeinstall: @if [ ! -d ${PREFIX}/etc/lws ]; then \ ${ECHO} ${INSTALL} -d -o ${SHAREOWN} -g ${SHAREGRP} -m 0755 \ ${PREFIX}/etc/lws; \ ${INSTALL} -d -o ${SHAREOWN} -g ${SHAREGRP} -m 0755 \ ${PREFIX}/etc/lws; \ fi cp -R ${SFILES} ${PREFIX}/etc/lws chown -R ${SHAREOWN}:${SHAREGRP} ${PREFIX}/etc/lws find ${PREFIX}/etc/lws -type d | xargs chmod 0755 find ${PREFIX}/etc/lws -type f | xargs chmod 0644 ( cd ${PREFIX}/etc/lws/ca && sh check_cert \ ../bogus-ssl.key ../bogus-ssl.crt `hostname` ) chmod 0600 ${PREFIX}/etc/lws/bogus-ssl.key chmod 0600 ${PREFIX}/etc/lws/ca/ca.key distclean: cleandir # # Create distribution tarball, including substituted copyright notices # COPYRIGHT_TAG= @COPYRIGHT@ COPYRIGHT_FILE= ${.CURDIR}/COPYRIGHT tarball: ${COPYRIGHT_FILE} ( cd ${.CURDIR} && ${MAKE} cleandir ) rm -rf lws-${VERSION} mkdir lws-${VERSION} ( cd ${.CURDIR} && find README *.[ch] *akefile* lws.1.in ca \ COPYRIGHT Changes ${SFILES} \( -name CVS -a -prune \) \ -o -type f -print | cpio -pudml lws-${VERSION} ) FILES=`find lws-${VERSION} -type f -print`; \ for f in $${FILES}; do \ if [ "$${f}" != "lws-${VERSION}/Makefile" ] \ && grep -q '${COPYRIGHT_TAG}' $${f}; then \ echo substituting '${COPYRIGHT_TAG}' in $${f}; \ LINE=`grep -n '${COPYRIGHT_TAG}' $${f} \ | head -1 | awk -F: '{print $$1}'`; \ TAIL=`grep -n '${COPYRIGHT_TAG}' $${f} \ | head -1 | awk -F: '{print $$2}' \ | sed -e 's/\\\\/\\\\\\\\/g' -e 's/"/\\\\"/g'`; \ PREFX=`echo "$${TAIL}" \ | sed -E 's/^(.*)${COPYRIGHT_TAG}(.*)$$/\\1/g'`; \ SUFFX=`echo "$${TAIL}" \ | sed -E 's/^(.*)${COPYRIGHT_TAG}(.*)$$/\\2/g'`; \ if [ "$${LINE}" -gt 1 ]; then \ head -`expr $${LINE} - 1` < $${f} > $${f}.new; \ else \ cat /dev/null > $${f}.new; \ fi; \ awk "{ printf \"%s%s%s\\n\", \ \"$${PREFX}\", \$$0, \"$${SUFFX}\" }" \ < ${COPYRIGHT_FILE} >> $${f}.new; \ tail +`expr $${LINE} + 1` < $${f} >> $${f}.new; \ mv $${f}.new $${f}; \ fi; \ done tar cf - lws-${VERSION} | gzip --best > ${.CURDIR}/lws-${VERSION}.tar.gz CLEANFILES+= ${.CURDIR}/lws-${VERSION}.tar.gz CLEANDIRS+= ${.CURDIR}/lws-${VERSION} # # Create a GNUmakefile for Linux # L_PROG= ${PROG} L_SRCS= ${SRCS} L_MAN= ${MAN} L_CFLAGS= ${CFLAGS:N-pthread:S,",\\",g} L_SFILES= ${SFILES} L_VERSION= ${VERSION} ${.CURDIR}/GNUmakefile: ${.CURDIR}/Makefile ${.CURDIR}/GNUmakefile.in sed -e 's,\$$\I\d: .*$$,Note: generated file,g' \ -e 's,@PROG@,${L_PROG},g' \ -e 's,@VERSION@,${L_VERSION},g' \ -e 's,@SRCS@,${L_SRCS},g' \ -e 's,@MAN@,${L_MAN},g' \ -e 's,@CFLAGS@,${L_CFLAGS},g' \ -e 's,@SFILES@,${L_SFILES},g' \ < ${.CURDIR}/GNUmakefile.in > ${.TARGET} .include