diff options
author | Christian Heim <phreak@gentoo.org> | 2007-07-12 10:39:07 +0000 |
---|---|---|
committer | Christian Heim <phreak@gentoo.org> | 2007-07-12 10:39:07 +0000 |
commit | 5bc415badea3b95becc843d5f17c29d41c2d2e44 (patch) | |
tree | fd29d872deae0c97d6abceb6fa86b6670333ee3d /net-www | |
parent | Wups, not that (diff) | |
download | historical-5bc415badea3b95becc843d5f17c29d41c2d2e44.tar.gz historical-5bc415badea3b95becc843d5f17c29d41c2d2e44.tar.bz2 historical-5bc415badea3b95becc843d5f17c29d41c2d2e44.zip |
Yet another revision bump, pulling back in the DEFAULT_VHOST changes. Also updating the postinst user notification.
Package-Manager: portage-2.1.3_rc7
Diffstat (limited to 'net-www')
-rw-r--r-- | net-www/apache/ChangeLog | 8 | ||||
-rw-r--r-- | net-www/apache/Manifest | 22 | ||||
-rw-r--r-- | net-www/apache/apache-2.2.4-r10.ebuild | 468 | ||||
-rw-r--r-- | net-www/apache/files/digest-apache-2.2.4-r10 | 6 |
4 files changed, 496 insertions, 8 deletions
diff --git a/net-www/apache/ChangeLog b/net-www/apache/ChangeLog index 75fae0fad197..92ad9e083621 100644 --- a/net-www/apache/ChangeLog +++ b/net-www/apache/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-www/apache # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.538 2007/07/10 18:54:27 phreak Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.539 2007/07/12 10:39:07 phreak Exp $ + +*apache-2.2.4-r10 (12 Jul 2007) + + 12 Jul 2007; Christian Heim <phreak@gentoo.org> +apache-2.2.4-r10.ebuild: + Yet another revision bump, pulling back in the DEFAULT_VHOST changes. Also + updating the postinst user notification. *apache-2.2.4-r9 (10 Jul 2007) diff --git a/net-www/apache/Manifest b/net-www/apache/Manifest index c9b0eb16fd28..f7c42e6654bb 100644 --- a/net-www/apache/Manifest +++ b/net-www/apache/Manifest @@ -3,6 +3,7 @@ Hash: SHA1 DIST gentoo-apache-2.0.58-r2-20060726.tar.bz2 58758 RMD160 46c6da577db444a6553b60d3ae30c61ae3b741fa SHA1 5399c6076fbccc36b1d8a5ed783f77918c3398eb SHA256 b8e0356e87fdd7b55fcecbee804c9a41525b3e6fe8309f87f2509abd161c8e6b DIST gentoo-apache-2.0.59-r2-20061102.tar.bz2 58768 RMD160 d20d39e66e3cb52befeb697133172c8d494e2c78 SHA1 1f8543ecdba7cef911456757a0d12e9c15abe355 SHA256 c8de97abe4077e2f6d827726a5fb0b03f6e8bd9514d8f9b9ca2a35a1c9698518 +DIST gentoo-apache-2.2.4-r10-20070712.tar.bz2 57172 RMD160 13da6d348d39ccd9a0fbe48e13e396236b38fa35 SHA1 5a8344af48dc3a3c8095882030ebf5578a899cab SHA256 9e57aa981f7b0e368b898471f92e2bb206c92d173169bcb0fa00dd037d9b36e7 DIST gentoo-apache-2.2.4-r5-20070605.tar.bz2 57317 RMD160 d5ef8bddc1a470d0a5ef41b1d7d3423054c90626 SHA1 7ff6af17fe342fab96718b7b2fcd4db1c5af1d25 SHA256 507327d1a0029b7583c842b5f9d15a2be54226befe4fe1c32969d267de138363 DIST gentoo-apache-2.2.4-r7-20070615.tar.bz2 57925 RMD160 973faaa7d64b6b8fc72218082ffdec408efe5e7a SHA1 9d56394d51e3aef09e57a6fe6405ffe688ebcd64 SHA256 307d499a6493cbd63ed85c6af3e79c380628dc7c34655ac2a0f0108851f1e13e DIST gentoo-apache-2.2.4-r9-20070710.tar.bz2 57164 RMD160 d23cb1c572a0ebfaf17fe2061ac44334c1cd65ff SHA1 0c35df13b5d71ab4c9fd64d56c99a56caafa585b SHA256 90c54e2fb025fa4d7c85254b2fccc0a0000e85e7e2547de102eafa61ed46618a @@ -17,6 +18,10 @@ EBUILD apache-2.0.59-r2.ebuild 14080 RMD160 78c348c9b238da5f88e17d09dab39eea9777 MD5 7ca572c45d5a3a17fd5560d83b9d5b8d apache-2.0.59-r2.ebuild 14080 RMD160 78c348c9b238da5f88e17d09dab39eea9777bd9f apache-2.0.59-r2.ebuild 14080 SHA256 e5c6c9c05de19b5bb9051f134d651a6aed4387789d1a1f43fe9218cca4930ff7 apache-2.0.59-r2.ebuild 14080 +EBUILD apache-2.2.4-r10.ebuild 15355 RMD160 e97b7db7fcb57dba05e368bd5e051828de25fe9e SHA1 ac3460eb548d94ab37de0dcd9604a50940bd8cfd SHA256 9843c4f39c17e2a8d5853de8dcb045ef9107b580c0833bf6ca6a8c04eaeff0f2 +MD5 0fc04b0e0dcb6127849332b229bbb0c1 apache-2.2.4-r10.ebuild 15355 +RMD160 e97b7db7fcb57dba05e368bd5e051828de25fe9e apache-2.2.4-r10.ebuild 15355 +SHA256 9843c4f39c17e2a8d5853de8dcb045ef9107b580c0833bf6ca6a8c04eaeff0f2 apache-2.2.4-r10.ebuild 15355 EBUILD apache-2.2.4-r6.ebuild 14880 RMD160 7535feeb56fb05cd5cb14a6846579df1cf16601c SHA1 d4c45fece7c3ecd5947e905fffe5caa9fd10bd17 SHA256 05f00d1444a8ed6c88461f105e259e35cd2b2ae75e51b5ed0d8a43f696148eb5 MD5 431a3eda10f5616618b2a7ddac2d2ba7 apache-2.2.4-r6.ebuild 14880 RMD160 7535feeb56fb05cd5cb14a6846579df1cf16601c apache-2.2.4-r6.ebuild 14880 @@ -33,10 +38,10 @@ EBUILD apache-2.2.4-r9.ebuild 15505 RMD160 2d99835f99f94b0257645c720557491cdc7c4 MD5 17fa4a47e0edf8750f320fc3051049f5 apache-2.2.4-r9.ebuild 15505 RMD160 2d99835f99f94b0257645c720557491cdc7c4a77 apache-2.2.4-r9.ebuild 15505 SHA256 c631de98145e398dc9ea05606684e0bf8a0a46bc41174529a4cb8335db05f6f9 apache-2.2.4-r9.ebuild 15505 -MISC ChangeLog 92932 RMD160 9f7a568b9eb180cb97a8be9ddc681343f080c3c1 SHA1 360431d30757d08f01ee70e81f09dde7ebb8d896 SHA256 9aa3f7560d88d91e8ddd060bef08f0b452db8512dc2cad3024b19596fd76e2e5 -MD5 00f72ae8a283b2860466ad8f4d6baf68 ChangeLog 92932 -RMD160 9f7a568b9eb180cb97a8be9ddc681343f080c3c1 ChangeLog 92932 -SHA256 9aa3f7560d88d91e8ddd060bef08f0b452db8512dc2cad3024b19596fd76e2e5 ChangeLog 92932 +MISC ChangeLog 93162 RMD160 9c0042a95b79daaa213c695ace9b8db202930b19 SHA1 8ce1d9d92d74206f771113ce032e52c20b82318b SHA256 ada6ece98661d6fba1404edf615bf11f8ecb055754845ced55c5ebfb1678b637 +MD5 28825bb017c14bbeb02376a9666b9b25 ChangeLog 93162 +RMD160 9c0042a95b79daaa213c695ace9b8db202930b19 ChangeLog 93162 +SHA256 ada6ece98661d6fba1404edf615bf11f8ecb055754845ced55c5ebfb1678b637 ChangeLog 93162 MISC metadata.xml 551 RMD160 1b31261c043e57cabc9bd8582f9b34c09d92d108 SHA1 68bb286a67452c3dae7525195c60b8637cca9b81 SHA256 646729a42ddffcbde3426dd6aa9a77fab923bc348c5b34c9d24083d86fbb15eb MD5 0f28752ee3545b3fd8e28ee656e62f4b metadata.xml 551 RMD160 1b31261c043e57cabc9bd8582f9b34c09d92d108 metadata.xml 551 @@ -47,6 +52,9 @@ SHA256 a168cb54770884f50f48411842613b904f1cbf24ca9596ea43b28eeed7688936 files/di MD5 fb6513d7e3c17a25d505a7c7a06d43d7 files/digest-apache-2.0.59-r2 542 RMD160 124580b340dddc55cb1c92565a0de043a9b27ab1 files/digest-apache-2.0.59-r2 542 SHA256 d3d9b85e6d0dc1610726f52d7f45f34e144351cf96d449bdabcd362482405cb5 files/digest-apache-2.0.59-r2 542 +MD5 e5f5aa3b57426d2009745d7c936571a2 files/digest-apache-2.2.4-r10 539 +RMD160 a878b175ef84ae8e958ba6cef858e82865750027 files/digest-apache-2.2.4-r10 539 +SHA256 c2dff058f74b6cf185737201f79a0a1666ac43e9317b2b49998acd7720f2ebdc files/digest-apache-2.2.4-r10 539 MD5 3685a5e5ea27be4a736dc1ce919ae3c6 files/digest-apache-2.2.4-r6 536 RMD160 643d3dfa434f0f243edbfef1da50bd19fc80c3c1 files/digest-apache-2.2.4-r6 536 SHA256 1c6148391d382b0c388801c54fd831c9172e4063d03dd0c4c9a5c8b2dff6d027 files/digest-apache-2.2.4-r6 536 @@ -62,7 +70,7 @@ SHA256 4837f60e7b96c75190dcc06fc9643c944a8a59827e777f8c2711924f3f089882 files/di -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.5 (GNU/Linux) -iD8DBQFGk9XzyuNVb5qfaOYRAvNlAKDHovPNo2PEVCK1TIVg83ISQEdXDQCgoJ1e -TdC0SvXfsKW3PSqHdeebzLU= -=7MPk +iD8DBQFGlgTSyuNVb5qfaOYRAudqAKCJtUIgQBG4UOIA2Zs37Q8ms7jF2wCgqJ67 +yVIO8FCDXUi2a7J1XJj90NI= +=LItM -----END PGP SIGNATURE----- diff --git a/net-www/apache/apache-2.2.4-r10.ebuild b/net-www/apache/apache-2.2.4-r10.ebuild new file mode 100644 index 000000000000..d35a63a6e3a9 --- /dev/null +++ b/net-www/apache/apache-2.2.4-r10.ebuild @@ -0,0 +1,468 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-www/apache/apache-2.2.4-r10.ebuild,v 1.1 2007/07/12 10:39:07 phreak Exp $ + +inherit eutils flag-o-matic gnuconfig multilib autotools + +# latest gentoo apache files +GENTOO_PATCHNAME="gentoo-${PF}" +GENTOO_PATCHSTAMP="20070712" +GENTOO_DEVSPACE="phreak" +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 ) + !=net-www/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_SUFFIX="patch" + epatch "${GENTOO_PATCHDIR}"/patches/[0-1]* + if $(ls "${GENTOO_PATCHDIR}"/patches/[2-3]?_*_${mpm}_* &>/dev/null) ; then + epatch "${GENTOO_PATCHDIR}"/patches/[2-3]?_*_${mpm}_* + fi + for uf in ${IUSE} ; do + if use ${uf} && $(ls "${GENTOO_PATCHDIR}"/patches/[4-5]?_*_${uf}_* &>/dev/null) ; then + epatch "${GENTOO_PATCHDIR}"/patches/[4-5]?_*_${uf}_* + fi + done + if $(ls "${GENTOO_PATCHDIR}"/patches/[6-9]?_*_${PV}_* &>/dev/null) ; then + epatch "${GENTOO_PATCHDIR}"/patches/[6-9]?_*_${PV}_* + fi + + # 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 +} + +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 + + 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 ssl; then + mods="${mods} ssl" + myconf="${myconf} --with-ssl=/usr --enable-ssl=${modtype}" + 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 \ + $( use_enable debug maintainer-mode ) \ + ${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="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 ! use 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 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 + for i in apache2logserverstatus apache2splitlogfile ; do + doexe "${GENTOO_PATCHDIR}"/scripts/${i} + done + use ssl && doexe "${GENTOO_PATCHDIR}"/scripts/gentestcrt.sh + + # Install some documentation + dodoc ABOUT_APACHE CHANGES LAYOUT README README.platforms VERSIONING + + # 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 $? + + 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 '>=net-www/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 the changes regarding DEFAULT_VHOST and SSL_DEFAULT_VHOST + if has_version '<net-www/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 '<net-www/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 '<net-www/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 -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 +} + +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/net-www/apache/files/digest-apache-2.2.4-r10 b/net-www/apache/files/digest-apache-2.2.4-r10 new file mode 100644 index 000000000000..48da053ddf20 --- /dev/null +++ b/net-www/apache/files/digest-apache-2.2.4-r10 @@ -0,0 +1,6 @@ +MD5 363503604161176c140774691a689fcb gentoo-apache-2.2.4-r10-20070712.tar.bz2 57172 +RMD160 13da6d348d39ccd9a0fbe48e13e396236b38fa35 gentoo-apache-2.2.4-r10-20070712.tar.bz2 57172 +SHA256 9e57aa981f7b0e368b898471f92e2bb206c92d173169bcb0fa00dd037d9b36e7 gentoo-apache-2.2.4-r10-20070712.tar.bz2 57172 +MD5 536c86c7041515a25dd8bad3611da9a3 httpd-2.2.4.tar.bz2 4930375 +RMD160 bb6e8a7447fa8e8f629010f30b548068de518523 httpd-2.2.4.tar.bz2 4930375 +SHA256 08ab82eae6418e265d361730e7eadc7d6966dffdb66ee07bd4d9af3f2b28dfc8 httpd-2.2.4.tar.bz2 4930375 |