pkgsrc/www/apache2/Makefile
itojun 8a40a41e87 upgrade to 2.0.43.
Changes with Apache 2.0.43

  *) SECURITY: [CAN-2002-0840] HTML-escape the address produced by
     ap_server_signature() against this cross-site scripting
     vulnerability exposed by the directive 'UseCanonicalName Off'.
     Also HTML-escape the SERVER_NAME environment variable for CGI
     and SSI requests.  It's safe to escape as only the '<', '>',
     and '&' characters are affected, which won't appear in a valid
     hostname.  Reported by Matthew Murphy <mattmurphy@kc.rr.com>.
     [Brian Pane]

  *) Fix a core dump in mod_cache when it attemtped to store uncopyable
     buckets. This happened, for instance, when a file to be cached
     contained SSI tags to execute a CGI script (passed as a pipe
     bucket). [Paul J. Reder]

  *) Ensure that output already available is flushed to the network
     when the content-length filter realizes that no new output will
     be available for a while.  This helps some streaming CGIs as
     well as some other dynamically-generated content.  [Jeff Trawick]

  *) Fix a mutex problem in mod_ssl session cache support which
     could lead to an infinite loop.  PR 12705
     [amund.elstad@ergo.no (Amund Elstad), Jeff Trawick]

  *) SECURITY: Allow POST requests and CGI scripts to work when DAV
     is enabled on the location.  [Ryan Bloom]

  *) Allow the UserDir directive to accept a list of directories.
     This matches what Apache 1.3 does.  Also add documentation for
     this feature. [Jay Ball <jay@veggiespam.com>]

  *) New Module: mod_logio. adds the ability to log bytes sent and
     received. [Bojan Smojver <bojan@rexursive.com>]

  *) SuExec needs to use the same default directory as the rest of
     server, namely /usr/local/apache2.
     [SangBeom han <sbhan@os.korea.ac.kr>]

  *) Get mod_auth_ldap to retry connections on LDAP_SERVER_DOWN.
     [Thomas Bennett <thomas.bennett@eds.com>, Graham Leggett]

  *) Make sure the contents of the WWW-Authenticate header is
     passed on a 4xx error by proxy. Previously all headers
     were dropped, resulting in the browser being unable to
     authenticate. [Dr Richard Reiner <rreiner@fscinternet.com>,
     Richard Danielli <rdanielli@fscinternet.com>, Graham Wiseman
     <gwiseman@fscinternet.com>, David Henderson
     <dhenderson@fscinternet.com>]

  *) Make mod_cache's CacheMaxStreamingBuffer directive work
     properly for virtual hosts that override server-wide mod_cache
     setttings.  [Matthieu Estrade <estrade-m@ifrance.com>]

  *) Add -p option to apxs to allow programs to be compiled with apxs.
     [Justin Erenkrantz]
2002-10-04 02:35:51 +00:00

158 lines
5.1 KiB
Makefile

# $NetBSD: Makefile,v 1.16 2002/10/04 02:35:51 itojun Exp $
DISTNAME= httpd-${APACHE_VERSION}
PKGNAME= apache-${APACHE_VERSION}
APACHE_VERSION= 2.0.43
CATEGORIES= www
MASTER_SITES= http://httpd.apache.org/dist/httpd/ \
http://httpd.apache.org/dist/httpd/old/ \
ftp://ftp.fu-berlin.de/unix/network/www/apache/httpd/ \
http://www.netbsd.org/images/logos/
MAINTAINER= jlam@netbsd.org
HOMEPAGE= http://httpd.apache.org/
COMMENT= Apache HTTP (Web) server, version 2
CONFLICTS= apache-*ssl-[0-9]* apache-[0-9]* apache6-[0-9]*
CONFLICTS+= ap-*-[0-9]* # Apache-1.x DSOs
BUILD_DEFS+= USE_INET6
USE_BUILDLINK2= YES
USE_GMAKE= YES
USE_LIBTOOL= YES
LIBTOOL_OVERRIDE= ${WRKSRC}/srclib/apr/libtool
GNU_CONFIGURE= YES
CONFIGURE_ARGS+= --enable-layout=NetBSD
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --with-port=80
# Apache Portable Runtime library configure options
CONFIGURE_ARGS+= --with-mpm=prefork --with-devrandom=/dev/urandom
# Apache Portable Runtime Utility library configure options
CONFIGURE_ARGS+= --with-dbm=sdbm
CONFIGURE_ARGS+= --with-expat=${BUILDLINK_PREFIX.expat}
.include "../../mk/bsd.prefs.mk"
DFLT_APACHE_MODULES= all
DFLT_APACHE_MODULES+= proxy proxy_connect proxy_ftp proxy_http
DFLT_APACHE_MODULES+= ssl
APACHE_MODULES?= ${DFLT_APACHE_MODULES}
CONFIGURE_ARGS+= --enable-modules="${APACHE_MODULES}"
CONFIGURE_ARGS+= --enable-so
BUILD_DEFS+= APACHE_MODULES
APACHE_USER?= www
APACHE_GROUP?= www
SUEXEC_COMMENT?= "@comment "
.if defined(APACHE_SUEXEC) && ${APACHE_SUEXEC} == YES
APACHE_SUEXEC_DOCROOT?= ${PREFIX}/share/apache/htdocs
APACHE_SUEXEC_PATH= /bin:/usr/bin:${PREFIX}/bin:/usr/local/bin
APACHE_SUEXEC_CONFIGURE_ARGS+= \
--with-suexec-bin=${PREFIX}/sbin/suexec \
--with-suexec-caller=${APACHE_SUEXEC_USER} \
--with-suexec-safepath='${APACHE_SUEXEC_PATH}' \
--with-suexec-docroot=${APACHE_SUEXEC_DOCROOT}
APACHE_MODULES+= suexec
CONFIGURE_ARGS+= ${APACHE_SUEXEC_CONFIGURE_ARGS:M--with-suexec-*}
BUILD_DEFS+= APACHE_SUEXEC APACHE_SUEXEC_CONFIGURE_ARGS
SUEXEC_COMMENT= # empty
.endif
PKG_GROUPS= ${APACHE_GROUP}
PKG_USERS= ${APACHE_USER}:${APACHE_GROUP}::Apache\\ user
PLIST_SUBST+= SUEXEC_COMMENT=${SUEXEC_COMMENT}
PKG_SYSCONFVAR= apache
PKG_SYSCONFSUBDIR?= httpd
EGDIR= ${PREFIX}/share/examples/httpd
SBINDIR= ${PREFIX}/sbin
CONF_FILES= ${EGDIR}/httpd-std.conf ${PKG_SYSCONFDIR}/httpd.conf
CONF_FILES+= ${EGDIR}/ssl-std.conf ${PKG_SYSCONFDIR}/ssl.conf
SUPPORT_FILES= ${SBINDIR}/envvars-std ${SBINDIR}/envvars
SUPPORT_FILES+= ${EGDIR}/magic ${PKG_SYSCONFDIR}/magic
SUPPORT_FILES+= ${EGDIR}/mime.types ${PKG_SYSCONFDIR}/mime.types
RCD_SCRIPTS= apache
MAKE_DIRS= ${PREFIX}/share/httpd
MAKE_DIRS+= ${PREFIX}/share/httpd/htdocs
OWN_DIRS= /var/log/httpd
OWN_DIRS+= /var/db/httpd
OWN_DIRS_PERMS+= /var/db/httpd/proxy ${APACHE_USER} ${APACHE_GROUP} 0755
# Add dependencies for the modules that will be built. For each module
# ap_mod listed in ${APACHE_MODULES}, _AP_DEPENDS.ap_mod is a whitespace
# separated list of dependencies or buildlink2.mk files needed to build
# ap_mod, and _AP_CFG_ARGS.ap_mod is a whitespace separated list of
# configure script options for ap_mod.
#
_AP_DEPENDS.ssl= ../../security/openssl/buildlink2.mk
_AP_DEPENDS.deflate= ../../devel/zlib/buildlink2.mk
_AP_CFG_ARGS.ssl= --with-ssl=${BUILDLINK_PREFIX.openssl}
_AP_CFG_ARGS.deflate= --with-z=${BUILDLINK_PREFIX.zlib}
.for _ap_mod in ${APACHE_MODULES}
. if defined(_AP_DEPENDS.${_ap_mod}) && !empty(_AP_DEPENDS.${_ap_mod})
. for _ap_depend in ${_AP_DEPENDS.${_ap_mod}}
. if exists(${_ap_depend})
. include "${_ap_depend}"
. else
DEPENDS+= ${_ap_depend}
. endif
. endfor
. endif
. if defined(_AP_CFG_ARGS.${_ap_mod}) && !empty(_AP_CFG_ARGS.${_ap_mod})
CONFIGURE_ARGS+= ${_AP_CFG_ARGS.${_ap_mod}}
. endif
.endfor
AP_CONF_FILE_SED= -e "s|${EGDIR}|${PKG_SYSCONFDIR}|g"
AP_CONF_FILE_SED+= -e "s|${PREFIX}/htdocs|${PREFIX}/share/httpd/htdocs|g"
AP_CONF_FILE_SED+= -e "s|${PREFIX}/conf|${PKG_SYSCONFDIR}|g"
AP_CONF_FILE_SED+= -e "s|logs/|/var/log/httpd/|g"
AP_CONF_FILE_SED+= -e "s|/var/log/httpd/foo\.log|logs/foo.log/|g"
AP_CONF_FILE_SED+= -e "s|^\(User[ ]\).*|\1${APACHE_USER}|g"
AP_CONF_FILE_SED+= -e "s|^\(Group[ ]\).*|\1${APACHE_GROUP}|g"
post-install:
${RM} ${PREFIX}/share/httpd/build/libtool
${INSTALL_SCRIPT} ${LIBTOOL} ${PREFIX}/share/httpd/build/libtool
@cd ${WRKSRC}; ${SETENV} ${MAKE_ENV} \
${MAKE_PROGRAM} install-conf sysconfdir="${EGDIR}"
@cd ${EGDIR}; \
for file in \
highperformance-std.conf \
httpd-std.conf \
ssl-std.conf; \
do \
${CAT} $${file} \
| ${SED} ${AP_CONF_FILE_SED} \
| ${AWK} ' \
/^Listen[ ]*80/ { \
print; \
printf "%s", "Listen 0.0.0.0:80\n"; \
next; \
} \
/^Listen[ ]*443/ { \
print; \
printf "%s", "Listen 0.0.0.0:443\n"; \
next; \
} \
{ print; } \
' >> $${file}.new; \
${MV} -f $${file}.new $${file}; \
done
.include "../../lang/perl5/buildlink2.mk"
.include "../../textproc/expat/buildlink2.mk"
.include "../../mk/bsd.pkg.install.mk"
.include "../../mk/bsd.pkg.mk"