aboutsummaryrefslogtreecommitdiffstats
path: root/www/apache20
diff options
context:
space:
mode:
authorclement <clement@FreeBSD.org>2004-01-09 01:42:03 +0800
committerclement <clement@FreeBSD.org>2004-01-09 01:42:03 +0800
commit3eb885176442d2f5aa6e14973f363dfbcb058416 (patch)
tree984b1cfd85124ee6cd14f6cfd5b6245bc7348c00 /www/apache20
parent107c692a0ba4ad55f8a2e4c247d68b6ee340878a (diff)
downloadfreebsd-ports-gnome-3eb885176442d2f5aa6e14973f363dfbcb058416.tar.gz
freebsd-ports-gnome-3eb885176442d2f5aa6e14973f363dfbcb058416.tar.zst
freebsd-ports-gnome-3eb885176442d2f5aa6e14973f363dfbcb058416.zip
Apache2 PORTREVISION 2:
- Move docs-related stuff to Makefile.doc - Better MPM handling (for slave ports) - Fix HTTP_PORT behaviour - Make suExec more configurable [1] - Now config script are regenerated by buildconfig, to improve slave ports support and minimize apr/apache2 ports conflict [2] - Fix typo in AUTH_MODULES routine [3] [4] - apr threaded support [5] - Fix Segmentation fault with LDAP [6] - Add db42 support. [7] (just uncomment related lines if you installed it from shar) - add SLAVE_DESIGNED_FOR variable for slave ports to automaticaly mark them as BROKEN, if they are out of sync with apache2 PRs: 60444 [1], 61030 [4] Requested by: Matthias Andree <matthias.andree@gmx.de> [7] Suggested by: kuriyama [2] [5] Submitted by: Daniel Tasov <danielt@pilgerer.org> [1], kuriyama [5], motoyuki [3], Scott Michel <scottm@cs.ucla.edu> [4] Obtained from: Apache CVS [6] Reviewed by: erwin, linimon Approved by: erwin (mentor)
Diffstat (limited to 'www/apache20')
-rw-r--r--www/apache20/Makefile127
-rw-r--r--www/apache20/Makefile.doc120
-rw-r--r--www/apache20/Makefile.modules77
-rw-r--r--www/apache20/distinfo2
-rw-r--r--www/apache20/files/patch-configure39
-rw-r--r--www/apache20/files/patch-configure.in33
-rw-r--r--www/apache20/files/patch-srclib:apr-util:build:dbm.4192
-rw-r--r--www/apache20/files/patch-srclib:apr-util:configure79
-rw-r--r--www/apache20/files/patch-srclib:apr:build:apr_hints.m425
9 files changed, 438 insertions, 256 deletions
diff --git a/www/apache20/Makefile b/www/apache20/Makefile
index 53b0903fe518..016f21202d60 100644
--- a/www/apache20/Makefile
+++ b/www/apache20/Makefile
@@ -4,10 +4,12 @@
#
# $FreeBSD$
#
+# For more information, please read Makefile.doc
+#
PORTNAME= apache
PORTVERSION= 2.0.48
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www ipv6
MASTER_SITES= ${MASTER_SITE_APACHE_HTTPD} \
http://sheepkiller.nerim.net/ports/${PORTNAME}/:powerlogo
@@ -16,7 +18,7 @@ DISTFILES= ${DISTNAME}.tar.gz powerlogo.gif:powerlogo
DIST_SUBDIR= apache2
EXTRACT_ONLY= ${DISTNAME}.tar.gz
-MAINTAINER?= sheepkiller@cultdeadsheep.org
+MAINTAINER?= clement@FreeBSD.org
COMMENT?= Version 2 of the extremely popular Apache http server
LIB_DEPENDS= expat.4:${PORTSDIR}/textproc/expat2
@@ -27,82 +29,38 @@ CONFLICTS= apache+ipv6-1.* apache+modssl-1.* apache+ssl-1.* apache-1.* apache_fp
caudium-devel-1.* caudium10-1.* caudium12-* \
ru-apache+mod_ssl-1.* ru-apache-1.* thttpd-2.*
-## Available knobs:
-## By default, modules are compiled as dynamically loadable (DSO) modules.
-##
-## Apache-related
-## WITH_MPM: prefork (default)
-## worker
-## perchild
-## WITH_HTTP_PORT: default: 80
-## WITH_LDAP: Enable LDAP support (mod_auth_ldap)
-## WITHOUT_PROXY: Disable proxy support
-## WITH_CUSTOM_PROXY: Let you choose which proxy modules you wish
-## WITHOUT_AUTH: Disable auth modules
-## WITH_CUSTOM_AUTH: Let you choose which auth modules you wish
-## WITHOUT_DAV: Disable DAV support
-## WITH_IPV6_V6ONLY: Disable IPv4 support
-## WITHOUT_SSL: Disable SSL support
-## WITH_THREADS: Enable threads support !! USE IT WITH CARE !!
-## WITH_CUSTOM_THREADS: Let you choose which threaded modules you want
-## WITH_DBM: Choose your DBM: bdb (Berkeley DB), gdbm or ndbm (default)
-## WITH_BERKELEYDB: Choose your BerkeleyDB version: db2, db3, db4, db41 or FreeBSD (1.85)(default)
-## WITH_STATIC_SUPPORT: Build statically linked support binaries
-## WITH_STATIC_APACHE: Build a static version of httpd (implies WITH_STATIC_MODULES)
-## WITH_ALL_STATIC_MODULES: All modules will be statically linked.
-## WITH_STATIC_MODULES: List of modules to build modules statics (usefull for slave ports)
-## (They must be already enabled (i.e. WITH_MODULES or with default configuration
-## use 'make show-modules', to check if they are enabled)
-## WITH_EXPERIMENTAL: Build and install experimental modules
-## WITH_EXTRA_MODULES: To add addtionnal modules
-## WITH_MODULES: List of your own modules
-## WITHOUT_MODULES: Disable listed modules
-##
-##
-## Port-related:
-## WITHOUT_WWW: Implies NO_CGI, NO_WWWDATA, NO_ICONS and NO_ERROR
-## WITH_CUSTOM_WWW: Let you choose your ${LOCALBASE}/www components: [cgi|errordocs|icons|wwwdata]
-##
-## Available make targets:
-## show-options: prints this message
-## show-modules: prints list of available modules
-##
-## Examples:
-## make WITHOUT_SSL=yes WITH_EXTRA_MODULES="bucketeer case_filter case_filter_in" WITHOUT_PROXY=yes
-## make WITH_STATIC_MODULES="ssl rewrite include" WITH_EXPERIMENTAL=yes WITH_CUSTOM_AUTH="auth auth_dbm"
-## make WITH_EXPERIMENTAL=yes WITHOUT_MODULES="access speling status"
-## make WITH_MODULES="include rewrite auth"
-##
-
-WITH_MPM?= prefork # or worker, perchild
-HTTP_PORT?= ${WITH_HTTP_PORT}
+# patch files
+PATCH_SITES+= http://www.cultdeadsheep.org/FreeBSD/ports/download/distfiles/:apache
+PATCHFILES+= httpd-2.0.48-buildconf.patch:apache \
+ httpd-2.0.48-ldap-fix.patch:apache
+PATCH_DIST_STRIP+= -p1:apache-clem
+SCRIPTS_ENV+= LIBTOOL=${LIBTOOL} LIBTOOLIZE=${LIBTOOLIZE} \
+ LIBTOOL_VERSION=${LIBTOOL_VERSION}
-GNU_CONFIGURE= yes
+WANT_AUTOCONF_VER?= 253
USE_LIBTOOL= yes
USE_PERL5= yes
USE_REINPLACE= yes
CONFIGURE_ARGS= --prefix=${PREFIX_RELDEST} \
--enable-layout=FreeBSD \
--with-perl=${PERL5} \
- --with-port=${HTTP_PORT} \
+ --with-port=${WITH_HTTP_PORT} \
--with-expat=${LOCALBASE} \
--libdir=${PREFIX_RELDEST}/lib/apache2 \
--includedir=${PREFIX_RELDEST}/include/apache2
-CONFIGURE_ENV= CC="${CC}" CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" \
- LDFLAGS="${LDFLAGS}" CONFIG_SHELL="${SH}"
+CONFIGURE_ENV= CC="${CC}" CPPFLAGS="${CPPFLAGS}" \
+ CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}" \
+ LIBS="${PTHREAD_LIBS}" \
+ LDFLAGS="${LDFLAGS}" CONFIG_SHELL="${SH}"
-DOCSDIR= share/doc/apache2
PREFIX_RELDEST= ${PREFIX:S,^${DESTDIR},,}
RC_SUB= -e 's,@@PREFIX@@,${PREFIX_RELDEST},g'
MAKE_ENV+= DESTDIR=${DESTDIR} EXPR_COMPAT=yes
-.if defined(NOPORTDOCS)
-MAKE_ENV+= NOPORTDOCS=yes
-.endif
+WITH_MPM?= prefork # or worker, perchild
-MAN1= dbmmanage.1 htdigest.1 htpasswd.1
-MAN8= ab.8 apachectl.8 apxs.8 httpd.8 logresolve.8 rotatelogs.8 suexec.8
+WITH_HTTP_PORT?= 80
.if !defined(WITH_IPV6_V6ONLY)
CONFIGURE_ARGS+= --enable-v4-mapped
@@ -112,47 +70,33 @@ CONFIGURE_ARGS+= --enable-v4-mapped
USE_OPENSSL= yes
.endif
-.if defined(WITH_LDAP)
-USE_OPENLDAP= YES
-CONFIGURE_ARGS+= --with-ldap \
- --with-ldap-lib="${LOCALBASE}/lib" \
- --with-ldap-include="${LOCALBASE}/include"
-.endif
-
-.if defined(WITHOUT_WWW)
-NO_CGI= YES
-NO_WWWDATA= YES
-NO_ICONS= YES
-NO_ERROR= YES
+.if defined(WITH_STATIC_SUPPORT)
+CONFIGURE_ARGS+= --enable-static-support
.endif
-.if defined(WITH_CUSTOM_WWW)
-. if ${WITH_CUSTOM_WWW:Mcgi} == ""
-NO_CGI= YES
-. endif
-. if ${WITH_CUSTOM_WWW:Mwwwdata} == ""
-NO_WWWDATA= YES
-. endif
-. if ${WITH_CUSTOM_WWW:Merrordocs} == ""
-NO_ERROR= YES
-. endif
-. if ${WITH_CUSTOM_WWW:Micons} == ""
-NO_ICONS= YES
-. endif
+# for slave ports
+.if !defined(MASTERDIR)
+APACHEDIR= ${.CURDIR}
+.else
+APACHEDIR= ${MASTERDIR}
.endif
-.if defined(WITH_STATIC_SUPPORT)
-CONFIGURE_ARGS+= --enable-static-support
+.if defined (WITH_LDAP)
+USE_OPENLDAP= YES
+CONFIGURE_ARGS+= --with-ldap \
+ --with-ldap-lib="${LOCALBASE}/lib" \
+ --with-ldap-include="${LOCALBASE}/include"
.endif
.include <bsd.port.pre.mk>
-.include "${.CURDIR}/Makefile.modules"
+.include "${APACHEDIR}/Makefile.doc"
+.include "${APACHEDIR}/Makefile.modules"
CONFIGURE_ARGS+= --with-mpm=${WITH_MPM:L} ${CONFIGURE_TARGET}
show-options:
- @${SED} -ne 's/^##//p' ${.CURDIR}/Makefile
+ @${SED} -ne 's/^##//p' ${APACHEDIR}/Makefile.doc
show-modules:
@for module in $(AVAILABLE_MODULES) ; do \
@@ -177,6 +121,9 @@ pre-everything::
post-extract:
@${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/powerlogo.gif ${WRKSRC}/docs/icons/freebsd.gif
+pre-configure:
+ cd ${WRKSRC}; ${SETENV} ${SCRIPTS_ENV} ./buildconf
+
post-patch:
@cd ${WRKSRC}/docs/docroot && \
for f in index.html.*; do (\
diff --git a/www/apache20/Makefile.doc b/www/apache20/Makefile.doc
new file mode 100644
index 000000000000..7488d59e1266
--- /dev/null
+++ b/www/apache20/Makefile.doc
@@ -0,0 +1,120 @@
+# Makefile.doc
+# Author: Clement Laforet <clement@FreeBSD.org>
+#
+# This files contains:
+# - make options output
+# - apache2 man/docs routines
+#
+# $FreeBSD$
+#
+
+## Available knobs:
+## By default, modules are compiled as dynamically loadable (DSO) modules.
+##
+## Apache-related
+## WITH_MPM: prefork (default)
+## worker
+## perchild
+## WITH_HTTP_PORT: default: 80
+## WITH_LDAP: Enable LDAP support (mod_auth_ldap)
+## WITHOUT_PROXY: Disable proxy support
+## WITH_CUSTOM_PROXY: Let you choose which proxy modules you wish
+## WITHOUT_AUTH: Disable auth modules
+## WITH_CUSTOM_AUTH: Let you choose which auth modules you wish
+## WITHOUT_DAV: Disable DAV support
+## WITH_IPV6_V6ONLY: Disable IPv4 support
+## WITHOUT_SSL: Disable SSL support
+## WITH_THREADS: Enable threads support !! USE IT WITH CARE !!
+## WITH_CUSTOM_THREADS: Let you choose which threaded modules you want
+## WITH_DBM: Choose your DBM: bdb (Berkeley DB), gdbm or ndbm (default)
+## WITH_BERKELEYDB: Choose your BerkeleyDB version: db2, db3, db4, db41 or FreeBSD (1.85)(default)
+## WITH_STATIC_SUPPORT: Build statically linked support binaries
+## WITH_STATIC_APACHE: Build a static version of httpd (implies WITH_STATIC_MODULES)
+## WITH_ALL_STATIC_MODULES: All modules will be statically linked.
+## WITH_STATIC_MODULES: List of modules to build modules statics (usefull for slave ports)
+## (They must be already enabled (i.e. WITH_MODULES or with default configuration
+## use 'make show-modules', to check if they are enabled)
+## WITH_EXPERIMENTAL: Build and install experimental modules
+## WITH_EXTRA_MODULES: To add addtionnal modules
+## WITH_MODULES: List of your own modules
+## WITHOUT_MODULES: Disable listed modules
+## WITH_SUEXEC: Enable suExec support
+## SUEXEC_DOCROOT: SuExec root directory
+## SUEXEC_USERDIR: User subdirectory (default public_html)
+## SUEXEC_SAFEPATH: Set the safepath
+## SUEXEC_UIDMIN: Minimal allowed UID (default 1000)
+## SUEXEC_GIDMIN: Minimal allowed GID (default 1000)
+## SUEXEC_CALLER: User allowed to call SuExec (default ${WWWOWN} (www))
+##
+## Port-related:
+## WITHOUT_WWW: Implies NO_CGI, NO_WWWDATA, NO_ICONS and NO_ERROR
+## WITH_CUSTOM_WWW: Let you choose your ${LOCALBASE}/www components: [cgi|errordocs|icons|wwwdata]
+##
+## Available make targets:
+## show-options: prints this message
+## show-modules: prints list of available modules
+##
+## Examples:
+## make WITHOUT_SSL=yes WITH_EXTRA_MODULES="bucketeer case_filter case_filter_in" WITHOUT_PROXY=yes
+## make WITH_STATIC_MODULES="ssl rewrite include" WITH_EXPERIMENTAL=yes WITH_CUSTOM_AUTH="auth auth_dbm"
+## make WITH_EXPERIMENTAL=yes WITHOUT_MODULES="access speling status"
+## make WITH_MODULES="include rewrite auth"
+##
+
+DOCSDIR= share/doc/apache2
+
+.if defined(NOPORTDOCS)
+MAKE_ENV+= NOPORTDOCS=yes
+.endif
+
+MAN1= dbmmanage.1 htdigest.1 htpasswd.1
+MAN8= ab.8 apachectl.8 apxs.8 httpd.8 logresolve.8 rotatelogs.8 suexec.8
+
+.if defined(WITHOUT_WWW)
+NO_CGI= YES
+NO_WWWDATA= YES
+NO_ICONS= YES
+NO_ERROR= YES
+.elif defined(WITH_CUSTOM_WWW)
+. if ${WITH_CUSTOM_WWW:Mcgi} == ""
+NO_CGI= YES
+. endif
+. if ${WITH_CUSTOM_WWW:Mwwwdata} == ""
+NO_WWWDATA= YES
+. endif
+. if ${WITH_CUSTOM_WWW:Merrordocs} == ""
+NO_ERROR= YES
+. endif
+. if ${WITH_CUSTOM_WWW:Micons} == ""
+NO_ICONS= YES
+. endif
+.endif
+
+.if defined(NO_CGI)
+MAKE_ENV+= NO_CGI=yes
+PLIST_SUB+= CGI="@comment "
+.else
+PLIST_SUB+= CGI=""
+.endif
+
+.if defined(NO_ICONS)
+MAKE_ENV+= NO_ICONS=yes
+PLIST_SUB+= ICONS="@comment "
+.else
+PLIST_SUB+= ICONS=""
+.endif
+
+.if defined(NO_WWWDATA)
+MAKE_ENV+= NO_WWWDATA=yes
+PLIST_SUB+= WWWDATA="@comment "
+.else
+PLIST_SUB+= WWWDATA=""
+.endif
+
+.if defined(NO_ERROR)
+MAKE_ENV+= NO_ERROR=yes
+PLIST_SUB+= ERROR="@comment "
+.else
+PLIST_SUB+= ERROR=""
+.endif
+
diff --git a/www/apache20/Makefile.modules b/www/apache20/Makefile.modules
index e65bc60bd586..a22e33382e43 100644
--- a/www/apache20/Makefile.modules
+++ b/www/apache20/Makefile.modules
@@ -1,5 +1,5 @@
# Makefile.modules
-# Author: Clement Laforet <sheepkiller@cultdeadsheep.org>
+# Author: Clement Laforet <clement@FreeBSD.org>
#
# This file is used to build modules list, DBM dependencies and MPM selection.
# I hope it can easily handle external modules (such as mod_perl) or MPMs, like
@@ -12,6 +12,10 @@
# $FreeBSD$
#
+.if defined(SLAVE_DESIGNED_FOR) && ${PORTVERSION} != ${SLAVE_DESIGNED_FOR}
+BROKEN= "Sorry, ${SLAVENAME} and ${PORTNAME} versionsq are out of sync"
+.endif
+
# MPM section:
# << TO BE WRITTEN >>
.if defined (SLAVE_PORT_MPM)
@@ -35,36 +39,6 @@ PLIST_SUB+= PREFORK="@comment " WORKER="@comment "
PLIST_SUB+= PREFORK="@comment " WORKER="@comment "
.endif
-# Documentation section
-.if defined(NO_CGI)
-MAKE_ENV+= NO_CGI=yes
-PLIST_SUB+= CGI="@comment "
-.else
-PLIST_SUB+= CGI=""
-.endif
-
-.if defined(NO_ICONS)
-MAKE_ENV+= NO_ICONS=yes
-PLIST_SUB+= ICONS="@comment "
-.else
-PLIST_SUB+= ICONS=""
-.endif
-
-.if defined(NO_WWWDATA)
-MAKE_ENV+= NO_WWWDATA=yes
-PLIST_SUB+= WWWDATA="@comment "
-.else
-PLIST_SUB+= WWWDATA=""
-.endif
-
-.if defined(NO_ERROR)
-MAKE_ENV+= NO_ERROR=yes
-PLIST_SUB+= ERROR="@comment "
-.else
-PLIST_SUB+= ERROR=""
-.endif
-
-
# xDBM section
#
.if !defined(WITH_DBM) && defined(WITH_BERKELEYDB)
@@ -80,7 +54,7 @@ CONFIGURE_ARGS+= --with-dbm=sdbm
. elif ${WITH_DBM:L} == "gdbm"
LIB_DEPENDS+= gdbm.3:${PORTSDIR}/databases/gdbm
CONFIGURE_ARGS+= --with-gdbm=${LOCALBASE}
-. elif ${WITH_DBM:L} == "db"
+. elif ${WITH_DBM:L} == "db"
. if ${WITH_BERKELEYDB} == "FreeBSD"
CONFIGURE_ARGS+= --with-dbm=db185 \
--with-berkeley-db=/usr
@@ -96,13 +70,13 @@ CONFIGURE_ARGS+= --with-dbm=db3 \
LIB_DEPENDS+= db4:${PORTSDIR}/databases/db4
CONFIGURE_ARGS+= --with-dbm=db4 \
--with-berkeley-db=${LOCALBASE}
-. if exists(${LOCALBASE}/lib/libdb41.so)
-BROKEN= "It seems you have db41 installed. Current configuration process will choose it. Please use WITH_BERKELEYDB=db41"
-. endif
. elif ${WITH_BERKELEYDB} == "db41"
LIB_DEPENDS+= db41:${PORTSDIR}/databases/db41
CONFIGURE_ARGS+= --with-dbm=db41 \
--with-berkeley-db=${LOCALBASE}
+#. elif ${WITH_BERKELEYDB} == "db42"
+#LIB_DEPENDS+= db-4.2:${PORTSDIR}/databases/db42
+#CONFIGURE_ARGS+= --with-dbm=db42
. else
BROKEN= "Unknown Berkeley DB version"
. endif
@@ -140,7 +114,7 @@ DEFAULT_MODULES= ${AUTH_MODULES} ${DAV_MODULES} ${MISC_MODULES} \
${PROXY_MODULES} ${SLAVE_PORT_MODULES}
AVAILABLE_MODULES= ${DEFAULT_MODULES} ${EXPERIMENTAL_MODULES} ${LDAP_MODULES} ${THREADS_MODULES} \
- ${SSL_MODULE} ${SUEXEC_MODULES}
+ ${SSL_MODULE} ${SUEXEC_MODULES} ${SLAVE_PORT_MODULES}
# Setting "@comment " as default.
.for module in ${AVAILABLE_MODULES}
@@ -177,7 +151,7 @@ _APACHE_MODULES+= ${DEFAULT_MODULES}
. if defined(WITH_CUSTOM_AUTH)
_APACHE_MODULES+= ${WITH_CUSTOM_AUTH}
. elif !defined(WITHOUT_AUTH)
-_APACHE_MODULES+= ${AUTH_MODULE}
+_APACHE_MODULES+= ${AUTH_MODULES}
. endif
. if defined(WITH_CUSTOM_PROXY)
_APACHE_MODULES+= ${WITH_CUSTOM_PROXY}
@@ -213,17 +187,24 @@ RC_SUB+= -e 's,@@SSL@@,,g'
.endif
.if defined(WITH_SUEXEC)
-SUEXEC_DOCROOT?= ${PREFIX_RELDEST}/www/data
-SUEXEC_USERDIR?= public_html
-SUEXEC_SAFEPATH?= ${PREFIX_RELDEST}/bin:${LOCALBASE}/bin:/usr/bin:/bin
-_APACHE_MODULES+= ${SUEXEC_MODULES}
-CONFIGURE_ARGS+= --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="${SUEXEC_SAFEPATH}" \
- --with-suexec-logfile="/var/log/httpd-suexec.log" \
- --with-suexec-bin="${PREFIX_RELDEST}/sbin/suexec"
+SUEXEC_DOCROOT?= ${PREFIX_RELDEST}/www/data
+SUEXEC_USERDIR?= public_html
+SUEXEC_SAFEPATH?= ${PREFIX_RELDEST}/bin:${LOCALBASE}/bin:/usr/bin:/bin
+SUEXEC_UIDMIN?= 1000
+SUEXEC_GIDMIN?= 1000
+SUEXEC_CALLER?= ${APACHE_USER}
+_APACHE_MODULES+= ${SUEXEC_MODULES}
+CONFIGURE_ARGS+= --with-suexec-caller=${SUEXEC_CALLER} \
+ --with-suexec-uidmin=${SUEXEC_UIDMIN} \
+ --with-suexec-gidmin=${SUEXEC_GIDMIN} \
+ --with-suexec-userdir="${SUEXEC_USERDIR}" \
+ --with-suexec-docroot="${SUEXEC_DOCROOT}" \
+ --with-suexec-safepath="${SUEXEC_SAFEPATH}" \
+ --with-suexec-logfile="/var/log/httpd-suexec.log" \
+ --with-suexec-bin="${PREFIX_RELDEST}/sbin/suexec"
+. if defined(WITH_SUEXEC_UMASK)
+CONFIGURE_ARGS+= --with-suexec-umask=${WITH_SUEXEC_UMASK}
+. endif
.endif
.if defined(WITH_EXTRA_MODULES)
_APACHE_MODULES+= ${WITH_EXTRA_MODULES}
diff --git a/www/apache20/distinfo b/www/apache20/distinfo
index 7a049061990b..374f9067ab3e 100644
--- a/www/apache20/distinfo
+++ b/www/apache20/distinfo
@@ -1,2 +1,4 @@
MD5 (apache2/httpd-2.0.48.tar.gz) = 466c63bb71b710d20a5c353df8c1a19c
MD5 (apache2/powerlogo.gif) = 0f106073b3c7844cf22d4df126b27c62
+MD5 (apache2/httpd-2.0.48-buildconf.patch) = 6c87bda01550a99402c3ea0bd333c5e0
+MD5 (apache2/httpd-2.0.48-ldap-fix.patch) = cfb30edd10c43e51953aecc0da40b104
diff --git a/www/apache20/files/patch-configure b/www/apache20/files/patch-configure
deleted file mode 100644
index d5e81693c4c9..000000000000
--- a/www/apache20/files/patch-configure
+++ /dev/null
@@ -1,39 +0,0 @@
---- configure.orig Wed May 28 14:11:27 2003
-+++ configure Fri May 30 07:47:42 2003
-@@ -1513,7 +1513,7 @@
- $srcdir/config.layout > $pldconf
- layout_name=$LAYOUT
- . $pldconf
-- rm $pldconf
-+ rm -f $pldconf
- for var in prefix exec_prefix bindir sbindir libexecdir mandir \
- sysconfdir datadir errordir iconsdir htdocsdir cgidir \
- includedir localstatedir runtimedir logfiledir libdir \
-@@ -2627,7 +2627,7 @@
- done
-
-
-- if eval $SHELL $ac_abs_srcdir/configure $apr_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir $apache_apr_flags --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir --datadir=$datadir --with-installbuilddir=$installbuilddir
-+ if eval $SHELL $ac_abs_srcdir/configure $apr_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir $apache_apr_flags --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$libdir --datadir=$datadir --with-installbuilddir=$installbuilddir
- then :
- echo "srclib/apr configured properly"
- else
-@@ -2928,7 +2928,7 @@
- done
-
-
-- if eval $SHELL $ac_abs_srcdir/configure $apr_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir --with-apr=../apr --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir
-+ if eval $SHELL $ac_abs_srcdir/configure $apr_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_abs_srcdir --with-apr=../apr --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$libdir
- then :
- echo "srclib/apr-util configured properly"
- else
-@@ -15719,6 +15719,9 @@
-
- cat >>confdefs.h <<_ACEOF
- #define SERVER_CONFIG_FILE "${rel_sysconfdir}/${progname}.conf"
-+#define DEFAULT_ERRORLOG "${rel_logfiledir}/httpd-error.log"
-+#define AP_TYPES_CONFIG_FILE "${rel_sysconfdir}/mime.types"
-+#define DOCUMENT_LOCATION "${rel_htdocsdir}"
- _ACEOF
-
-
diff --git a/www/apache20/files/patch-configure.in b/www/apache20/files/patch-configure.in
new file mode 100644
index 000000000000..bce5e602c918
--- /dev/null
+++ b/www/apache20/files/patch-configure.in
@@ -0,0 +1,33 @@
+--- configure.in.orig Mon Jan 5 14:40:31 2004
++++ configure.in Mon Jan 5 14:44:51 2004
+@@ -69,7 +69,7 @@
+
+ if test "$apr_found" = "reconfig"; then
+ APR_SUBDIR_CONFIG(srclib/apr,
+- [$apache_apr_flags --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir --datadir=$datadir --with-installbuilddir=$installbuilddir],
++ [$apache_apr_flags --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$libdir --datadir=$datadir --with-installbuilddir=$installbuilddir],
+ [--enable-layout=*|\'--enable-layout=*])
+ dnl We must be the first to build and the last to be cleaned
+ AP_BUILD_SRCLIB_DIRS="apr $AP_BUILD_SRCLIB_DIRS"
+@@ -96,7 +96,7 @@
+
+ if test "$apu_found" = "reconfig"; then
+ APR_SUBDIR_CONFIG(srclib/apr-util,
+- [--with-apr=../apr --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$bindir],
++ [--with-apr=../apr --prefix=$prefix --exec-prefix=$exec_prefix --libdir=$libdir --includedir=$includedir --bindir=$libdir],
+ [--enable-layout=*|\'--enable-layout=*])
+ dnl We must be the last to build and the first to be cleaned
+ AP_BUILD_SRCLIB_DIRS="$AP_BUILD_SRCLIB_DIRS apr-util"
+@@ -532,8 +532,12 @@
+ [Root directory of the Apache install area])
+ AC_DEFINE_UNQUOTED(SERVER_CONFIG_FILE, "${rel_sysconfdir}/${progname}.conf",
+ [Location of the config file, relative to the Apache root directory])
++AC_DEFINE_UNQUOTED(DEFAULT_ERRORLOG, "${rel_logfiledir}/httpd-error.log",
++ [Location of error log file])
+ AC_DEFINE_UNQUOTED(AP_TYPES_CONFIG_FILE, "${rel_sysconfdir}/mime.types",
+ [Location of the MIME types config file, relative to the Apache root directory])
++AC_DEFINE_UNQUOTED(DOCUMENT_LOCATION, "${rel_htdocsdir}",
++ [Location of document root])
+ AC_DEFINE_UNQUOTED(APACHE_MPM_DIR, "$MPM_DIR",
+ [Location of the source for the current MPM])
+
diff --git a/www/apache20/files/patch-srclib:apr-util:build:dbm.4 b/www/apache20/files/patch-srclib:apr-util:build:dbm.4
new file mode 100644
index 000000000000..72acc608912c
--- /dev/null
+++ b/www/apache20/files/patch-srclib:apr-util:build:dbm.4
@@ -0,0 +1,192 @@
+--- srclib/apr-util/build/dbm.m4.orig Sun Aug 31 15:27:23 2003
++++ srclib/apr-util/build/dbm.m4 Thu Jan 8 17:11:11 2004
+@@ -48,6 +48,7 @@
+
+ # Save the original values of the flags we tweak.
+ apu_check_lib_save_libs="$LIBS"
++ apu_check_lib_save_ldflags="$LDFLAGS"
+ apu_check_lib_save_cppflags="$CPPFLAGS"
+
+ # The variable `found' is the prefix under which we've found
+@@ -69,15 +70,21 @@
+ description="$header and $lib"
+ ;;
+ * )
+- LDFLAGS="$LDFLAGS -L$bdb_place/lib"
+- CPPFLAGS="$CPPFLAGS -I$bdb_place/include"
++ if test -d $bdb_place; then
++ LDFLAGS="$LDFLAGS -L$bdb_place/lib"
++ CPPFLAGS="$CPPFLAGS -I$bdb_place/include"
++ else
++ AC_MSG_CHECKING([for Berkeley DB $bdb_version in $bdb_place])
++ AC_MSG_RESULT([directory not found])
++ continue
++ fi
+ description="$bdb_place"
+ ;;
+ esac
+
+ # Since there is no AC_MSG_NOTICE in autoconf 2.13, we use this
+ # trick to display a message instead.
+- AC_MSG_CHECKING([checking for Berkeley DB $bdb_version in $description])
++ AC_MSG_CHECKING([for Berkeley DB $bdb_version in $description])
+ AC_MSG_RESULT()
+
+ for bdb_libname in $bdb_default_search_lib_names; do
+@@ -99,7 +106,7 @@
+ | sed -e 's/[^a-zA-Z0-9_]/_/g'`"
+ changequote([,])
+
+- AC_MSG_CHECKING([for $bdb_libname])
++ AC_MSG_CHECKING([for -l$bdb_libname])
+ dnl We can't use AC_CACHE_CHECK here, because that won't print out
+ dnl the value of the computed cache variable properly.
+ AC_CACHE_VAL($cache_id,
+@@ -291,8 +298,8 @@
+ fi
+ APU_CHECK_BERKELEY_DB(1, -1, -1,
+ "$places",
+- "db_185.h",
+- "db"
++ "db.h",
++ "c"
+ )
+ if test "$apu_have_db" = "1"; then
+ apu_db_version=185
+@@ -350,12 +357,12 @@
+ AC_DEFUN(APU_CHECK_DB4, [
+ places=$1
+ if test -z "$places"; then
+- places="std /usr/local /usr/local/BerkeleyDB.4.0"
++ places="std /usr/local /usr/local/BerkeleyDB.4.0 /boot/home/config"
+ fi
+ APU_CHECK_BERKELEY_DB("4", "0", "-1",
+ "$places",
+- "db4/db.h db.h",
+- "db-4.0 db4 db"
++ "db4/db.h",
++ "db4"
+ )
+ if test "$apu_have_db" = "1"; then
+ apu_db_version=4
+@@ -371,12 +378,33 @@
+ AC_DEFUN(APU_CHECK_DB41, [
+ places=$1
+ if test -z "$places"; then
+- places="std /usr/local/BerkeleyDB.4.1"
++ places="std /usr/local/BerkeleyDB.4.1 /boot/home/config"
+ fi
+ APU_CHECK_BERKELEY_DB("4", "1", "-1",
+ "$places",
+- "db4/db.h db.h",
+- "db-4.1 db4 db"
++ "db41/db.h",
++ "db41"
++ )
++ if test "$apu_have_db" = "1"; then
++ apu_db_version=4
++ fi
++])
++
++
++dnl
++dnl APU_CHECK_DB42: is DB4.2 present?
++dnl
++dnl if present: sets apu_db_header, apu_db_lib, and apu_db_version
++dnl
++AC_DEFUN(APU_CHECK_DB42, [
++ places=$1
++ if test -z "$places"; then
++ places="${LOCALBASE}/include:${LOCALBASE}/lib/db42 /usr/local/BerkeleyDB.4.2 /boot/home/config"
++ fi
++ APU_CHECK_BERKELEY_DB("4", "2", "-1",
++ "$places",
++ "db42/db.h",
++ "db-4.2 db-4.2.2"
+ )
+ if test "$apu_have_db" = "1"; then
+ apu_db_version=4
+@@ -431,6 +459,12 @@
+ AC_MSG_ERROR(Berkeley db4 not found)
+ fi
+ ;;
++ db42)
++ APU_CHECK_DB42("$check_places")
++ if test "$apu_db_version" != "4"; then
++ AC_MSG_ERROR(Berkeley db4 not found)
++ fi
++ ;;
+ default)
+ APU_CHECK_DB_ALL("$check_places")
+ ;;
+@@ -438,22 +472,25 @@
+ ])
+
+ dnl
+-dnl APU_CHECK_DB_ALL: Try all Berkeley DB versions, from 4.1 to 1.
++dnl APU_CHECK_DB_ALL: Try all Berkeley DB versions, from 4.2 to 1.
+ dnl
+ AC_DEFUN(APU_CHECK_DB_ALL, [
+ all_places=$1
+-
+- APU_CHECK_DB41("$all_places")
++
++ APU_CHECK_DB42("$all_places")
+ if test "$apu_db_version" != "4"; then
+- APU_CHECK_DB4("$all_places")
++ APU_CHECK_DB41("$all_places")
+ if test "$apu_db_version" != "4"; then
+- APU_CHECK_DB3("$all_places")
+- if test "$apu_db_version" != "3"; then
+- APU_CHECK_DB2("$all_places")
+- if test "$apu_db_version" != "2"; then
+- APU_CHECK_DB1("$all_places")
+- if test "$apu_db_version" != "1"; then
+- APU_CHECK_DB185("$all_places")
++ APU_CHECK_DB4("$all_places")
++ if test "$apu_db_version" != "4"; then
++ APU_CHECK_DB3("$all_places")
++ if test "$apu_db_version" != "3"; then
++ APU_CHECK_DB2("$all_places")
++ if test "$apu_db_version" != "2"; then
++ APU_CHECK_DB1("$all_places")
++ if test "$apu_db_version" != "1"; then
++ APU_CHECK_DB185("$all_places")
++ fi
+ fi
+ fi
+ fi
+@@ -487,11 +524,11 @@
+
+ AC_ARG_WITH(dbm, [
+ --with-dbm=DBM choose the DBM type to use.
+- DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4}
++ DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4,db41,db42}
+ ], [
+ if test "$withval" = "yes"; then
+ AC_MSG_ERROR([--with-dbm needs to specify a DBM type to use.
+- One of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4])
++ One of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4, db41, db42])
+ fi
+ requested="$withval"
+ ], [
+@@ -665,6 +702,10 @@
+ apu_use_db=1
+ apu_default_dbm=db4
+ ;;
++ db42)
++ apu_use_db=1
++ apu_default_dbm=db4
++ ;;
+ default)
+ dnl ### use more sophisticated DBMs for the default?
+ apu_default_dbm="sdbm (default)"
+@@ -672,7 +713,7 @@
+ ;;
+ *)
+ AC_MSG_ERROR([--with-dbm=$look_for is an unknown DBM type.
+- Use one of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4])
++ Use one of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4, db41, db42])
+ ;;
+ esac
+
diff --git a/www/apache20/files/patch-srclib:apr-util:configure b/www/apache20/files/patch-srclib:apr-util:configure
deleted file mode 100644
index 7f28b2950788..000000000000
--- a/www/apache20/files/patch-srclib:apr-util:configure
+++ /dev/null
@@ -1,79 +0,0 @@
---- srclib/apr-util/configure.orig Thu Nov 6 13:05:46 2003
-+++ srclib/apr-util/configure Thu Nov 6 13:05:30 2003
-@@ -7586,8 +7586,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db4/db.h db.h"
-- bdb_default_search_lib_names="db-4.1 db4 db"
-+ bdb_default_search_headers="db41/db.h db4/db.h db.h"
-+ bdb_default_search_lib_names="db41 db-4.1 db4 db"
-
-
- apu_have_db=0
-@@ -11281,8 +11281,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db_185.h"
-- bdb_default_search_lib_names="db"
-+ bdb_default_search_headers="db.h"
-+ bdb_default_search_lib_names="c"
-
-
- apu_have_db=0
-@@ -13401,8 +13401,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db4/db.h db.h"
-- bdb_default_search_lib_names="db-4.1 db4 db"
-+ bdb_default_search_headers="db41/db.h db4/db.h db.h"
-+ bdb_default_search_lib_names="db41 db-4.1 db4 db"
-
-
- apu_have_db=0
-@@ -13934,8 +13934,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db4/db.h db.h"
-- bdb_default_search_lib_names="db-4.1 db4 db"
-+ bdb_default_search_headers="db41/db.h db4/db.h db.h"
-+ bdb_default_search_lib_names="db41 db-4.1 db4 db"
-
-
- apu_have_db=0
-@@ -17113,8 +17113,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db4/db.h db.h"
-- bdb_default_search_lib_names="db-4.1 db4 db"
-+ bdb_default_search_headers="db41/db.h db4/db.h db.h"
-+ bdb_default_search_lib_names="db41 db-4.1 db4 db"
-
-
- apu_have_db=0
-@@ -22928,8 +22928,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db4/db.h db.h"
-- bdb_default_search_lib_names="db-4.1 db4 db"
-+ bdb_default_search_headers="db41/db.h db4/db.h db.h"
-+ bdb_default_search_lib_names="db41 db-4.1 db4 db"
-
-
- apu_have_db=0
-@@ -23461,8 +23461,8 @@
- fi
- fi
- bdb_places="$places"
-- bdb_default_search_headers="db4/db.h db.h"
-- bdb_default_search_lib_names="db-4.1 db4 db"
-+ bdb_default_search_headers="db41/db.h db4/db.h db.h"
-+ bdb_default_search_lib_names="db41 db-4.1 db4 db"
-
-
- apu_have_db=0
diff --git a/www/apache20/files/patch-srclib:apr:build:apr_hints.m4 b/www/apache20/files/patch-srclib:apr:build:apr_hints.m4
new file mode 100644
index 000000000000..444351563b7f
--- /dev/null
+++ b/www/apache20/files/patch-srclib:apr:build:apr_hints.m4
@@ -0,0 +1,25 @@
+--- srclib/apr/build/apr_hints.m4.orig Tue Jun 3 00:52:28 2003
++++ srclib/apr/build/apr_hints.m4 Mon Jan 5 12:36:32 2004
+@@ -130,14 +130,15 @@
+ APR_ADDTO(CPPFLAGS, [-DNETBSD])
+ ;;
+ *-freebsd*)
+- case $host in
+- *freebsd[2345]*)
+- APR_ADDTO(CFLAGS, [-funsigned-char])
+- ;;
+- esac
+- APR_SETIFNULL(enable_threads, [no])
++ os_version=`sysctl -n kern.osreldate`
++ APR_ADDTO(CFLAGS, [-funsigned-char])
+ APR_SETIFNULL(apr_lock_method, [USE_FLOCK_SERIALIZE])
+- APR_ADDTO(CPPFLAGS, [-D_REENTRANT -D_THREAD_SAFE])
++ if test $os_version -lt "500016"; then
++ ac_cv_pthreads_cflags="-D_THREAD_SAFE -D_REENTRANT"
++ LIBS="$LIBS -pthread"
++ else
++ ac_cv_pthreads_lib="c_r"
++ fi
+ ;;
+ *-next-nextstep*)
+ APR_SETIFNULL(CFLAGS, [-O])