diff options
author | Benedikt Boehm <hollow@gentoo.org> | 2007-10-25 02:07:55 +0000 |
---|---|---|
committer | Benedikt Boehm <hollow@gentoo.org> | 2007-10-25 02:07:55 +0000 |
commit | 3da9efcdc2c076dc8b7f72ce78ae6011c5ec6da3 (patch) | |
tree | 1ab876c305557040687c40741c412f0fbcb5f862 /www-servers | |
parent | mask apache-2.2.6-r3 for tls sni testing (diff) | |
download | historical-3da9efcdc2c076dc8b7f72ce78ae6011c5ec6da3.tar.gz historical-3da9efcdc2c076dc8b7f72ce78ae6011c5ec6da3.tar.bz2 historical-3da9efcdc2c076dc8b7f72ce78ae6011c5ec6da3.zip |
added TLS Server Name Indication patch
Package-Manager: portage-2.1.3.13
Diffstat (limited to 'www-servers')
-rw-r--r-- | www-servers/apache/ChangeLog | 7 | ||||
-rw-r--r-- | www-servers/apache/Manifest | 22 | ||||
-rw-r--r-- | www-servers/apache/apache-2.2.6-r3.ebuild | 495 | ||||
-rw-r--r-- | www-servers/apache/files/digest-apache-2.2.6-r3 | 6 |
4 files changed, 522 insertions, 8 deletions
diff --git a/www-servers/apache/ChangeLog b/www-servers/apache/ChangeLog index 71123a8a1e92..383ae0b2cb8d 100644 --- a/www-servers/apache/ChangeLog +++ b/www-servers/apache/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for www-servers/apache # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-servers/apache/ChangeLog,v 1.33 2007/10/20 17:15:21 hollow Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-servers/apache/ChangeLog,v 1.34 2007/10/25 02:07:54 hollow Exp $ + +*apache-2.2.6-r3 (25 Oct 2007) + + 25 Oct 2007; Benedikt Böhm <hollow@gentoo.org> +apache-2.2.6-r3.ebuild: + added TLS Server Name Indication patch *apache-2.2.6-r2 (20 Oct 2007) diff --git a/www-servers/apache/Manifest b/www-servers/apache/Manifest index ab7e1a466e22..bb1128474ce6 100644 --- a/www-servers/apache/Manifest +++ b/www-servers/apache/Manifest @@ -7,6 +7,7 @@ DIST gentoo-apache-2.0.61-20070907.tar.bz2 58543 RMD160 3d40fd2e793bfedbca0410e6 DIST gentoo-apache-2.2.6-20070907.tar.bz2 58121 RMD160 d0e5f55a8985f97fcdf646e04d92f6519f968104 SHA1 f9fd830bfb8e6c6e3cbac9d8342cc981032d20c5 SHA256 56f809f93fdcba204e6be271f195095d8ad033aa61447dab607af91d95cde8e6 DIST gentoo-apache-2.2.6-r1-20070921.tar.bz2 58046 RMD160 44c241049265f3e7f524350cfc278ad75d2a3351 SHA1 a905f839a4e1696c92f74f4ea538ed9c29a429e6 SHA256 d2172bd6fef6a3be19fba864eb1dd459ba044585d2b0a2ed737dff39b966c318 DIST gentoo-apache-2.2.6-r2-20071020.tar.bz2 58805 RMD160 0471593be243a4ecb6f7386b76411e9f1b2e9048 SHA1 7e87e95950d8a68f9f3d1c4ed913d6aa093bbb2e SHA256 3711e6f3c63b931b80f6db2602ad66e5303c7779f6a0571fe14156b7ec7ab3f5 +DIST gentoo-apache-2.2.6-r3-20071025.tar.bz2 60483 RMD160 3097b088eae160f1196f21abb1488cf54b349ba1 SHA1 1bb261c16e93bb1abc1972b38f73c2726435fb36 SHA256 3f2d0b9d210f3bb22c06901dee7df482c26647562d1a4e98f4196cd649f71d58 DIST httpd-2.0.58.tar.bz2 4704318 RMD160 2ff44b2254552db908f1defd09e3142527f9bf83 SHA1 697e1674f8efbbe05b9f6c1ba00cd28a37293229 SHA256 4f746715c408f4cac48099ea72560c50ef190568dfcfa8e0762bae66c0398029 DIST httpd-2.0.59.tar.bz2 4743549 RMD160 78b802354e338798a6978ece8b3568be97542174 SHA1 908209cd6e52f700d2a841a25de36e44d469c376 SHA256 bbac543ca9f80826f71eb16945610f8f90a36b346efc658be3b466ec0c990c0d DIST httpd-2.0.61.tar.bz2 4580339 RMD160 a2c2c90976a967112a9129b9716d880d71261882 SHA1 665017829022d287ffe3cec749e2b5b61252d7b4 SHA256 c257d3a6c120a21a637b422cf9973be2fca9bee58ae70478f5235adb5fac8899 @@ -31,14 +32,18 @@ EBUILD apache-2.2.6-r2.ebuild 15786 RMD160 0c5441fe77fda84b29a1b2fe2daceee9bcd27 MD5 253a635db9d5348823336948fcfaaa16 apache-2.2.6-r2.ebuild 15786 RMD160 0c5441fe77fda84b29a1b2fe2daceee9bcd27d36 apache-2.2.6-r2.ebuild 15786 SHA256 5e8d6ab5bfab1b42e55fb68d73cac3cf7839379258946f16fa9cd75ab4643179 apache-2.2.6-r2.ebuild 15786 +EBUILD apache-2.2.6-r3.ebuild 15786 RMD160 678ae65ff1de64f90907d7926c847e625c4148e9 SHA1 d0a51504ad6f89d6a5522df05ad9397c3ef29483 SHA256 40e61e3f59dd59b9de07507834e2a6f70980c94a347f724d2e36bea99295c646 +MD5 692dd7225bee371b28761f4475feaa89 apache-2.2.6-r3.ebuild 15786 +RMD160 678ae65ff1de64f90907d7926c847e625c4148e9 apache-2.2.6-r3.ebuild 15786 +SHA256 40e61e3f59dd59b9de07507834e2a6f70980c94a347f724d2e36bea99295c646 apache-2.2.6-r3.ebuild 15786 EBUILD apache-2.2.6.ebuild 15370 RMD160 6317292a5ab3c80979ad91c781ecb473738a33a6 SHA1 8aa8d0f4dd44d9c285924ccaf983c4acc6ab83e8 SHA256 ef0e00f4ab52a4ce5a2b62010e4b568d95fc942668219a251b4b049a00a23b23 MD5 f12d48c7c70eb8a2d9f2ed0d016a1645 apache-2.2.6.ebuild 15370 RMD160 6317292a5ab3c80979ad91c781ecb473738a33a6 apache-2.2.6.ebuild 15370 SHA256 ef0e00f4ab52a4ce5a2b62010e4b568d95fc942668219a251b4b049a00a23b23 apache-2.2.6.ebuild 15370 -MISC ChangeLog 97748 RMD160 c2b712599ce7fbb1a4cbe23ad18a316975723efd SHA1 168f7db0cd7fea677c4de4035c3aa788648e6b31 SHA256 83988bcea58c4ebfeb6c4ad1b2107814ca5282b96fd97702245d737a58a80106 -MD5 213e37f2d4e893bfbc12c0e980f7c91b ChangeLog 97748 -RMD160 c2b712599ce7fbb1a4cbe23ad18a316975723efd ChangeLog 97748 -SHA256 83988bcea58c4ebfeb6c4ad1b2107814ca5282b96fd97702245d737a58a80106 ChangeLog 97748 +MISC ChangeLog 97897 RMD160 1f4bf94445e7e4b20ea5a086e2ad3d77f4acaf73 SHA1 9ea270abc56c31b47cdf12ad169a913b9281612d SHA256 947f425103d32a9fd633f80c74a34067a90d821d9a2f39d991eb18071fccf7e1 +MD5 b3ae8362bfc65744676922ffa2bce827 ChangeLog 97897 +RMD160 1f4bf94445e7e4b20ea5a086e2ad3d77f4acaf73 ChangeLog 97897 +SHA256 947f425103d32a9fd633f80c74a34067a90d821d9a2f39d991eb18071fccf7e1 ChangeLog 97897 MISC metadata.xml 551 RMD160 1b31261c043e57cabc9bd8582f9b34c09d92d108 SHA1 68bb286a67452c3dae7525195c60b8637cca9b81 SHA256 646729a42ddffcbde3426dd6aa9a77fab923bc348c5b34c9d24083d86fbb15eb MD5 0f28752ee3545b3fd8e28ee656e62f4b metadata.xml 551 RMD160 1b31261c043e57cabc9bd8582f9b34c09d92d108 metadata.xml 551 @@ -61,10 +66,13 @@ SHA256 1eaf262b351038f98bd27160ba59da98ef2ac5bd06ec972f5cadd64d8399d42e files/di MD5 f055984d26898f84b9a767c5e052ae83 files/digest-apache-2.2.6-r2 536 RMD160 f824d5e2e706c1d5654ae80a1c3806c94782fcdc files/digest-apache-2.2.6-r2 536 SHA256 c8df8e510c87a64c990b66893443b97796d8cdbfa7da48218244cf95d20659c1 files/digest-apache-2.2.6-r2 536 +MD5 5345564d6f3113af8483954bf52c4209 files/digest-apache-2.2.6-r3 536 +RMD160 7569c275d74b58f38b180e12e19fb2e48608c86c files/digest-apache-2.2.6-r3 536 +SHA256 6de6aef20a1588fb17fdcfda567ee9e7b08fd700ffc823c83c88aeb88c43a51b files/digest-apache-2.2.6-r3 536 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.7 (GNU/Linux) -iD8DBQFHGjezmPFBzbX68WERAmrRAJ93eR2YmzcjZa4v71ccy0GcVx663QCfU7pv -gtccCR1pNgkQfTi4uU2RNOQ= -=D5YC +iD8DBQFHH/qFmPFBzbX68WERAnF+AJ484srGmRrPas41XpufIz4SW1vBbgCdHo9D +JFBv4QEv4tVMiOb61k4Gksg= +=my55 -----END PGP SIGNATURE----- diff --git a/www-servers/apache/apache-2.2.6-r3.ebuild b/www-servers/apache/apache-2.2.6-r3.ebuild new file mode 100644 index 000000000000..5bade7c2f35e --- /dev/null +++ b/www-servers/apache/apache-2.2.6-r3.ebuild @@ -0,0 +1,495 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-servers/apache/apache-2.2.6-r3.ebuild,v 1.1 2007/10/25 02:07:54 hollow Exp $ + +inherit eutils flag-o-matic multilib autotools + +# latest gentoo apache files +GENTOO_PATCHNAME="gentoo-${PF}" +GENTOO_PATCHSTAMP="20071025" +GENTOO_DEVSPACE="hollow" +GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}" + +DESCRIPTION="The Apache Web Server." +HOMEPAGE="http://httpd.apache.org/" +SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2 + http://dev.gentoo.org/~${GENTOO_DEVSPACE}/dist/apache/${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2" + +# some helper scripts are apache-1.1, thus both are here +LICENSE="Apache-2.0 Apache-1.1" +SLOT="2" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="debug doc ldap mpm-event mpm-itk mpm-peruser mpm-prefork mpm-worker no-suexec selinux ssl static-modules threads" + +DEPEND="dev-lang/perl + =dev-libs/apr-1* + =dev-libs/apr-util-1* + dev-libs/expat + dev-libs/libpcre + sys-libs/zlib + ldap? ( =net-nds/openldap-2* ) + selinux? ( sec-policy/selinux-apache ) + ssl? ( dev-libs/openssl ) + !=www-servers/apache-1* + !=app-admin/apache-tools-2.2.4-r2" + +RDEPEND="${DEPEND} + app-misc/mime-types" + +PDEPEND="~app-admin/apache-tools-${PV}" + +S="${WORKDIR}/httpd-${PV}" + +pkg_setup() { + if use ldap && ! built_with_use 'dev-libs/apr-util' ldap ; then + eerror "dev-libs/apr-util is missing LDAP support. For apache to have" + eerror "ldap support, apr-util must be built with the ldap USE-flag" + eerror "enabled." + die "ldap USE-flag enabled while not supported in apr-util" + fi + + # Select the default MPM module + MPM_LIST="event itk peruser prefork worker" + for x in ${MPM_LIST} ; do + if use mpm-${x} ; then + if [[ "x${mpm}" == "x" ]] ; then + mpm=${x} + elog + elog "Selected MPM: ${mpm}" + elog + else + eerror "You have selected more then one mpm USE-flag." + eerror "Only one MPM is supported." + die "more then one mpm was specified" + fi + fi + done + + if [[ "x${mpm}" == "x" ]] ; then + if use threads ; then + mpm=worker + elog + elog "Selected default threaded MPM: ${mpm}"; + elog + else + mpm=prefork + elog + elog "Selected default MPM: ${mpm}"; + elog + fi + fi + + # setup apache user and group + enewgroup apache 81 + enewuser apache 81 -1 /var/www apache + + if ! use no-suexec ; then + elog + elog "You can manipulate several configure options of suexec" + elog "through the following environment variables:" + elog + elog " SUEXEC_SAFEPATH: Default PATH for suexec (default: /usr/local/bin:/usr/bin:/bin)" + elog " SUEXEC_LOGFILE: Path to the suexec logfile (default: /var/log/apache2/suexec_log)" + elog " SUEXEC_CALLER: Name of the user Apache is running as (default: apache)" + elog " SUEXEC_DOCROOT: Directory in which suexec will run scripts (default: /var/www)" + elog " SUEXEC_MINUID: Minimum UID, which is allowed to run scripts via suexec (default: 1000)" + elog " SUEXEC_MINGID: Minimum GID, which is allowed to run scripts via suexec (default: 100)" + elog " SUEXEC_USERDIR: User subdirectories (like /home/user/html) (default: public_html)" + elog " SUEXEC_UMASK: Umask for the suexec process (default: 077)" + elog + fi +} + +src_unpack() { + unpack ${A} + cd "${S}" + + # Use correct multilib libdir in gentoo patches + sed -i -e "s:/usr/lib:/usr/$(get_libdir):g" \ + "${GENTOO_PATCHDIR}"/{conf/httpd.conf,init/*,patches/config.layout} \ + || die "libdir sed failed" + + #### Patch Organization + # 00-19 Gentoo specific (00_all_some-title.patch) + # 20-39 Additional MPMs (20_all_${MPM}_some-title.patch) + # 40-59 USE-flag based (40_all_${USE}_some-title.patch) + # 60-79 Version specific (60_all_${PV}_some-title.patch) + # 80-99 Security patches (80_all_${PV}_cve-####-####.patch) + + epatch "${GENTOO_PATCHDIR}"/patches/*.patch + + # setup the filesystem layout config + cat "${GENTOO_PATCHDIR}"/patches/config.layout >> "${S}"/config.layout || \ + die "Failed preparing config.layout!" + sed -i -e "s:version:${PF}:g" "${S}"/config.layout + + # patched-in MPMs need the build environment rebuilt + sed -i -e '/sinclude/d' configure.in + AT_GNUCONF_UPDATE=yes AT_M4DIR=build eautoreconf + + # apache2.8 instead of httpd.8 (bug #194828) + mv docs/man/{httpd,apache2}.8 +} + +src_compile() { + local modtype="shared" myconf="" + cd "${S}" + + # Instead of filtering --as-needed (bug #128505), append --no-as-needed + # Thanks to Harald van Dijk + append-ldflags -Wl,--no-as-needed + + # peruser MPM debugging with -X is nearly impossible + use mpm-peruser && use debug && append-flags -DMPM_PERUSER_DEBUG + + use static-modules && modtype="static" + select_modules_config || die "determining modules failed" + + if use ldap ; then + mods="${mods} ldap authnz_ldap" + myconf="${myconf} --enable-authnz-ldap=${modtype} --enable-ldap=${modtype}" + fi + + if use threads || use mpm-worker || use mpm-event; then + mods="${mods} cgid" + myconf="${myconf} --enable-cgid=${modtype}" + else + mods="${mods} cgi" + myconf="${myconf} --enable-cgi=${modtype}" + fi + + if use ssl; then + mods="${mods} ssl" + myconf="${myconf} --with-ssl=/usr --enable-ssl=${modtype}" + fi + + if use debug; then + myconf="${myconf} --enable-maintainer-mode --enable-exception-hook" + fi + + # Only build suexec with USE=-no-suexec + if use no-suexec ; then + myconf="${myconf} --disable-suexec" + else + myconf="${myconf} --with-suexec-safepath=${SUEXEC_SAFEPATH:-/usr/local/bin:/usr/bin:/bin}" + myconf="${myconf} --with-suexec-logfile=${SUEXEC_LOGFILE:-/var/log/apache2/suexec_log}" + myconf="${myconf} --with-suexec-bin=/usr/sbin/suexec" + myconf="${myconf} --with-suexec-userdir=${SUEXEC_USERDIR:-public_html}" + myconf="${myconf} --with-suexec-caller=${SUEXEC_CALLER:-apache}" + myconf="${myconf} --with-suexec-docroot=${SUEXEC_DOCROOT:-/var/www}" + myconf="${myconf} --with-suexec-uidmin=${SUEXEC_MINUID:-1000}" + myconf="${myconf} --with-suexec-gidmin=${SUEXEC_MINGID:-100}" + myconf="${myconf} --with-suexec-umask=${SUEXEC_UMASK:-077}" + myconf="${myconf} --enable-suexec=${modtype}" + mods="${mods} suexec" + fi + + # econf overwrites the stuff from config.layout, so we have to put them into + # our myconf line too + + econf \ + --includedir=/usr/include/apache2 \ + --libexecdir=/usr/$(get_libdir)/apache2/modules \ + --datadir=/var/www/localhost \ + --sysconfdir=/etc/apache2 \ + --localstatedir=/var \ + --with-mpm=${mpm} \ + --with-perl=/usr/bin/perl \ + --with-expat=/usr \ + --with-z=/usr \ + --with-apr=/usr \ + --with-apr-util=/usr \ + --with-pcre=/usr \ + --with-port=80 \ + --with-program-name=apache2 \ + --enable-layout=Gentoo \ + ${myconf} ${MY_BUILTINS} || die "econf failed!" + + sed -i -e 's:apache2\.conf:httpd.conf:' include/ap_config_auto.h + + emake || die "emake failed" +} + +src_install () { + emake DESTDIR="${D}" install || die "emake install failed" + + # This is a mapping of module names to the -D options in APACHE2_OPTS + # Used for creating optional LoadModule lines + mod_defines=" + auth_digest:AUTH_DIGEST + authnz_ldap:AUTHNZ_LDAP + cache:CACHE + dav:DAV + dav_fs:DAV + dav_lock:DAV + disk_cache:CACHE + file_cache:CACHE + info:INFO + ldap:LDAP + mem_cache:CACHE + proxy:PROXY + proxy_ajp:PROXY + proxy_balancer:PROXY + proxy_connect:PROXY + proxy_http:PROXY + ssl:SSL + status:INFO + suexec:SUEXEC + userdir:USERDIR + " + + # create our LoadModule lines + if ! use static-modules ; then + load_module="" + moddir="${D}/usr/$(get_libdir)/apache2/modules" + for m in $(echo ${mods}|tr ' ' '\n'|sort -u) ; do + endid="no" + + if [[ -e "${moddir}/mod_${m}.so" ]] ; then + for def in ${mod_defines} ; do + if [[ "${m}" == "${def%:*}" ]] ; then + load_module="${load_module}\n<IfDefine ${def#*:}>" + endid="yes" + fi + done + load_module="${load_module}\nLoadModule ${m}_module modules/mod_${m}.so" + if [[ "${endid}" == "yes" ]] ; then + load_module="${load_module}\n</IfDefine>" + fi + fi + done + fi + sed -i -e "s:%%LOAD_MODULE%%:${load_module}:" \ + "${GENTOO_PATCHDIR}"/conf/httpd.conf || die "sed failed" + + # Install our configuration files + insinto /etc/apache2 + doins docs/conf/magic + doins -r "${GENTOO_PATCHDIR}"/conf/* + insinto /etc/logrotate.d + newins "${GENTOO_PATCHDIR}"/scripts/apache2-logrotate apache2 + + # generate a sane default APACHE2_OPTS + APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D LANGUAGE" + use doc && APACHE2_OPTS="${APACHE2_OPTS} -D MANUAL" + use ssl && APACHE2_OPTS="${APACHE2_OPTS} -D SSL -D SSL_DEFAULT_VHOST" + use no-suexec || APACHE2_OPTS="${APACHE2_OPTS} -D SUEXEC" + + sed -i -e "s:APACHE2_OPTS=\".*\":APACHE2_OPTS=\"${APACHE2_OPTS}\":" \ + "${GENTOO_PATCHDIR}"/init/apache2.confd || die "sed failed" + + newconfd "${GENTOO_PATCHDIR}"/init/apache2.confd apache2 + newinitd "${GENTOO_PATCHDIR}"/init/apache2.initd apache2 + + # Link apache2ctl to the init script + dosym /etc/init.d/apache2 /usr/sbin/apache2ctl + + # provide symlinks for all the stuff we no longer rename, bug 177697 + for i in suexec apxs; do + dosym /usr/sbin/${i} /usr/sbin/${i}2 + done + + # Install some thirdparty scripts + exeinto /usr/sbin + use ssl && doexe "${GENTOO_PATCHDIR}"/scripts/gentestcrt.sh + + # Install some documentation + dodoc ABOUT_APACHE CHANGES LAYOUT README README.platforms VERSIONING + dodoc "${GENTOO_PATCHDIR}"/docs/* + + # drop in a convenient link to the manual + if use doc ; then + sed -i -e "s:VERSION:${PVR}:" "${D}/etc/apache2/modules.d/00_apache_manual.conf" + else + rm -f "${D}/etc/apache2/modules.d/00_apache_manual.conf" + rm -Rf "${D}/usr/share/doc/${PF}/manual" + fi + + # the default webroot gets stored in /usr/share/doc + ebegin "Installing default webroot to /usr/share/doc/${PF}" + mv -f "${D}/var/www/localhost" "${D}/usr/share/doc/${PF}/webroot" + eend $? + keepdir /var/www/localhost/htdocs + + if ! use no-suexec ; then + # Set some sane permissions for suexec + fowners 0:apache /usr/sbin/suexec + fperms 4710 /usr/sbin/suexec + fi + + keepdir /etc/apache2/vhosts.d + keepdir /etc/apache2/modules.d + + # empty dirs + for i in /var/lib/dav /var/log/apache2 /var/cache/apache2 ; do + keepdir ${i} + fowners apache:apache ${i} + fperms 0755 ${i} + done + + # We'll be needing /etc/apache2/ssl if USE=ssl + use ssl && keepdir /etc/apache2/ssl +} + +pkg_postinst() { + # Automatically generate test certificates if ssl USE flag is being set + if use ssl && [[ ! -e "${ROOT}/etc/apache2/ssl/server.crt" ]] ; then + cd "${ROOT}"/etc/apache2/ssl + einfo + einfo "Generating self-signed test certificate in ${ROOT}etc/apache2/ssl ..." + yes "" 2>/dev/null | \ + "${ROOT}"/usr/sbin/gentestcrt.sh >/dev/null 2>&1 || \ + die "gentestcrt.sh failed" + einfo + fi + + # we do this here because the default webroot is a copy of the files + # that exist elsewhere and we don't want them managed/removed by portage + # when apache is upgraded. + + if [[ -e "${ROOT}/var/www/localhost" ]] ; then + elog "The default webroot has not been installed into" + elog "${ROOT}var/www/localhost because the directory already exists" + elog "and we do not want to overwrite any files you have put there." + elog + elog "If you would like to install the latest webroot, please run" + elog "emerge --config =${PF}" + else + einfo "Installing default webroot to ${ROOT}var/www/localhost" + mkdir -p "${ROOT}"/var/www/localhost + cp -R "${ROOT}"/usr/share/doc/${PF}/webroot/* "${ROOT}"/var/www/localhost + chown -R apache:0 "${ROOT}"/var/www/localhost + fi + + # Previous installations of apache-2.2 installed the upstream configuration + # files, which shouldn't even have been installed! + if has_version '>=www-servers/apache-2.2.4' ; then + [ -f "${ROOT}"/etc/apache2/apache2.conf ] && \ + rm -f "${ROOT}"/etc/apache2/apache2.conf >/dev/null 2>&1 + + for i in extra original ; do + [ -d "${ROOT}"/etc/apache2/$i ] && \ + rm -rf "${ROOT}"/etc/apache2/$i >/dev/null 2>&1 + done + fi + + # Note regarding IfDefine changes + if has_version '<www-servers/apache-2.2.6-r1' ; then + elog + elog "When upgrading from versions 2.2.6 or earlier, please be aware" + elog "that the define for mod_authnz_ldap has changed from AUTH_LDAP" + elog "to AUTHNZ_LDAP. Additionally mod_auth_digest needs to be enabled" + elog "with AUTH_DIGEST now." + elog + fi + + # Note the changes regarding DEFAULT_VHOST and SSL_DEFAULT_VHOST + if has_version '<www-servers/apache-2.2.4-r7' ; then + elog + elog "Listen directives have been moved into the default virtual host" + elog "configuation. At least DEFAULT_VHOST has been enabled for you" + elog "(depending on your USE-flags." + elog + elog "If you disable DEFAULT_VHOST or SSL_DEFAULT_VHOST, there would" + elog "be no listening sockets available." + elog + fi + + # Note the user of the config changes + if has_version '<www-servers/apache-2.2.4-r5' ; then + elog + elog "Please make sure that you update your /etc directory." + elog "Between the versions, we had to changes some config files" + elog "and move some stuff out of the main httpd.conf file to a seperate" + elog "modules.d entry." + elog + elog "Thus please update your /etc directory either via etc-update," + elog "dispatch-conf or conf-update !" + elog + fi + + # Check for dual/upgrade install + if has_version '<www-servers/apache-2.2.0' ; then + elog + elog "When upgrading from versions below 2.2.0 to this version, you" + elog "need to rebuild all your modules. Please do so for your modules" + elog "to continue working correctly." + elog + elog "Also note that some configuration directives have been" + elog "split into their own files under ${ROOT}etc/apache2/modules.d/" + elog "and that some modules, foremost the authentication related ones," + elog "have been renamed." + elog + elog "Some examples:" + elog " - USERDIR is now configureable in ${ROOT}etc/apache2/modules.d/00_mod_userdir.conf." + elog + elog "For more information on what you may need to change, please" + elog "see the overview of changes at:" + elog "http://httpd.apache.org/docs/2.2/new_features_2_2.html" + elog "and the upgrading guide at:" + elog "http://httpd.apache.org/docs/2.2/upgrading.html" + elog + fi + + # Cleanup the vim backup files, placed in /etc/apache2 by the last + # patchtarball (gentoo-apache-2.2.4-r7-20070615) + rm -f "${ROOT}/etc/apache2/modules.d/*.conf~" +} + +pkg_config() { + einfo "Installing default webroot to ${ROOT}var/www/localhost" + mkdir "${ROOT}"var{,/www{,/localhost}} + cp -R "${ROOT}"usr/share/doc/${PF}/webroot/* "${ROOT}"var/www/localhost/ +} + +parse_modules_config() { + local name="" + local disable="" + local version="undef" + MY_BUILTINS="" + mods="" + [[ -f "${1}" ]] || return 1 + + for i in $(sed 's/#.*//' < $1) ; do + if [[ "$i" == "VERSION:" ]] ; then + version="select" + elif [[ "${version}" == "select" ]] ; then + version="$i" + # start with - option for backwards compatibility only + elif [[ "$i" == "-" ]] ; then + disable="true" + elif [[ -z "${name}" ]] && [[ "$i" != "${i/mod_/}" ]] ; then + name="${i/mod_/}" + elif [[ -n "${disable}" ]] || [[ "$i" == "disabled" ]] ; then + MY_BUILTINS="${MY_BUILTINS} --disable-${name}" + name="" ; disable="" + elif [[ "$i" == "static" ]] || use static-modules ; then + MY_BUILTINS="${MY_BUILTINS} --enable-${name}=static" + name="" ; disable="" + elif [[ "$i" == "shared" ]] ; then + MY_BUILTINS="${MY_BUILTINS} --enable-${name}=shared" + mods="${mods} ${name}" + name="" ; disable="" + else + ewarn "Parse error in ${1} - unknown option: $i" + fi + done + + # reject the file if it's unversioned or doesn't match our + # package major.minor. This is to make upgrading work smoothly. + if [[ "${version}" != "${PV%.*}" ]] ; then + mods="" + MY_BUILTINS="" + return 1 + fi + + einfo "Using ${1}" + einfo "options: ${MY_BUILTINS}" + einfo "LoadModules: ${mods}" +} + +select_modules_config() { + parse_modules_config "${ROOT}"/etc/apache2/apache2-builtin-mods || \ + parse_modules_config "${GENTOO_PATCHDIR}"/conf/apache2-builtin-mods || \ + return 1 +} diff --git a/www-servers/apache/files/digest-apache-2.2.6-r3 b/www-servers/apache/files/digest-apache-2.2.6-r3 new file mode 100644 index 000000000000..0310a81ed895 --- /dev/null +++ b/www-servers/apache/files/digest-apache-2.2.6-r3 @@ -0,0 +1,6 @@ +MD5 4f09d67fac5fbdd8dacf57935d71f2df gentoo-apache-2.2.6-r3-20071025.tar.bz2 60483 +RMD160 3097b088eae160f1196f21abb1488cf54b349ba1 gentoo-apache-2.2.6-r3-20071025.tar.bz2 60483 +SHA256 3f2d0b9d210f3bb22c06901dee7df482c26647562d1a4e98f4196cd649f71d58 gentoo-apache-2.2.6-r3-20071025.tar.bz2 60483 +MD5 203bea91715064f0c787f6499d33a377 httpd-2.2.6.tar.bz2 4717066 +RMD160 5ae895c6898213e1e3b7e7b02cdfcbe5b36a108f httpd-2.2.6.tar.bz2 4717066 +SHA256 f27cd9df50a2acd9df8f37520f62f6ce51758689d425ead5883e75ff5ed6548c httpd-2.2.6.tar.bz2 4717066 |