www-servers/apache: update to latest apache
git-svn-id: https://svn.disconnected-by-peer.at/svn/linamh/trunk/linamh@257 6952d904-891a-0410-993b-d76249ca496b
This commit is contained in:
parent
64b45e648f
commit
439dfe5028
@ -2,6 +2,10 @@
|
||||
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
|
||||
# $Header: $
|
||||
|
||||
21 Oct 2007; Mario Fetka <mario-fetka@gmx.at>
|
||||
+files/apache-2.2.6-r102.patch, +apache-2.2.6-r102.ebuild:
|
||||
update to latest apache
|
||||
|
||||
05 Oct 2007; Mario Fetka <mario-fetka@gmx.at> ++, ++, +metadata.xml,
|
||||
-apache-2.2.6-r2.ebuild:
|
||||
add mozldap support
|
||||
|
@ -1,17 +1,29 @@
|
||||
AUX apache-2.2.6-r102.patch 2593 RMD160 d5d81c4a7d23a5c7625d394dab87eed913ad3fc0 SHA1 3b40ab5066ff7a1db09fd828f343efc86ec605f9 SHA256 ce4f897430acb3a563c29faf61927c029084e119f467529e1b072122a9ff4580
|
||||
MD5 395ae99d8e3e9a3d5de609545f7ecccc files/apache-2.2.6-r102.patch 2593
|
||||
RMD160 d5d81c4a7d23a5c7625d394dab87eed913ad3fc0 files/apache-2.2.6-r102.patch 2593
|
||||
SHA256 ce4f897430acb3a563c29faf61927c029084e119f467529e1b072122a9ff4580 files/apache-2.2.6-r102.patch 2593
|
||||
DIST gentoo-apache-2.2.6-r102-20071020.tar.bz2 58752 RMD160 705f6913612dd02b21e0ce0399a80899be688ac2 SHA1 26bffdc3490261c8abd9826e8dc0934fd4f148ee SHA256 e208bd87a3cd0708ade1176bda1d5ea95c250dc1260c1a231b00ce32d4028467
|
||||
DIST gentoo-apache-2.2.6-r99-20070921.tar.bz2 58066 RMD160 85285c079b6e975c2bfcd8b8ed8070ae6f8ee7cb SHA1 fb3f091b2e5a3cfab912535c50b5286bd65b813a SHA256 d10754cb517ea68a717e5da6bb5897b103a3e5ac864e99ada8e35c69e1da9c89
|
||||
DIST httpd-2.2.6.tar.bz2 4717066 RMD160 5ae895c6898213e1e3b7e7b02cdfcbe5b36a108f SHA1 e6ef926ecd1f9a412af8c266239f0a6f58c63854 SHA256 f27cd9df50a2acd9df8f37520f62f6ce51758689d425ead5883e75ff5ed6548c
|
||||
EBUILD apache-2.2.6-r102.ebuild 16331 RMD160 feb61aae899968d8e4f85187e05ca66d2f78c679 SHA1 b203f3caa5ff19826c6b2c5e3efe1f48af22902a SHA256 39160a715f18abf318a01574884d773ddfab32a0c218ffceba3238653ea8715a
|
||||
MD5 9172f6c426d98505ed01dfed8a7ac5e5 apache-2.2.6-r102.ebuild 16331
|
||||
RMD160 feb61aae899968d8e4f85187e05ca66d2f78c679 apache-2.2.6-r102.ebuild 16331
|
||||
SHA256 39160a715f18abf318a01574884d773ddfab32a0c218ffceba3238653ea8715a apache-2.2.6-r102.ebuild 16331
|
||||
EBUILD apache-2.2.6-r99.ebuild 16198 RMD160 c65320efc11db2097567991a198981c7446284b6 SHA1 bcad52bbb6ef4fb2280ae80c2b2d1362540f1580 SHA256 be5295da5ede9286b52b2a1f8e167a13814b21abef6d5759fe2ec13abde4e6d4
|
||||
MD5 ec61850f97c4061bf1e91de3947bddcd apache-2.2.6-r99.ebuild 16198
|
||||
RMD160 c65320efc11db2097567991a198981c7446284b6 apache-2.2.6-r99.ebuild 16198
|
||||
SHA256 be5295da5ede9286b52b2a1f8e167a13814b21abef6d5759fe2ec13abde4e6d4 apache-2.2.6-r99.ebuild 16198
|
||||
MISC ChangeLog 240 RMD160 ae237e5195383d0c8727e403ce1b6b0858dfff87 SHA1 77a17dace2739855ac792de52af644ee7cbe1929 SHA256 6466927d71492110e673e730eb63d67d551a740643ca3edca5367e9d8bb93b55
|
||||
MD5 121293941f84df24ffcdd20d8b9510fb ChangeLog 240
|
||||
RMD160 ae237e5195383d0c8727e403ce1b6b0858dfff87 ChangeLog 240
|
||||
SHA256 6466927d71492110e673e730eb63d67d551a740643ca3edca5367e9d8bb93b55 ChangeLog 240
|
||||
MISC ChangeLog 376 RMD160 a67786c9d7252a39ae9139edf858bf7135476958 SHA1 ea4db281dcbfc6b8a978ba5b78ec1e891567335b SHA256 a3a0d151ebc3028803622c29388ecc29976f1e14092d911fc6463d9631fc883a
|
||||
MD5 ec3b9a14c5ea561ff1d9d89beabfecf9 ChangeLog 376
|
||||
RMD160 a67786c9d7252a39ae9139edf858bf7135476958 ChangeLog 376
|
||||
SHA256 a3a0d151ebc3028803622c29388ecc29976f1e14092d911fc6463d9631fc883a ChangeLog 376
|
||||
MISC metadata.xml 170 RMD160 645927a396fdc21cdeb089fe42c5397332420ea6 SHA1 ac7f48a14fec325926f9ce1be8fbf1f311b4f2e4 SHA256 d797a2ec6f9dc516c9f9c1a758ee87ad3e8c43101b5dc76c2f872d5bd4639b42
|
||||
MD5 1e678929a9fec6632e227bdf2262e9a1 metadata.xml 170
|
||||
RMD160 645927a396fdc21cdeb089fe42c5397332420ea6 metadata.xml 170
|
||||
SHA256 d797a2ec6f9dc516c9f9c1a758ee87ad3e8c43101b5dc76c2f872d5bd4639b42 metadata.xml 170
|
||||
MD5 79a6a075e10732527cdbbe6aae280c49 files/digest-apache-2.2.6-r102 542
|
||||
RMD160 e9a6e9e422844c0b070d269da5be14dd2f55fc42 files/digest-apache-2.2.6-r102 542
|
||||
SHA256 28e9143218044c4503121bc966793a1aade78d5fda6bdb99e143ff1c8879ff1d files/digest-apache-2.2.6-r102 542
|
||||
MD5 5e923f52ede7540a4d8e7fdcefe76042 files/digest-apache-2.2.6-r99 539
|
||||
RMD160 44b0718fbe6d485d1601a1eb2dc946908e8353d7 files/digest-apache-2.2.6-r99 539
|
||||
SHA256 76d37e10679163de4e46ffbb1f69112f5403f6271d0e6bc225bb6163e131dd5d files/digest-apache-2.2.6-r99 539
|
||||
|
504
www-servers/apache/apache-2.2.6-r102.ebuild
Normal file
504
www-servers/apache/apache-2.2.6-r102.ebuild
Normal file
@ -0,0 +1,504 @@
|
||||
# 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-r2.ebuild,v 1.1 2007/10/20 17:15:21 hollow Exp $
|
||||
|
||||
inherit eutils flag-o-matic multilib autotools
|
||||
|
||||
# latest gentoo apache files
|
||||
GENTOO_PATCHNAME="gentoo-${PF}"
|
||||
GENTOO_PATCHSTAMP="20071020"
|
||||
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
|
||||
http://ftp.mars.arge.at/pub/${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 mozldap 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* )
|
||||
mozldap? ( =dev-libs/mozldap-6* )
|
||||
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 && use mozldap ; then
|
||||
eerror "you cant activate ldap & mozldap at the same time "
|
||||
eerror "plz deactivate \"www-servers/apache -ldap mozldap\" one in"
|
||||
eerror "\"etc/portage/package.use\" ;p"
|
||||
die "ldap and mozldap USE conflict"
|
||||
fi
|
||||
|
||||
if ( use ldap && ! built_with_use 'dev-libs/apr-util' ldap ) || ( use mozldap && ! built_with_use 'dev-libs/apr-util' mozldap ) ; 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 or mozldap USE-flag"
|
||||
eerror "enabled."
|
||||
die "ldap or mozldap 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 || use mozldap ; 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
|
||||
}
|
58
www-servers/apache/files/apache-2.2.6-r102.patch
Normal file
58
www-servers/apache/files/apache-2.2.6-r102.patch
Normal file
@ -0,0 +1,58 @@
|
||||
--- apache-2.2.6-r1.ebuild 2007-09-21 22:08:27.000000000 +0200
|
||||
+++ apache-2.2.6-r102.ebuild 2007-10-07 17:02:05.000000000 +0200
|
||||
@@ -13,13 +13,14 @@
|
||||
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"
|
||||
+ http://dev.gentoo.org/~${GENTOO_DEVSPACE}/dist/apache/${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2
|
||||
+ http://ftp.mars.arge.at/pub/${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"
|
||||
+IUSE="debug doc ldap mozldap 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*
|
||||
@@ -28,6 +29,7 @@
|
||||
dev-libs/libpcre
|
||||
sys-libs/zlib
|
||||
ldap? ( =net-nds/openldap-2* )
|
||||
+ mozldap? ( =dev-libs/mozldap-6* )
|
||||
selinux? ( sec-policy/selinux-apache )
|
||||
ssl? ( dev-libs/openssl )
|
||||
!=www-servers/apache-1*
|
||||
@@ -41,11 +43,18 @@
|
||||
S="${WORKDIR}/httpd-${PV}"
|
||||
|
||||
pkg_setup() {
|
||||
- if use ldap && ! built_with_use 'dev-libs/apr-util' ldap ; then
|
||||
+ if use ldap && use mozldap ; then
|
||||
+ eerror "you cant activate ldap & mozldap at the same time "
|
||||
+ eerror "plz deactivate \"www-servers/apache -ldap mozldap\" one in"
|
||||
+ eerror "\"etc/portage/package.use\" ;p"
|
||||
+ die "ldap and mozldap USE conflict"
|
||||
+ fi
|
||||
+
|
||||
+ if ( use ldap && ! built_with_use 'dev-libs/apr-util' ldap ) || ( use mozldap && ! built_with_use 'dev-libs/apr-util' mozldap ) ; 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 "ldap support, apr-util must be built with the ldap or mozldap USE-flag"
|
||||
eerror "enabled."
|
||||
- die "ldap USE-flag enabled while not supported in apr-util"
|
||||
+ die "ldap or mozldap USE-flag enabled while not supported in apr-util"
|
||||
fi
|
||||
|
||||
# Select the default MPM module
|
||||
@@ -142,7 +151,7 @@
|
||||
use static-modules && modtype="static"
|
||||
select_modules_config || die "determining modules failed"
|
||||
|
||||
- if use ldap ; then
|
||||
+ if use ldap || use mozldap ; then
|
||||
mods="${mods} ldap authnz_ldap"
|
||||
myconf="${myconf} --enable-authnz-ldap=${modtype} --enable-ldap=${modtype}"
|
||||
fi
|
6
www-servers/apache/files/digest-apache-2.2.6-r102
Normal file
6
www-servers/apache/files/digest-apache-2.2.6-r102
Normal file
@ -0,0 +1,6 @@
|
||||
MD5 5ea158ebfa307ef019dc84bc7ba49fcd gentoo-apache-2.2.6-r102-20071020.tar.bz2 58752
|
||||
RMD160 705f6913612dd02b21e0ce0399a80899be688ac2 gentoo-apache-2.2.6-r102-20071020.tar.bz2 58752
|
||||
SHA256 e208bd87a3cd0708ade1176bda1d5ea95c250dc1260c1a231b00ce32d4028467 gentoo-apache-2.2.6-r102-20071020.tar.bz2 58752
|
||||
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
|
Loading…
Reference in New Issue
Block a user