1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-servers/apache/apache-2.4.2.ebuild,v 1.1 2012/04/20 03:58:46 patrick Exp $
EAPI="4"
# latest gentoo apache files
GENTOO_PATCHSTAMP="20120401"
GENTOO_DEVELOPER="patrick"
GENTOO_PATCHNAME="gentoo-apache-2.4.1"
# IUSE/USE_EXPAND magic
IUSE_MPMS_FORK="itk peruser prefork"
IUSE_MPMS_THREAD="event worker"
IUSE_MODULES="actions alias asis auth_basic auth_digest authn_alias authn_anon
authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default
authz_groupfile authz_host authz_owner authz_user autoindex cache cern_meta
charset_lite cgi cgid dav dav_fs dav_lock dbd deflate dir disk_cache dumpio
env expires ext_filter file_cache filter headers ident imagemap include info
log_config log_forensic logio mem_cache mime mime_magic negotiation proxy
proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http proxy_scgi rewrite
reqtimeout setenvif speling status substitute unique_id userdir usertrack
version vhost_alias"
# The following are also in the source as of this version, but are not available
# for user selection:
# bucketeer case_filter case_filter_in echo http isapi optional_fn_export
# optional_fn_import optional_hook_export optional_hook_import
# inter-module dependencies
# TODO: this may still be incomplete
MODULE_DEPENDS="
dav_fs:dav
dav_lock:dav
deflate:filter
disk_cache:cache
ext_filter:filter
file_cache:cache
log_forensic:log_config
logio:log_config
mem_cache:cache
mime_magic:mime
proxy_ajp:proxy
proxy_balancer:proxy
proxy_connect:proxy
proxy_ftp:proxy
proxy_http:proxy
proxy_scgi:proxy
substitute:filter
"
# module<->define mappings
MODULE_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_ftp:PROXY
proxy_http:PROXY
socache_shmcb:SSL
ssl:SSL
status:STATUS
suexec:SUEXEC
userdir:USERDIR
"
# critical modules for the default config
MODULE_CRITICAL="
authz_host
dir
mime
"
MY_MODS="${MY_MODS} access_compat authn_core authz_core socache_shmcb unixd"
inherit apache-2
DESCRIPTION="The Apache Web Server."
HOMEPAGE="http://httpd.apache.org/"
# 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 ~sparc-fbsd ~x86-fbsd"
IUSE=""
DEPEND="${DEPEND}
>=dev-libs/openssl-0.9.8m
apache2_modules_deflate? ( sys-libs/zlib )"
# dependency on >=dev-libs/apr-1.4.5 for bug #368651
RDEPEND="${RDEPEND}
>=dev-libs/apr-1.4.5
>=dev-libs/openssl-0.9.8m
apache2_modules_mime? ( app-misc/mime-types )"
# init script fixup - should be rolled into next tarball #389965
src_prepare() {
apache-2_src_prepare
sed -i -e 's/! test -f/test -f/' "${GENTOO_PATCHDIR}"/init/apache2.initd || die "Failed to fix init script"
# the folloginw patches can be removed once they're included in
# GENTOO_PATCHNAME="gentoo-apache-2.4.1" ...
# patch /etc/apache2/modules.d/40_mod_ssl.conf
sed -i -e 's/^SSLMutex file:\/var\/run\/ssl_mutex$/Mutex file:\/var\/run\/ssl_mutex ssl-cache/' \
"${GENTOO_PATCHDIR}"/conf/modules.d/40_mod_ssl.conf \
|| die "Failed to fix 40_mod_ssl.conf"
# patch /etc/apache2/modules.d/00_mod_mime.conf
# only "DefaultType none" is allowed, throws warning
sed -i -e 's/^DefaultType text\/plain$/DefaultType none/' \
"${GENTOO_PATCHDIR}"/conf/modules.d/00_mod_mime.conf \
|| die "Failed to fix 00_mod_mime.conf"
# patch /etc/apache2/vhosts.d/00_default_vhost.conf
# NameVirtualHost is deprecated and throws warning
sed -i -e 's/^NameVirtualHost \*:80$/# NameVirtualHost \*:80/' \
"${GENTOO_PATCHDIR}"/conf/vhosts.d/00_default_vhost.conf \
|| die "Failed to fix 00_default_vhost.conf"
}
src_install() {
apache-2_src_install
for i in /usr/bin/{htdigest,logresolve,htpasswd,htdbm,ab,httxt2dbm}; do
rm "${D}"/$i || die "Failed to prune apache-tools bits"
done
for i in /usr/share/man/man8/{rotatelogs.8,htcacheclean.8}; do
rm "${D}"/$i || die "Failed to prune apache-tools bits"
done
for i in /usr/share/man/man1/{logresolve.1,htdbm.1,htdigest.1,htpasswd.1,dbmmanage.1,ab.1}; do
rm "${D}"/$i || die "Failed to prune apache-tools bits"
done
for i in /usr/sbin/{checkgid,fcgistarter,htcacheclean,rotatelogs}; do
rm "${D}/"$i || die "Failed to prune apache-tools bits"
done
# well, actually installing things makes them more installed, I guess?
cp "${S}"/support/apxs "${D}"/usr/sbin/apxs || die "Failed to install apxs"
chmod 0755 "${D}"/usr/sbin/apxs
# for previous patch to 40_mod_ssl.conf
use ssl && dodir /var/run/ssl_mutex || die "Failed to mkdir ssl_mutex"
}
|