diff options
author | Michael Stewart <vericgar@gentoo.org> | 2005-01-09 00:46:39 +0000 |
---|---|---|
committer | Michael Stewart <vericgar@gentoo.org> | 2005-01-09 00:46:39 +0000 |
commit | 58d81bdaab7d703a312672e16684a5139b507a30 (patch) | |
tree | d5baa47f96092fa2c0c423fcbce4ecba14bdebdd /net-www/apache | |
parent | Apache herd package refresh (diff) | |
download | historical-58d81bdaab7d703a312672e16684a5139b507a30.tar.gz historical-58d81bdaab7d703a312672e16684a5139b507a30.tar.bz2 historical-58d81bdaab7d703a312672e16684a5139b507a30.zip |
Apache herd package refresh
Diffstat (limited to 'net-www/apache')
-rw-r--r-- | net-www/apache/ChangeLog | 7 | ||||
-rw-r--r-- | net-www/apache/Manifest | 18 | ||||
-rw-r--r-- | net-www/apache/apache-2.0.52-r3.ebuild | 383 | ||||
-rw-r--r-- | net-www/apache/files/digest-apache-2.0.52-r3 | 2 |
4 files changed, 396 insertions, 14 deletions
diff --git a/net-www/apache/ChangeLog b/net-www/apache/ChangeLog index 25bcd5aa901f..6aa9795a9fe3 100644 --- a/net-www/apache/ChangeLog +++ b/net-www/apache/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for net-www/apache # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.311 2005/01/08 23:37:10 hollow Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-www/apache/ChangeLog,v 1.312 2005/01/09 00:46:38 vericgar Exp $ + +*apache-2.0.52-r3 (08 Jan 2005) + + 08 Jan 2005; Michael Stewart <vericgar@gentoo.org> +apache-2.0.52-r3.ebuild: + Apache herd package refresh *apache-1.3.33-r1 (09 Jan 2005) diff --git a/net-www/apache/Manifest b/net-www/apache/Manifest index 8451e0f5e9ec..474690878d7a 100644 --- a/net-www/apache/Manifest +++ b/net-www/apache/Manifest @@ -1,7 +1,4 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - -MD5 59bdaa7c904bcbf423067faa3b919874 ChangeLog 53095 +MD5 e673f4e72d92df9c0f53c918d79934a3 ChangeLog 53240 MD5 784b3e3150529826ac47e99ec3514f90 apache-1.3.29-r2.ebuild 7178 MD5 f35b6a00cbfa7ddd39face3420cd4fc6 apache-1.3.31-r1.ebuild 6739 MD5 9a5242011f95057c3afabf1cc3973f11 apache-1.3.31-r2.ebuild 6864 @@ -14,10 +11,11 @@ MD5 1807ed31028e004bd0dca8a4b112bd57 apache-2.0.50.ebuild 12901 MD5 f6c69f64c4455bdfd42c177cce47509a apache-2.0.51-r1.ebuild 12836 MD5 8784173d9199e4b7072f6415cbe20384 apache-2.0.51.ebuild 12827 MD5 4cd8e7608218df213a3e4eb7bee15bfe apache-2.0.52-r1.ebuild 12889 -MD5 246a3cf82cbc55d427afebc98507ecac apache-2.0.52-r2.ebuild 12294 MD5 90cc07a86abe58c1b0f4b6bfa7439706 apache-2.0.52.ebuild 12830 MD5 a419841198cd6a94b9dcf2e07f3c15b7 metadata.xml 617 +MD5 246a3cf82cbc55d427afebc98507ecac apache-2.0.52-r2.ebuild 12294 MD5 18073cc171bd2a0e3b91076c14f9fb1e apache-1.3.33-r1.ebuild 8258 +MD5 b4f103cc89378e1da05ee010cef4a24c apache-2.0.52-r3.ebuild 11414 MD5 8b12871dd74fcd3f4fdf451c9d8c259e files/00_apache_manual.conf 781 MD5 998b4b7df08eb15641e0b9132443b365 files/apache-1.3.27-apachectl.patch 1328 MD5 37d2c4ea8e1a6725deaca42b6aa22c69 files/apache-1.3.27_db4_gentoo.patch 1006 @@ -47,14 +45,15 @@ MD5 69d40992fa9301ce3198a0115fa1f31c files/digest-apache-2.0.51 137 MD5 0eb9067bb4f2c2495069deaa9d7fce1b files/digest-apache-2.0.51-r1 140 MD5 baf37cd1bc61f76ac73edd301f52decb files/digest-apache-2.0.52 201 MD5 44fc8ddc9a05a056d8a08e6d843c997c files/digest-apache-2.0.52-r1 204 -MD5 710e7291039a6cba132568e32daede8a files/digest-apache-2.0.52-r2 213 MD5 b9ff3534313dae1b8ac96df0e3e01373 files/httpd-2.0.48-ipv6.patch 865 MD5 d52999376f67a872ee48cbae72db0160 files/httpd-2.0.49-cgi.patch 10319 MD5 8cb4313e58d7bd5dc369eb92f75daa2b files/httpd-2.0.49-ipv6.patch 788 MD5 59a6ba7dcde461f5350af41e6aff92b1 files/robots.txt 342 MD5 d3626a1e31a675c60d066c111d552adf files/suexec.pam 59 MD5 161245c7aa1eb785db53b34d6a10be43 files/suexec_pam_gentoo.patch 2149 +MD5 710e7291039a6cba132568e32daede8a files/digest-apache-2.0.52-r2 213 MD5 16075ee28b99f7bcf0a3403b4cf08aeb files/digest-apache-1.3.33-r1 277 +MD5 51321d0fff3b47607cde3a4cd84a6db0 files/digest-apache-2.0.52-r3 141 MD5 3d94c56af17136b6c408f076c32e0362 files/2.0.49/40_mod_ssl.conf 3213 MD5 1d10cc98714a34ddc38525743c2989f9 files/2.0.49/41_mod_ssl.default-vhost.conf 8053 MD5 819ee444395cf42ccc8009529a94af37 files/2.0.49/45_mod_dav.conf 583 @@ -93,10 +92,3 @@ MD5 30add456de1ed8fab4bc473a4afda161 files/patches/2.0.49-r1/04_ssl_makefile.pat MD5 21a6ee55341125140e40c0f48144277d files/patches/2.0.49-r1/Readme.PATCHES 507 MD5 d52999376f67a872ee48cbae72db0160 files/patches/2.0.49-r2/01_gentoo_cgi.patch 10319 MD5 5d45e2b46965e7c6866b259df4efe4b2 files/patches/2.0.50-r1/Readme.PATCHES 357 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.0 (GNU/Linux) - -iD8DBQFB4G6fmPFBzbX68WERAoZ1AKCMwT+uqFCPjyA4wPekRYrXIQSOCwCgjVBV -5fzpN+Ue1P5+4EWrwvyFJg4= -=PWf/ ------END PGP SIGNATURE----- diff --git a/net-www/apache/apache-2.0.52-r3.ebuild b/net-www/apache/apache-2.0.52-r3.ebuild new file mode 100644 index 000000000000..d444b16f6aaf --- /dev/null +++ b/net-www/apache/apache-2.0.52-r3.ebuild @@ -0,0 +1,383 @@ +# Copyright 1999-2005 Gentoo Foundation. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-www/apache/apache-2.0.52-r3.ebuild,v 1.1 2005/01/09 00:46:39 vericgar Exp $ + +inherit eutils gnuconfig + +# latest gentoo apache files +GENTOO_PATCHNAME="gentoo-apache-${PVR}" +GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}" + +DESCRIPTION="The Apache Web Server, Version 2.0.x" +HOMEPAGE="http://httpd.apache.org/" +SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2 + mirror://gentoo/${GENTOO_PATCHNAME}.tar.bz2" + +LICENSE="Apache-2.0" +SLOT="2" +KEYWORDS="~x86 ~sparc" +IUSE="doc ldap mpm-leader mpm-metux mpm-peruser mpm-prefork mpm-threadpool mpm-worker no-suexec php ssl static-modules threads" + +DEPEND="dev-lang/perl + =dev-libs/apr-0.9.5 + =dev-libs/apr-util-0.9.5 + app-misc/mime-types + sys-libs/zlib + >=sys-apps/sed-4 + >=sys-devel/autoconf-2.59-r4 + ssl? ( dev-libs/openssl ) + selinux? ( sec-policy/selinux-apache )" + +PDEPEND="php? ( dev-php/mod_php )" + +S="${WORKDIR}/httpd-${PV}" + +src_unpack() { + unpack ${A} || die + cd ${S} || die + + EPATCH_SUFFIX="patch" + epatch ${GENTOO_PATCHDIR}/patches/[0-2]* || die "internal ebuild error" + + # 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 + + # metux & peruser need to build conf + WANT_AUTOCONF=2.5 ./buildconf || die "buildconf failed" +} + +src_compile() { + setup_apache_vars + + # Detect mips and uclibc systems properly + gnuconfig_update + + local modtype + if useq static-modules; then + modtype="static" + else + modtype="shared" + fi + + select_modules_config || die "determining modules" + + local myconf + useq ldap && myconf="${myconf} --enable-auth-ldap=${modtype} --enable-ldap=${modtype}" + useq 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 + myconf="${myconf} + --with-suexec-safepath="/usr/local/bin:/usr/bin:/bin" \ + --with-suexec-logfile=/var/log/apache2/suexec_log \ + --with-suexec-bin=/usr/sbin/suexec2 \ + --with-suexec-userdir=${USERDIR} \ + --with-suexec-caller=apache \ + --with-suexec-docroot=/var/www \ + --with-suexec-uidmin=1000 \ + --with-suexec-gidmin=100 \ + --with-suexec-umask=077 \ + --enable-suexec=shared" + fi + + # common confopts + myconf="${myconf} \ + --with-apr=/usr \ + --with-apr-util=/usr \ + --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 \ + --with-devrandom=/dev/urandom \ + --host=${CHOST} ${MY_BUILTINS}" + + select_mpms + + # now we build each mpm + for mpm in ${mpms}; do + # clean up + cd server; make clean; cd .. + + ./configure --with-mpm=${mpm} ${myconf} || die "bad ./configure please submit bug report to bugs.gentoo.org. Include your config.layout and config.log" + + # we don't want to try and recompile the ssl_expr_parse.c file, because + # the lex source is broken + touch modules/ssl/ssl_expr_scan.c + + # as decided on IRC-AGENDA-10.2004, we use httpd.conf as standard config file name + sed -i -e 's:apache2\.conf:httpd.conf:' include/ap_config_auto.h + + emake || die "problem compiling apache2" + + mv apache2 apache2.${mpm} + done + + # build ssl version of apache bench (ab-ssl) + if useq ssl; then + cd support + rm -f ab .libs/ab ab.lo ab.o + make ab CFLAGS="${CFLAGS} -DUSE_SSL -lcrypto -lssl -I/usr/include/openssl -L/usr/lib" || die + mv ab ab-ssl + rm -f ab.lo ab.o + make ab || die + fi +} + +src_install () { + make DESTDIR=${D} install || die + dodoc ABOUT_APACHE CHANGES INSTALL LAYOUT LICENSE README* ${GENTOO_PATCHDIR}/docs/robots.txt + + # protect the suexec binary + if ! useq no-suexec; then + local gid=`id -g apache` + fowners root:${gid:-81} /usr/sbin/suexec + fperms 4710 /usr/sbin/suexec + fi + + # apxs needs this to pickup the right lib for install + dosym /usr/lib /usr/lib/apache2/lib + dosym /var/log/apache2 /usr/lib/apache2/logs + dosym /etc/apache2 /usr/lib/apache2/conf + + # Credits to advx.org people for these scripts. Heck, thanks for + # the nice layout and everything else ;-) + exeinto /usr/sbin + for i in apache2logserverstatus apache2splitlogfile; do + doexe ${GENTOO_PATCHDIR}/scripts/${i} + done + + # some more scripts + for i in split-logfile list_hooks.pl logresolve.pl log_server_status; do + doexe ${S}/support/${i} + done + + # the ssl version of apache bench + useq ssl && doexe support/ab-ssl + + # install mpm bins + for mpm in ${mpms}; do + doexe ${S}/apache2.${mpm} + done + + # symlink the default mpm + for i in prefork worker metux peruser threadpool leader; do + if [ -x /usr/sbin/apache2.${i} ]; then + dosym /usr/sbin/apache2.${i} /usr/sbin/apache2 + break + fi + done + + # modules.d config file snippets + insinto /etc/apache2/modules.d + doins ${GENTOO_PATCHDIR}/conf/modules.d/45_mod_dav.conf + useq ldap && doins ${GENTOO_PATCHDIR}/conf/modules.d/46_mod_ldap.conf + if useq ssl; then + doins ${GENTOO_PATCHDIR}/conf/modules.d/40_mod_ssl.conf + doins ${GENTOO_PATCHDIR}/conf/modules.d/41_mod_ssl.default-vhost.conf + fi + + # drop in a convenient link to the manual + if useq doc; then + insinto /etc/apache2/modules.d + doins ${GENTOO_PATCHDIR}/conf/modules.d/00_apache_manual.conf + sed -i -e "s:2.0.49:${PVR}:" ${D}/etc/apache2/modules.d/00_apache_manual.conf + else + rm -rf ${D}/usr/share/doc/${PF}/manual + fi + + # SLOT=2 + cd ${D} + for i in htdigest htpasswd logresolve apxs ab rotatelogs dbmmanage checkgid split-logfile; do + mv -v usr/sbin/${i} usr/sbin/${i}2 + done + mv -v usr/sbin/apachectl usr/sbin/apache2ctl + mv -v usr/sbin/list_hooks.pl usr/sbin/list_hooks2.pl + mv -v usr/sbin/logresolve.pl usr/sbin/logresolve2.pl + useq ssl && mv -v usr/sbin/ab-ssl usr/sbin/ab2-ssl + useq no-suexec || mv -v usr/sbin/suexec usr/sbin/suexec2 + + # do the man pages + for i in htdigest.1 htpasswd.1 dbmmanage.1; do + mv -v usr/share/man/man1/${i} usr/share/man/man1/${i/./2.} + done + for i in ab.8 apxs.8 logresolve.8 rotatelogs.8; do + mv -v usr/share/man/man8/${i} usr/share/man/man8/${i/./2.} + done + useq no-suexec || mv -v usr/share/man/man8/suexec.8 usr/share/man/man8/suexec2.8 + mv -v usr/share/man/man8/apachectl.8 usr/share/man/man8/apache2ctl.8 + mv -v usr/share/man/man8/httpd.8 usr/share/man/man8/apache2.8 + + # tidy up + mv usr/sbin/envvars* usr/lib/apache2/build + dodoc etc/apache2/*-std.conf + rm -f etc/apache2/*.conf + rm -rf var/run var/log + rm -rf var/www/localhost/htdocs/* + + keepdir /var/www/localhost/htdocs + insinto /var/www/localhost/htdocs + doins ${GENTOO_PATCHDIR}/docs/index.html + doins ${GENTOO_PATCHDIR}/docs/gentoo.jpg + + + # config files + insinto /etc/conf.d + newins ${GENTOO_PATCHDIR}/init/apache2.confd apache2 + + exeinto /etc/init.d + newexe ${GENTOO_PATCHDIR}/init/apache2.initd apache2 + + insinto /etc/apache2 + doins ${GENTOO_PATCHDIR}/conf/apache2-builtin-mods + doins ${GENTOO_PATCHDIR}/conf/httpd.conf + + 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 + + useq ssl && keepdir /etc/apache2/ssl + +} + +pkg_postinst() { + # Automatically generate test ceritificates if ssl USE flag is beeing set + if useq ssl; then + cd ${ROOT}/etc/apache2/ssl + einfo + einfo "Generating self-signed test certificate in /etc/apache2/ssl..." + yes "" 2>/dev/null | ${ROOT}/usr/lib/ssl/apache2-mod_ssl/gentestcrt.sh >/dev/null 2>&1 + einfo + fi + + # Check for dual/upgrade install + if has_version '=net-www/apache-1*' ; 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 + + # Check to see if this is an upgrade + if [ -d /home/httpd ]; then + einfo + einfo "Please remember to update your config files in /etc/apache2" + einfo "as --datadir has been changed to ${DATADIR}, and ServerRoot" + einfo "has changed to /usr/lib/apache2!" + einfo + fi + + # Check for obsolete symlinks + local list="" + for i in lib logs modules extramodules; do + local d="/etc/apache2/${i}" + [ -s "${d}" ] && list="${list} ${d}" + done + [ -n "${list}" ] && einfo "You should delete these old symlinks: ${list}" + + if has_version '<net-www/apache-2.0.52-r3' && has_version '>=net-www/apache-2.0.0' ; then + einfo "Configuration locations have changed, you will need to migrate" + einfo "your configuration from /etc/apache2/conf/apache2.conf and" + einfo "/etc/apache2/conf/commonapache2.conf to /etc/apache2/httpd.conf." + einfo + einfo "Apache now checks for the old configuration and refuses to start" + einfo "if it exists. You must remove the old configuration first" + einfo + einfo "You should also at this time rebuild all your modules" + einfo + einfo "For more information, see" + einfo " http://dev.gentoo.org/~vericgar/package-refresh.txt" + fi +} + +setup_apache_vars() { + # actually we do not provide a very dynamic way of those vars + # however, you may predefine them in shell before emerging + # to override the official default locations + + # standard location for Gentoo Linux + DATADIR="${DATADIR:-/var/www/localhost}" + USERDIR="${USERDIR:-public_html}" + + einfo "DATADIR is set to: ${DATADIR}" + einfo "USERDIR is set to: ${USERDIR}" +} + +select_mpms() { + useq mpm-prefork && mpms="${mpms} prefork" + useq mpm-worker && mpms="${mpms} worker" + useq mpm-metux && mpms="${mpms} metuxmpm" + useq mpm-peruser && mpms="${mpms} peruser" + useq mpm-threadpool && mpms="${mpms} threadpool" + useq mpm-leader && mpms="${mpms} leader" + + if useq mpm-metux || useq mpm-peruser; then + ewarn "Metux/Peruser are considered more or less insecure" + ewarn "and beta staged. Use at your own risk!" + fi + + if [ "x${mpms}" = "x" ]; then + if useq threads; then + einfo "Threads specified without a mpm-specification, using mpm-worker." + mpms="worker" + else + einfo "No MPM style was specified, defaulting to mpm-prefork." + mpms="prefork" + fi + fi +} + +parse_modules_config() { + local name="" + local disable="" + [ -f ${1} ] || return 1 + + for i in `cat $1 | sed "s/^#.*//"`; do + if [ $i == "-" ]; then + disable="true" + elif [ -z "$name" ] && [ ! -z "`echo $i | grep "mod_"`" ]; then + name=`echo $i | sed "s/mod_//"` + elif [ "$disable" ] && ( [ $i == "static" ] || [ $i == "shared" ] ); 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" + name="" ; disable="" + fi + done + + einfo "${1} options:\n${MY_BUILTINS}" +} + +select_modules_config() { + parse_modules_config /etc/apache2/apache2-builtin-mods || \ + parse_modules_config ${GENTOO_PATCHDIR}/conf/apache2-builtin-mods || \ + return 1 +} + +# vim:ts=4 diff --git a/net-www/apache/files/digest-apache-2.0.52-r3 b/net-www/apache/files/digest-apache-2.0.52-r3 new file mode 100644 index 000000000000..d3005cb3b293 --- /dev/null +++ b/net-www/apache/files/digest-apache-2.0.52-r3 @@ -0,0 +1,2 @@ +MD5 0e1b47c53921a1fc8fb006effdb3bf1c httpd-2.0.52.tar.bz2 5187776 +MD5 d27735779b2850546b90eedccbd23bff gentoo-apache-2.0.52-r3.tar.bz2 95686 |