summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stewart <vericgar@gentoo.org>2006-11-27 02:45:56 +0000
committerMichael Stewart <vericgar@gentoo.org>2006-11-27 02:45:56 +0000
commita0e40d951bc1abc7a1e4a266b0c0ae87a7dc2e43 (patch)
tree28bf4daff50730c58245d8b174526e19963b0fc1 /net-www
parentstable on amd64 (diff)
downloadhistorical-a0e40d951bc1abc7a1e4a266b0c0ae87a7dc2e43.tar.gz
historical-a0e40d951bc1abc7a1e4a266b0c0ae87a7dc2e43.tar.bz2
historical-a0e40d951bc1abc7a1e4a266b0c0ae87a7dc2e43.zip
This should now be feature complete: Completed init script, linked apache2ctl to init script, added example virtual host configurations, added USE=srvdir support
Package-Manager: portage-2.1.2_pre2-r5
Diffstat (limited to 'net-www')
-rw-r--r--net-www/apache/ChangeLog10
-rw-r--r--net-www/apache/Manifest26
-rw-r--r--net-www/apache/apache-2.2.3-r1.ebuild518
-rw-r--r--net-www/apache/files/digest-apache-2.2.3-r16
4 files changed, 545 insertions, 15 deletions
diff --git a/net-www/apache/ChangeLog b/net-www/apache/ChangeLog
index 6df8ae76bd82..f2f33b73b25c 100644
--- a/net-www/apache/ChangeLog
+++ b/net-www/apache/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-www/apache
# Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.502 2006/11/03 01:33:32 vericgar Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.503 2006/11/27 02:45:56 vericgar Exp $
+
+*apache-2.2.3-r1 (27 Nov 2006)
+
+ 27 Nov 2006; Michael Stewart <vericgar@gentoo.org>
+ +apache-2.2.3-r1.ebuild:
+ This should now be feature complete: Completed init script, linked
+ apache2ctl to init script, added example virtual host configurations, added
+ USE=srvdir support
*apache-2.0.59-r2 (02 Nov 2006)
diff --git a/net-www/apache/Manifest b/net-www/apache/Manifest
index ad5747e68eff..0ae5d7a12533 100644
--- a/net-www/apache/Manifest
+++ b/net-www/apache/Manifest
@@ -1,6 +1,3 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
DIST apache_1.3.34.tar.gz 2468056 RMD160 e39dfc57b7f9164aa76641de3fa74f0314c9ec9e SHA1 df082b73f1220555dc416c0c5afa746e30a9e0de SHA256 ceed243f4f98e4323b48e5f7f80e306d1abb00c592e18de5575983db42d6f8d4
DIST apache_1.3.37.tar.gz 2665370 RMD160 de84adf2fd0a745c32072ca5dc5e1374cfcf04f7 SHA1 b422fac1dda10baa483e8f4378dff58faf3f85b4 SHA256 9f27889bfbf418b987a892160e52fd217d66391df2870f3ecac877ef565c4bfc
DIST gentoo-apache-1.3.34-r10-20051213.tar.bz2 27570 RMD160 a45c59edcd7f5744f52ebced3ffb7f6b67e21a23 SHA1 9934fc84f3879e26347ed3f3fa7ff56dfd26f1c8 SHA256 111d9cdfac6782bc8720acc6b20d2a1de9c310f0d2f18228f29bf3824c74635f
@@ -14,6 +11,7 @@ DIST gentoo-apache-2.0.59-20060729.tar.bz2 58736 RMD160 f722780db04484f80caea7a6
DIST gentoo-apache-2.0.59-r2-20061102.tar.bz2 58768 RMD160 d20d39e66e3cb52befeb697133172c8d494e2c78 SHA1 1f8543ecdba7cef911456757a0d12e9c15abe355 SHA256 c8de97abe4077e2f6d827726a5fb0b03f6e8bd9514d8f9b9ca2a35a1c9698518
DIST gentoo-apache-2.2.2-r1-20060726.tar.bz2 51572 RMD160 247f5766d7875f6f3a9c8b64170fa8354b33b661 SHA1 d73224457a307c71ddd30a6f9cdc31de8e855bcd SHA256 17e23002ac5fb31f07a02577bf78e9d5ea7fb6d8317743591baf68abefb37ab0
DIST gentoo-apache-2.2.3-20060729.tar.bz2 51526 RMD160 c5f1e367e73090d378c461134961bc8c0a95396a SHA1 3088502349dd8df36bb97708bbc7bebef11709f0 SHA256 5194ef7b23b18b333b2864ccb45f90cf5bca1cfc4e65f6552eaa4561c107d24c
+DIST gentoo-apache-2.2.3-r1-20061126.tar.bz2 54107 RMD160 a44c10cd0f0bd7dc4695b1fb7bf79c31397a2791 SHA1 48580fac951d1ae8d3627a791a29519cf998c047 SHA256 18fbdf626494832cc2557b3bef2b6dfc687580d7754d0ea46309a4c00fa80e55
DIST httpd-2.0.54.tar.bz2 5566979 RMD160 c511cb2fa396ba04caf77bfc6ca03413df48ea08 SHA1 15b4fc3024cceea6562fb03383fd624e84e5e35a SHA256 55a3d1c3fc4ff5ed5a4c4a20050ab68d98a10b2ab7d52f02a485da1a0fb060e3
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
@@ -62,14 +60,18 @@ EBUILD apache-2.2.2-r1.ebuild 13898 RMD160 56a87cd0e2d2ad79995aad1084f5d980454b6
MD5 864a1733d246ddd80cc19a37b074a228 apache-2.2.2-r1.ebuild 13898
RMD160 56a87cd0e2d2ad79995aad1084f5d980454b69af apache-2.2.2-r1.ebuild 13898
SHA256 7611e65207fac0034d5755f8187ee4fa51d232f9f3c04353e299d5469a41a2f2 apache-2.2.2-r1.ebuild 13898
+EBUILD apache-2.2.3-r1.ebuild 15210 RMD160 ed9c0df49f0be0ef5c2c7cf73f18b7d412debccf SHA1 16f01bcb77783ad43295c79965ca9517460a5f86 SHA256 dbce407a5690d1646c507f4b0011fef7e50d18494853279c3491ef1fd1669b33
+MD5 997f2fdd5e22de13eaf4d4a8af74af64 apache-2.2.3-r1.ebuild 15210
+RMD160 ed9c0df49f0be0ef5c2c7cf73f18b7d412debccf apache-2.2.3-r1.ebuild 15210
+SHA256 dbce407a5690d1646c507f4b0011fef7e50d18494853279c3491ef1fd1669b33 apache-2.2.3-r1.ebuild 15210
EBUILD apache-2.2.3.ebuild 13978 RMD160 b606ac2f5fb0ba7ff0cbdd9c5e13547b212a8e2f SHA1 422c6dbde5977fa1ed39eac94346654915b21584 SHA256 5108612084de298195dc646be0e3f0a09818f205c918b451ee142b08c00ab46d
MD5 63eb4103c9d36639f2893fefa0313dae apache-2.2.3.ebuild 13978
RMD160 b606ac2f5fb0ba7ff0cbdd9c5e13547b212a8e2f apache-2.2.3.ebuild 13978
SHA256 5108612084de298195dc646be0e3f0a09818f205c918b451ee142b08c00ab46d apache-2.2.3.ebuild 13978
-MISC ChangeLog 86123 RMD160 c3b99c6333a6804e7d02420a4c14d3a78dc904b1 SHA1 9659fa56185c189a597e3aae72513e45ac4b34ba SHA256 e02c8787d0d7721a7e2ee6d00c812fd0f819707dca8acf19f1f35d34644c25a6
-MD5 2b8ec153372be07f008ce4d0b625bfdc ChangeLog 86123
-RMD160 c3b99c6333a6804e7d02420a4c14d3a78dc904b1 ChangeLog 86123
-SHA256 e02c8787d0d7721a7e2ee6d00c812fd0f819707dca8acf19f1f35d34644c25a6 ChangeLog 86123
+MISC ChangeLog 86404 RMD160 9ba7d91f0cf7306e8a61cce86ea1a311e64ab30b SHA1 7b25a193dac7a852e923e3fa212b953cbc022f09 SHA256 f9d302e8485508290b02204d831f84c18b5787e0116e41beb11c80d52442c9bb
+MD5 6a960246df341a183dee945748d6db99 ChangeLog 86404
+RMD160 9ba7d91f0cf7306e8a61cce86ea1a311e64ab30b ChangeLog 86404
+SHA256 f9d302e8485508290b02204d831f84c18b5787e0116e41beb11c80d52442c9bb ChangeLog 86404
MISC metadata.xml 566 RMD160 8aad2cbb313fa91b77c6f4891f8d3483d1460adc SHA1 cfaab8d65125c65cb5c66c37dd200f7b3586baf9 SHA256 9826f38d29b803e954faa6fafffc4d6f197bfcb0e14cc76af891c41081d948e2
MD5 27c9cb37c510e08bb69df277229a03ea metadata.xml 566
RMD160 8aad2cbb313fa91b77c6f4891f8d3483d1460adc metadata.xml 566
@@ -107,10 +109,6 @@ SHA256 ccf6b0ba8e729efd9a1837791145dd2dc056339b58ae166e677993500d22f971 files/di
MD5 2b4672f81e282ff8016bdf01018d7250 files/digest-apache-2.2.3 527
RMD160 cb393c64814165541762b6b6d2c4952c5273aee3 files/digest-apache-2.2.3 527
SHA256 a3cc6958b1fe0467e885412864c3f753a7cc7f2a0eba1b4f1633cac588463c4e files/digest-apache-2.2.3 527
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.5 (GNU/Linux)
-
-iD8DBQFFVqQXamhnQswr0vIRAqRBAJ9AficTnIURUycRkvg2IgML09OR/ACgnVGX
-gpdp/wIQhsVwzoleD82QB+s=
-=sngK
------END PGP SIGNATURE-----
+MD5 14154dd42c85b73c2e908337c39b152d files/digest-apache-2.2.3-r1 536
+RMD160 e9418e892901efb2d201d15b106da92f3f6f0890 files/digest-apache-2.2.3-r1 536
+SHA256 7a632ba04efc8017554a0f11673c7cca41cfc0e6cea299d8b2596888252854d9 files/digest-apache-2.2.3-r1 536
diff --git a/net-www/apache/apache-2.2.3-r1.ebuild b/net-www/apache/apache-2.2.3-r1.ebuild
new file mode 100644
index 000000000000..637bcdfb2851
--- /dev/null
+++ b/net-www/apache/apache-2.2.3-r1.ebuild
@@ -0,0 +1,518 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-www/apache/apache-2.2.3-r1.ebuild,v 1.1 2006/11/27 02:45:56 vericgar Exp $
+
+inherit eutils flag-o-matic gnuconfig multilib autotools
+
+# latest gentoo apache files
+GENTOO_PATCHNAME="gentoo-apache-${PVR}"
+GENTOO_PATCHSTAMP="20061126"
+GENTOO_DEVSPACE="vericgar"
+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-peruser mpm-prefork mpm-worker no-suexec
+selinux srvdir ssl static-modules no-suexec"
+
+RDEPEND="dev-lang/perl
+ >=dev-libs/apr-1.2.7
+ >=dev-libs/apr-util-1.2.7
+ dev-libs/expat
+ dev-libs/libpcre
+ app-misc/mime-types
+ sys-libs/zlib
+ ssl? ( dev-libs/openssl )
+ selinux? ( sec-policy/selinux-apache )
+ !mips? ( ldap? ( =net-nds/openldap-2* ) )"
+DEPEND="${RDEPEND}
+ >=sys-devel/autoconf-2.59-r4"
+
+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 our MPM
+ MPM_LIST="prefork worker event peruser"
+ for x in ${MPM_LIST}; do
+ if useq mpm-${x}; then
+ if [ "x${mpm}" == "x" ]; then
+ mpm=${x}
+ einfo "Selected MPM: ${mpm}"
+ 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 useq "threads"; then
+ mpm=worker
+ einfo "Selected default threaded MPM: ${mpm}";
+ else
+ mpm=prefork
+ einfo "Selected default MPM: ${mpm}";
+ fi
+ fi
+
+ # setup apache user and group
+ enewgroup apache 81
+ enewuser apache 81 -1 /var/www apache
+}
+
+
+
+src_unpack() {
+ unpack ${A} || die
+ cd ${S} || die
+
+ # 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,scripts/Makefile.suexec,scripts/suexec2-config} \
+ || die "libdir sed failed"
+
+ # Use /srv/<FQDN>/www instead of /var/www/<FQDN> if USE=srvdir
+ useq srvdir && sed -i -e "s:/var/www/localhost:/srv/localhost/www:g" \
+ ${GENTOO_PATCHDIR}/{conf/httpd.conf,conf/modules.d/*,conf/vhosts.d/*,patches/config.layout,init/apache2.confd} \
+ || die "srvdir sed failed (1)"
+ useq srvdir && sed -i -e "s:/var/www/example.com:/srv/example.com/www:g" \
+ ${GENTOO_PATCHDIR}/conf/vhosts.d/*.example \
+ || die "srvdir sed failed (2)"
+ useq srvdir && sed -i -e "s:/var/www:/srv:g" \
+ ${GENTOO_PATCHDIR}/{conf/httpd.conf,conf/suexec-conf,conf/vhosts.d/*.example,scripts/suexec2-config} \
+ || die "srvdir sed failed (3)"
+
+ #### 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_SUFFIX="patch"
+ epatch ${GENTOO_PATCHDIR}/patches/[0-1]* || die "Patching failed"
+ if $(ls ${GENTOO_PATCHDIR}/patches/[2-3]?_*_${mpm}_* &>/dev/null); then
+ epatch ${GENTOO_PATCHDIR}/patches/[2-3]?_*_${mpm}_* || \
+ die "MPM ${mpm} Patching failed"
+ fi
+ for uf in ${IUSE}; do
+ if useq ${uf} && $(ls ${GENTOO_PATCHDIR}/patches/[4-5]?_*_${uf}_* &>/dev/null)
+ then
+ epatch ${GENTOO_PATCHDIR}/patches/[4-5]?_*_${uf}_* || \
+ die "USE=\"${uf}\" Patching failed"
+ fi
+ done
+ if $(ls ${GENTOO_PATCHDIR}/patches/[6-9]?_*_${PV}_* &>/dev/null); then
+ epatch ${GENTOO_PATCHDIR}/patches/[6-9]?_*_${PV}_* || \
+ die "Version ${PV} Patching failed"
+ fi
+
+
+ # avoid utf-8 charset problems
+ export LC_CTYPE=C
+
+ # setup the filesystem layout config
+ cat ${GENTOO_PATCHDIR}/patches/config.layout >> config.layout
+ sed -i -e "s:version:${PF}:g" config.layout
+
+ # patched-in MPMs need the build environment rebuilt
+ sed -i -e '/sinclude/d' configure.in
+ AT_GNUCONF_UPDATE=yes AT_M4DIR=build WANT_AUTOCONF=2.5 eautoreconf
+
+}
+
+
+
+src_compile() {
+
+ local modtype
+ if useq static-modules; then
+ modtype="static"
+ else
+ modtype="shared"
+ fi
+
+ select_modules_config || die "determining modules failed"
+
+ local myconf
+ useq ldap && mods="${mods} ldap authnz-ldap" && \
+ myconf="${myconf} --enable-authnz-ldap=${modtype}" && \
+ myconf="${myconf} --enable-ldap=${modtype}"
+ useq ssl && mods="${mods} ssl" && \
+ myconf="${myconf} --with-ssl=/usr --enable-ssl=${modtype}"
+
+ # Fix for bug #24215 - robbat2@gentoo.org, 30 Oct 2003
+ # We pre-load the cache with the correct answer! This avoids
+ # it violating the sandbox. This may have to be changed for
+ # non-Linux systems or if sem_open changes on Linux. This
+ # hack is built around documentation in /usr/include/semaphore.h
+ # and the glibc (pthread) source
+ echo 'ac_cv_func_sem_open=${ac_cv_func_sem_open=no}' >> ${S}/config.cache
+
+ if useq no-suexec; then
+ myconf="${myconf} --disable-suexec"
+ else
+ mods="${mods} suexec"
+ myconf="${myconf} $(${GENTOO_PATCHDIR}/scripts/suexec2-config --config)"
+
+ myconf="${myconf}
+ --with-suexec-bin=/usr/sbin/suexec2 \
+ --enable-suexec=${modtype}"
+ fi
+
+ # common confopts
+ myconf="${myconf} \
+ --cache-file=${S}/config.cache \
+ --with-perl=/usr/bin/perl \
+ --with-expat=/usr \
+ --with-z=/usr \
+ --with-port=80 \
+ --enable-layout=Gentoo \
+ --with-program-name=apache2 \
+ --host=${CHOST} ${MY_BUILTINS} \
+ --with-apr=/usr \
+ --with-apr-util=/usr \
+ --with-pcre=/usr "
+
+ # debugging support
+ if useq debug ; then
+ myconf="${myconf} --enable-maintainer-mode"
+ fi
+
+ ./configure --with-mpm=${mpm} ${myconf} || die "bad ./configure please submit bug report to bugs.gentoo.org. Include your config.layout and config.log"
+
+ sed -i -e 's:apache2\.conf:httpd.conf:' include/ap_config_auto.h
+
+ emake || die "problem compiling apache2"
+
+}
+
+src_install () {
+
+ #### DEFAULT SETUP & INSTALL
+
+ # general install
+ einfo "Beginning install phase"
+ make DESTDIR=${D} install || die
+
+ #### CLEAN-UP
+ rm -rf ${D}/etc
+ rm ${D}/usr/sbin/envvars*
+ rm ${D}/usr/sbin/apachectl
+
+ #### CONFIGURATION
+ einfo "Setting up configuration"
+ insinto /etc/apache2
+
+ # restore the magic file
+ doins docs/conf/magic
+
+
+ # This is a mapping of module names to the -D option in APACHE2_OPTS
+ # Used for creating optional LoadModule lines
+ mod_defines="info:INFO status:INFO
+ ldap:LDAP authnz_ldap:AUTH_LDAP
+ proxy:PROXY proxy_connect:PROXY proxy_http:PROXY
+ proxy_ajp:PROXY proxy_balancer:PROXY
+ ssl:SSL
+ suexec:SUEXEC
+ userdir:USERDIR"
+
+ # create our LoadModule lines
+ if ! useq static-modules; then
+ load_module=''
+ moddir="${D}/usr/$(get_libdir)/apache2/modules"
+ for m in ${mods}; 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
+ 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"
+ useq doc && APACHE2_OPTS="${APACHE2_OPTS} -D MANUAL"
+ useq ssl && APACHE2_OPTS="${APACHE2_OPTS} -D SSL -D SSL_DEFAULT_VHOST"
+ useq 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"
+
+ mv ${D}/etc/apache2/apache2-builtin-mods ${D}/etc/apache2/apache2-builtin-mods-2.2
+
+ 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
+
+ #### HELPER SCRIPTS
+ einfo "Installing helper scripts"
+ exeinto /usr/sbin
+ for i in apache2logserverstatus apache2splitlogfile suexec2-config; do
+ doexe ${GENTOO_PATCHDIR}/scripts/${i}
+ done
+ useq ssl && doexe ${GENTOO_PATCHDIR}/scripts/gentestcrt.sh
+
+ for i in logresolve.pl split-logfile log_server_status; do
+ doexe support/${i}
+ done
+
+ # needed for suexec2-config
+ insinto /usr/$(get_libdir)/apache2/build
+ doins ${GENTOO_PATCHDIR}/scripts/Makefile.suexec
+ doins support/suexec.c
+
+
+ #### SLOTTING
+ einfo "Applying SLOT=2"
+ cd ${D}
+
+ # sbin binaries
+ slotmv="apxs htpasswd htdigest rotatelogs logresolve log_server_status
+ ab checkgid dbmmanage split-logfile suexec"
+ for i in ${slotmv}; do
+ mv usr/sbin/${i} usr/sbin/${i}2
+ done
+ mv usr/sbin/logresolve.pl usr/sbin/logresolve2.pl
+
+ # man.1
+ for i in dbmmanage htdigest htpasswd; do
+ mv usr/share/man/man1/${i}.1 usr/share/man/man1/${i}2.1
+ done
+
+ # man.8
+ for i in ab apxs logresolve rotatelogs suexec; do
+ mv usr/share/man/man8/${i}.8 usr/share/man/man8/${i}2.8
+ done
+
+ mv usr/share/man/man8/httpd.8 usr/share/man/man8/apache2.8
+
+ # we don't use apachectl anymore, it's symlinked to the init script
+ rm usr/share/man/man8/apachectl.8
+
+ #### DOCS
+ # basic info
+ einfo "Installing docs"
+ cd ${S}
+ dodoc ABOUT_APACHE CHANGES LAYOUT README README.platforms VERSIONING
+
+ # drop in a convenient link to the manual
+ if useq doc; then
+ sed -i -e "s:VERSION:${PVR}:" ${D}/etc/apache2/modules.d/00_apache_manual.conf
+ else
+ einfo "USE=-docs :: Removing Manual"
+ rm ${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
+ einfo "Installing default webroot to /usr/share/doc/${PF}"
+ useq srvdir || mv ${D}/var/www/localhost ${D}/usr/share/doc/${PF}/webroot
+ useq srvdir && mv ${D}/srv/localhost/www ${D}/usr/share/doc/${PF}/webroot
+
+
+ #### PERMISSONS
+ einfo "Applying permissions"
+
+
+ # protect the suexec binary
+ if ! useq no-suexec; then
+ fowners root:apache /usr/sbin/suexec2
+ fperms 4710 /usr/sbin/suexec2
+ 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 755 ${i}
+ done
+
+ # We'll be needing /etc/apache2/ssl if USE=ssl
+ useq ssl && keepdir /etc/apache2/ssl
+
+ fperms 755 /usr/sbin/apache2logserverstatus
+ fperms 755 /usr/sbin/apache2splitlogfile
+
+}
+
+pkg_postinst() {
+ # Automatically generate test certificates if ssl USE flag is being set
+ if useq ssl -a !-e ${ROOT}/etc/apache2/ssl/server.crt; then
+ cd ${ROOT}/etc/apache2/ssl
+ einfo
+ einfo "Generating self-signed test certificate in /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.
+ useq srvdir || webroot=/var/www/localhost
+ useq srvdir && webroot=/srv/localhost/www
+
+ if [ -e "${ROOT}${webroot}" ]; then
+ einfo "The default webroot has not been installed into"
+ einfo "${ROOT}${webroot} because the directory already exists"
+ einfo "and we do not want to overwrite any files you have put there."
+ einfo
+ einfo "If you would like to install the latest webroot, please run"
+ einfo "emerge --config =${PF}"
+ else
+ einfo "Installing default webroot to ${ROOT}${webroot}"
+ mkdir -p ${ROOT}${webroot}
+ cp -r ${ROOT}/usr/share/doc/${PF}/webroot/* ${ROOT}${webroot}
+ chown -R apache: ${ROOT}${webroot}
+ fi
+
+ # Check for dual/upgrade install
+ # The hasq is a hack so we don't throw QA warnings for not putting
+ # apache2 in IUSE - the only use of the flag is this warning
+ if has_version '=net-www/apache-1*' || ! hasq apache2 ${USE}; then
+ ewarn
+ ewarn "Please add the 'apache2' flag to your USE variable and (re)install"
+ ewarn "any additional DSO modules you may wish to use with Apache-2.x."
+ ewarn "Addon modules are configured in /etc/apache2/modules.d/"
+ ewarn
+ fi
+
+
+ if has_version '<net-www/apache-2.2.0'; then
+ einfo
+ einfo "When upgrading from versions below 2.2.0 to this version, you"
+ einfo "need to rebuild all your modules. Please do so for your modules"
+ einfo "to continue working correctly."
+ einfo
+ einfo "Also note that some configuration directives have been"
+ einfo "split into their own files under /etc/apache2/modules.d"
+ einfo
+ einfo "For more information on what you may need to change, please"
+ einfo "see the overview of changes at:"
+ einfo "http://httpd.apache.org/docs/2.2/new_features_2_2.html"
+ einfo
+ einfo "Some modules do not yet work with Apache 2.2."
+ einfo "To keep from accidentally downgrading to Apache 2.0, you should"
+ einfo "add the following to /etc/portage/package.mask:"
+ einfo
+ einfo " <net-www/apache-2.2.0"
+ einfo
+ fi
+
+}
+
+
+pkg_config() {
+
+ useq srvdir || webroot=/var/www/localhost
+ useq srvdir && webroot=/srv/localhost/www
+
+ einfo "Installing default webroot to ${ROOT}${webroot}"
+ mkdir -p ${ROOT}${webroot}
+ cp -r ${ROOT}/usr/share/doc/${PF}/webroot/* ${ROOT}${webroot}
+ chown -R apache: ${ROOT}${webroot}
+
+}
+
+
+
+
+
+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" ] || useq static-modules; then
+ MY_BUILTINS="${MY_BUILTINS} --enable-${name}=yes"
+ 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 /etc/apache2/apache2-builtin-mods-2.2 || \
+ parse_modules_config ${GENTOO_PATCHDIR}/conf/apache2-builtin-mods || \
+ return 1
+}
+
+# vim:ts=4
diff --git a/net-www/apache/files/digest-apache-2.2.3-r1 b/net-www/apache/files/digest-apache-2.2.3-r1
new file mode 100644
index 000000000000..2d2095e117e4
--- /dev/null
+++ b/net-www/apache/files/digest-apache-2.2.3-r1
@@ -0,0 +1,6 @@
+MD5 2300df5a52bfe2e589d0541e852c21da gentoo-apache-2.2.3-r1-20061126.tar.bz2 54107
+RMD160 a44c10cd0f0bd7dc4695b1fb7bf79c31397a2791 gentoo-apache-2.2.3-r1-20061126.tar.bz2 54107
+SHA256 18fbdf626494832cc2557b3bef2b6dfc687580d7754d0ea46309a4c00fa80e55 gentoo-apache-2.2.3-r1-20061126.tar.bz2 54107
+MD5 887bf4a85505e97babe1d90635361c0d httpd-2.2.3.tar.bz2 4905728
+RMD160 291e093f48d980daba482140581a525ecbfae4d2 httpd-2.2.3.tar.bz2 4905728
+SHA256 dd86e8221f9efb85497c46229d0f04237d4e66d293fabe98eb0745166aaf4b6c httpd-2.2.3.tar.bz2 4905728