blob: 1e7c60090abcbb06935eeead5848a7ae1ca6a7ba (
plain)
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
|
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-www/mod_scgi/mod_scgi-1.2_alpha2.ebuild,v 1.7 2005/09/29 02:35:36 vericgar Exp $
detectapache() {
# DO NOT REPLICATE THIS IN ANY OTHER PACKAGE WITHOUT PORTAGE DEVS PERMISSION
# IT IS BROKEN AND A TEMPORARY MEASURE!
# YOU'VE BEEN WARNED.
if [[ ${EBUILD_PHASE/depend} != ${EBUILD_PHASE} ]]; then
APACHEVER=1
return
fi
local domsg=
[ -n "$1" ] && domsg=1
HAVE_APACHE1=
HAVE_APACHE2=
has_version '=net-www/apache-1*' && HAVE_APACHE1=1
has_version '=net-www/apache-2*' && HAVE_APACHE2=1
[ -n "${HAVE_APACHE1}" ] && APACHEVER=1
[ -n "${HAVE_APACHE2}" ] && APACHEVER=2
[ -n "${HAVE_APACHE1}" ] && [ -n "${HAVE_APACHE2}" ] && APACHEVER='both'
case "${APACHEVER}" in
1) [ -n "${domsg}" ] && einfo 'Apache1 only detected' ;;
2) [ -n "${domsg}" ] && einfo 'Apache2 only detected';;
both)
if use apache2; then
[ -n "${domsg}" ] && einfo "Multiple Apache versions detected, using Apache2 (USE=apache2)"
APACHEVER=2
else
[ -n "${domsg}" ] && einfo 'Multiple Apache versions detected, using Apache1 (USE=-apache2)'
APACHEVER=1
fi ;;
*) if [ -n "${domsg}" ]; then
MSG="Unknown Apache version!"; eerror $MSG ; die $MSG
else
APACHEVER=0
fi; ;;
esac
}
detectapache
SLOT="${APACHEVER}"
[ "${APACHEVER}" -eq '2' ] && USE_APACHE2='2' || USE_APACHE2=''
MY_PN=${PN/mod_}
MY_PV=${PV/_alpha/a}
MY_P=${MY_PN}-${MY_PV}
S=${WORKDIR}/${MY_P}
DESCRIPTION="Apache module for a Replacement for the CGI protocol that is similar to FastCGI"
URI_BASE="http://www.mems-exchange.org/software"
HOMEPAGE="${URI_BASE}/scgi/"
SRC_URI="${URI_BASE}/files/${MY_PN}/${MY_P}.tar.gz"
LICENSE="CNRI"
KEYWORDS="~x86 ~ppc"
IUSE="apache2"
DEPEND="${DEPEND}
www-apps/scgi
net-www/apache
apache2? ( >=net-www/apache-2 )"
src_unpack() {
unpack ${A}
einfo "Fixing module name"
for f in ${S}/apache[12]/Makefile; do
sed -e 's/\(apxs[2]*\)/\1 -n mod_scgi/g' -i ${f}
done
for f in ${S}/apache[12]/mod_scgi.c; do
sed -e 's/scgi_module/mod_scgi/g' -i ${f}
done
}
src_compile() {
detectapache true
cd apache${APACHEVER}
make || die "apache${APACHEVER} mod_scgi make failed"
}
src_install() {
detectapache
newdoc apache1/README README.apache1
newdoc apache2/README README.apache2
dodoc README PKG-INFO LICENSE.txt CHANGES
exeinto /usr/lib/apache${APACHEVER}-extramodules
doexe apache${APACHEVER}/.libs/${PN}.so
insinto /etc/apache${APACHEVER}/conf/modules.d
doins ${FILESDIR}/20_mod_scgi.conf
}
pkg_postinst() {
detectapache
if [ -n "${USE_APACHE2}" ] ; then
einfo "Add '-D SCGI' to your APACHE2_OPTS in /etc/conf.d/apache2"
else
einfo "1. Execute the command:"
einfo " \"ebuild /var/db/pkg/${CATEGORY}/${PF}/${PF}.ebuild config\""
einfo "2. Edit /etc/conf.d/apache and add \"-D SCGI\" to APACHE_OPTS"
fi
}
pkg_config() {
detectapache
if [ -n "${USE_APACHE2}" ] ; then
einfo "Add '-D SCGI' to your APACHE2_OPTS in /etc/conf.d/apache2"
else
${ROOT}/usr/sbin/apacheaddmod \
${ROOT}/etc/apache/conf/apache.conf \
extramodules/mod_scgi.so mod_scgi.c scgi_module \
before=perl define=SCGI addconf=conf/modules.d/20_mod_scgi.conf
:;
fi
}
|