summaryrefslogtreecommitdiff
path: root/www/apache2/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'www/apache2/Makefile')
-rw-r--r--www/apache2/Makefile97
1 files changed, 56 insertions, 41 deletions
diff --git a/www/apache2/Makefile b/www/apache2/Makefile
index 22f1abad1226..60b6fd39586c 100644
--- a/www/apache2/Makefile
+++ b/www/apache2/Makefile
@@ -6,7 +6,8 @@
#
PORTNAME= apache
-PORTVERSION= 2.0.36
+PORTVERSION= 2.0.39
+PORTREVISION= 6
CATEGORIES= www ipv6
MASTER_SITES= http://www.apache.org/dist/httpd/ \
http://apache.mirrorcentral.com/dist/httpd/ \
@@ -20,33 +21,61 @@ DISTNAME= httpd-${PORTVERSION}
DISTFILES= ${DISTNAME}.tar.gz powerlogo.gif:freebsd
EXTRACT_ONLY= ${DISTNAME}.tar.gz
-MAINTAINER?= perky@fallin.lv
+MAINTAINER?= perky@FreeBSD.org
+
+LIB_DEPENDS= expat.2:${PORTSDIR}/textproc/expat2
LATEST_LINK= apache2
-WITH_MPM?= prefork # or worker, perchild (neither of them still has a problem on FreeBSD)
+WITH_MPM?= prefork # or worker, perchild
HTTP_PORT?= 80
-GNU_CONFIGURE= yes
+HAS_CONFIGURE= yes
USE_PERL5= yes
-CONFIGURE_ARGS= --prefix=${PREFIX} \
+USE_REINPLACE= yes
+CONFIGURE_ARGS= --prefix=${PREFIX_RELDEST} \
--enable-layout=FreeBSD \
--with-perl=${PERL5} \
--enable-so \
--with-mpm=${WITH_MPM} \
--with-port=${HTTP_PORT} \
- --libdir=${PREFIX}/lib/apache2 \
- --includedir=${PREFIX}/include/apache2
+ --with-expat=${LOCALBASE} \
+ --libdir=${PREFIX_RELDEST}/lib/apache2 \
+ --includedir=${PREFIX_RELDEST}/include/apache2
CONFIGURE_ENV= CC="${CC}" CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" \
- LDFLAGS="${LDFLAGS}"
-SHARED_MODULES= all cgid charset_lite ext_filter case_filter case_filter_in \
- deflate bucketeer
-RC_SUB= -e 's,@@PREFIX@@,${PREFIX},g' -e 's,@@DESTDIR@@,${DESTDIR},g'
+ LDFLAGS="${LDFLAGS}" CONFIG_SHELL="${SH}"
+SHARED_MODULES= all cgid deflate ext_filter
+PREFIX_RELDEST= ${PREFIX:S,^${DESTDIR},,}
+RC_SUB= -e 's,@@PREFIX@@,${PREFIX_RELDEST},g'
MAKE_ENV+= DESTDIR=${DESTDIR} EXPR_COMPAT=yes
-PLIST_SUB+= DESTDIR=${DESTDIR}
.if defined(NOPORTDOCS)
-MAKE_ENV+= NOPORTDOCS=YES
+MAKE_ENV+= -DNOPORTDOCS
+.endif
+
+.if defined(WITH_SUEXEC)
+SUEXEC_DOCROOT?= ${PREFIX_RELDEST}/www/data
+SUEXEC_USERDIR?= public_html
+CONFIGURE_ARGS+= --enable-suexec \
+ --with-suexec-caller=www \
+ --with-suexec-uidmin=1000 --with-suexec-gidmin=1000 \
+ --with-suexec-userdir="${SUEXEC_USERDIR}" \
+ --with-suexec-docroot="${SUEXEC_DOCROOT}" \
+ --with-suexec-safepath="${PREFIX_RELDEST}/bin:${LOCALBASE}/bin:/usr/bin:/bin" \
+ --with-suexec-logfile="/var/log/httpd-suexec.log" \
+ --with-suexec-bin="${PREFIX_RELDEST}/sbin/suexec"
+PLIST_SUB+= SUEXEC=""
+.else
+PLIST_SUB+= SUEXEC="@comment "
+.endif
+
+.if ${WITH_MPM} != "prefork"
+PKGNAMESUFFIX= -${WITH_MPM}
+WITH_THREADS= yes
+.if !defined(FORCE_THREADING_MPM)
+FORBIDDEN= "doesn't work with threading MPMs on FreeBSD. If you are\
+ brave enough, make again with FORCE_THREADING_MPM=yes"
+.endif
.endif
.if defined(WITH_THREADS)
@@ -62,20 +91,6 @@ PLIST_SUB+= MODSSL="@comment "
RC_SUB+= -e 's,@@SSL@@,,g'
.endif
-.if defined(WITH_SUEXEC)
-SUEXEC_USERDIR?= public_html
-CONFIGURE_ARGS+= --enable-suexec \
- --with-suexec-caller=www \
- --with-suexec-userdir="${SUEXEC_USERDIR}" \
- --with-suexec-uidmin=1000 --with-suexec-gidmin=1000 \
- --with-suexec-docroot="${PREFIX}/www/data" \
- --with-suexec-safepath="${PREFIX}/bin:${LOCALBASE}/bin:/usr/bin:/bin" \
- --with-suexec-logfile="${DESTDIR}/var/log/httpd-suexec.log"
-PLIST_SUB+= SUEXEC=""
-.else
-PLIST_SUB+= SUEXEC="@comment "
-.endif
-
.if !defined(WITHOUT_CACHE) && defined(WITH_THREADS)
SHARED_MODULES+= cache file-cache disk-cache mem_cache
PLIST_SUB+= MODCACHE=""
@@ -90,31 +105,33 @@ PLIST_SUB+= MODPROXY=""
PLIST_SUB+= MODPROXY="@comment "
.endif
-.if ${WITH_MPM} != "prefork"
-PKGNAMESUFFIX= -${WITH_MPM}
-.if !defined(WITH_THREADS)
-IGNORE= "requires threads for ${WITH_MPM} mpm"
-.endif
+.if defined(WITH_EXPERIMENTAL)
+SHARED_MODULES+= bucketeer case_filter case_filter_in ext_filter charset_lite \
+ optional_hook_export optional_hook_import \
+ optional_fn_import optional_fn_export
+PLIST_SUB+= EXPERIMENTAL=""
+.else
+PLIST_SUB+= EXPERIMENTAL="@comment "
.endif
-CONFIGURE_ARGS+= --enable-mods-shared="${SHARED_MODULES}"
+CONFIGURE_ARGS+= --enable-mods-shared="${SHARED_MODULES}" ${CONFIGURE_TARGET}
MAN1= dbmmanage.1 htdigest.1 htpasswd.1
MAN8= ab.8 apachectl.8 apxs.8 httpd.8 logresolve.8 rotatelogs.8 suexec.8
-.include <bsd.port.pre.mk>
-
post-extract:
- @${CP} ${DISTDIR}/powerlogo.gif ${WRKSRC}/docs/icons/freebsd.gif
+ @${INSTALL_DATA} ${DISTDIR}/powerlogo.gif ${WRKSRC}/docs/icons/freebsd.gif
post-patch:
@cd ${WRKSRC}/docs/docroot && \
for f in index.html.*; do (\
- ${PERL} -pi -e 's,apache_pb,icons/freebsd.gif" ALT="[Powered by FreeBSD]"><IMG SRC="apache_pb2_ani,g' $$f \
+ ${REINPLACE_CMD} -e 's,apache_pb,icons/freebsd.gif"\
+ ALT="[Powered by FreeBSD]"><IMG SRC="apache_pb2_ani,g' $$f \
); done
- @${FIND} ${WRKSRC} -name "*.orig" -exec ${RM} -f {} \;
+ @${FIND} ${WRKSRC} \( -name "*.orig" -or -name "*.bak" \) -exec ${RM} -f {} \;
@${SED} ${RC_SUB} ${FILESDIR}/apache.sh >${WRKDIR}/apache2.sh
@${SED} ${RC_SUB} ${FILESDIR}/config.layout >>${WRKSRC}/config.layout
+ @${RM} -f ${WRKSRC}/docs/manual/index.html.ko.euc-kr
pre-install:
PKG_PREFIX=${PREFIX} ${SH} pkg-install ${PKGNAME} PRE-INSTALL
@@ -124,7 +141,5 @@ post-install:
${ECHO} "Installing ${PREFIX}/etc/rc.d/apache2.sh startup file."; \
${INSTALL_SCRIPT} -m 751 ${WRKDIR}/apache2.sh ${PREFIX}/etc/rc.d/apache2.sh; \
fi
- @[ -d ${DESTDIR}/var/log ] || ${MKDIR} ${DESTDIR}/var/log
- @[ -d ${DESTDIR}/var/run ] || ${MKDIR} ${DESTDIR}/var/run
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>