| 1 | # Copyright 2004-2005 Gentoo Foundation |
1 | # Copyright 1999-2005 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License, v2 or later |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/depend.apache.eclass,v 1.13 2005/03/14 10:42:28 stuart Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/depend.apache.eclass,v 1.23 2005/09/19 00:03:55 vericgar Exp $ |
| 4 | ECLASS=depend.apache |
4 | |
| 5 | INHERITED="$INHERITED $ECLASS" |
5 | inherit multilib |
| 6 | |
6 | |
| 7 | ###### |
7 | ###### |
| 8 | ## Apache Common Variables |
8 | ## Apache Common Variables |
| 9 | ## |
9 | ## |
| 10 | ## These are internal variables used by this, and other apache-related eclasses, |
10 | ## These are internal variables used by this, and other apache-related eclasses, |
| … | |
… | |
| 42 | #### |
42 | #### |
| 43 | ## APACHE1_BASEDIR, APACHE2_BASEDIR |
43 | ## APACHE1_BASEDIR, APACHE2_BASEDIR |
| 44 | ## |
44 | ## |
| 45 | ## Paths to the server root directories |
45 | ## Paths to the server root directories |
| 46 | #### |
46 | #### |
|
|
47 | #APACHE1_BASEDIR="/usr/$(get_libdir)/apache" |
|
|
48 | #APACHE2_BASEDIR="/usr/$(get_libdir)/apache2" |
| 47 | APACHE1_BASEDIR="/usr/lib/apache" |
49 | APACHE1_BASEDIR="/usr/lib/apache" |
| 48 | APACHE2_BASEDIR="/usr/lib/apache2" |
50 | APACHE2_BASEDIR="/usr/lib/apache2" |
| 49 | |
51 | |
| 50 | #### |
52 | #### |
| 51 | ## APACHE1_CONFDIR, APACHE2_CONFDIR |
53 | ## APACHE1_CONFDIR, APACHE2_CONFDIR |
| … | |
… | |
| 63 | #### |
65 | #### |
| 64 | APACHE1_MODULES_CONFDIR="${APACHE1_CONFDIR}/modules.d" |
66 | APACHE1_MODULES_CONFDIR="${APACHE1_CONFDIR}/modules.d" |
| 65 | APACHE2_MODULES_CONFDIR="${APACHE2_CONFDIR}/modules.d" |
67 | APACHE2_MODULES_CONFDIR="${APACHE2_CONFDIR}/modules.d" |
| 66 | |
68 | |
| 67 | #### |
69 | #### |
| 68 | ## APACHE1_MODULES_VHOSTDIR, APACHE2_MODULES_VHOSTDIR |
70 | ## APACHE1_VHOSTDIR, APACHE2_VHOSTDIR |
| 69 | ## |
71 | ## |
| 70 | ## Paths where virtual host configuration files are kept |
72 | ## Paths where virtual host configuration files are kept |
| 71 | #### |
73 | #### |
| 72 | APACHE1_VHOSTDIR="${APACHE1_CONFDIR}/vhosts.d" |
74 | APACHE1_VHOSTDIR="${APACHE1_CONFDIR}/vhosts.d" |
| 73 | APACHE2_VHOSTDIR="${APACHE2_CONFDIR}/vhosts.d" |
75 | APACHE2_VHOSTDIR="${APACHE2_CONFDIR}/vhosts.d" |
| … | |
… | |
| 82 | |
84 | |
| 83 | #### |
85 | #### |
| 84 | ## APACHE1_DEPEND, APACHE2_DEPEND |
86 | ## APACHE1_DEPEND, APACHE2_DEPEND |
| 85 | ## |
87 | ## |
| 86 | ## Dependencies for apache 1.x and apache 2.x |
88 | ## Dependencies for apache 1.x and apache 2.x |
| 87 | ## - apache2 must be at least version 2.0.52-r3, this is lowest version |
89 | ## - apache2 must be at least version 2.0.54-r30, this is lowest version |
| 88 | ## containing our new overall changes -- trapni (Jan 21 2005) |
90 | ## containing our new overall changes -- trapni (Jan 21 2005) |
| 89 | ## - apache1 must be at least version 1.3.33-r1, but how to |
91 | ## - apache1 must be at least version 1.3.33-r10, but how to |
| 90 | ## define the DEPEND here? (FIXME) -- trapni (Jan 21 2005) |
92 | ## define the DEPEND here? (FIXME) -- trapni (Jan 21 2005) |
| 91 | ## - currently not possible - bug #4315 -- vericgar (Jan 21 2005) |
93 | ## - currently not possible - bug #4315 -- vericgar (Jan 21 2005) |
| 92 | #### |
94 | #### |
| 93 | APACHE1_DEPEND="=net-www/apache-1*" |
95 | APACHE1_DEPEND="=net-www/apache-1*" |
| 94 | APACHE2_DEPEND=">=net-www/apache-2.0.52-r3" |
96 | APACHE2_DEPEND=">=net-www/apache-2.0.54-r30" |
| 95 | |
|
|
| 96 | |
97 | |
| 97 | #### |
98 | #### |
| 98 | ## APACHE_DEPEND |
99 | ## APACHE_DEPEND |
| 99 | ## |
100 | ## |
| 100 | ## Dependency magic based on useflags to use the right DEPEND |
101 | ## Dependency magic based on useflags to use the right DEPEND |
| 101 | #### |
102 | #### |
| 102 | |
103 | |
| 103 | APACHE_DEPEND="apache2? ( ${APACHE2_DEPEND} ) !apache2? ( ${APACHE1_DEPEND} )" |
104 | NEED_APACHE_DEPEND="apache2? ( ${APACHE2_DEPEND} ) !apache2? ( ${APACHE1_DEPEND} )" |
|
|
105 | WANT_APACHE_DEPEND="apache2? ( ${APACHE2_DEPEND} ) !apache2? ( apache? ( ${APACHE1_DEPEND} ) )" |
|
|
106 | |
|
|
107 | #### |
|
|
108 | # uses_apache1() |
|
|
109 | # |
|
|
110 | # sets up all of the environment variables required by an apache1 module |
|
|
111 | #### |
|
|
112 | |
|
|
113 | uses_apache1() { |
|
|
114 | APACHE_VERSION='1' |
|
|
115 | APXS="$APXS1" |
|
|
116 | USE_APACHE2= |
|
|
117 | APACHECTL="${APACHECTL1}" |
|
|
118 | APACHE_BASEDIR="${APACHE1_BASEDIR}" |
|
|
119 | APACHE_CONFDIR="${APACHE1_CONFDIR}" |
|
|
120 | APACHE_MODULES_CONFDIR="${APACHE1_MODULES_CONFDIR}" |
|
|
121 | APACHE_VHOSTSDIR="${APACHE1_VHOSTSDIR}" |
|
|
122 | APACHE_MODULESDIR="${APACHE1_MODULESDIR}" |
|
|
123 | } |
|
|
124 | |
|
|
125 | #### |
|
|
126 | # uses_apache2() |
|
|
127 | # |
|
|
128 | # sets up all of the environment variables required by an apache2 module |
|
|
129 | #### |
|
|
130 | |
|
|
131 | uses_apache2() { |
|
|
132 | APACHE_VERSION='2' |
|
|
133 | USE_APACHE2=2 |
|
|
134 | APXS="$APXS2" |
|
|
135 | APACHECTL="${APACHECTL2}" |
|
|
136 | APACHE_BASEDIR="${APACHE2_BASEDIR}" |
|
|
137 | APACHE_CONFDIR="${APACHE2_CONFDIR}" |
|
|
138 | APACHE_MODULES_CONFDIR="${APACHE2_MODULES_CONFDIR}" |
|
|
139 | APACHE_VHOSTSDIR="${APACHE2_VHOSTSDIR}" |
|
|
140 | APACHE_MODULESDIR="${APACHE2_MODULESDIR}" |
|
|
141 | } |
|
|
142 | |
|
|
143 | doesnt_use_apache() { |
|
|
144 | APACHE_VERSION='0' |
|
|
145 | USE_APACHE= |
|
|
146 | } |
| 104 | |
147 | |
| 105 | #### |
148 | #### |
| 106 | ## need_apache1 |
149 | ## need_apache1 |
| 107 | ## |
150 | ## |
| 108 | ## An ebuild calls this to get the dependency information |
151 | ## An ebuild calls this to get the dependency information |
| … | |
… | |
| 135 | RDEPEND="${RDEPEND} ${APACHE2_DEPEND}" |
178 | RDEPEND="${RDEPEND} ${APACHE2_DEPEND}" |
| 136 | APACHE_VERSION='2' |
179 | APACHE_VERSION='2' |
| 137 | } |
180 | } |
| 138 | |
181 | |
| 139 | #### |
182 | #### |
| 140 | ## DO NOT CHANGE THIS FUNCTION UNLESS YOU UNDERSTAND THE CONSEQUENCES IT |
183 | ## DO NOT CHANGE THIS FUNCTION UNLESS YOU UNDERSTAND THE CONSEQUENCES IT |
| 141 | ## WILL HAVE ON THE CACHE! There MUST be a apache2? () block in DEPEND for |
184 | ## WILL HAVE ON THE CACHE! There MUST be a apache2? () block in DEPEND for |
| 142 | ## things to work correct in the dependency calculation stage. |
185 | ## things to work correct in the dependency calculation stage. |
| 143 | #### |
186 | #### |
| 144 | need_apache() { |
187 | need_apache() { |
| 145 | debug-print-function need_apache |
188 | debug-print-function need_apache |
| 146 | |
189 | |
| 147 | IUSE="${IUSE} apache2" |
190 | IUSE="${IUSE} apache2" |
| 148 | DEPEND="${DEPEND} ${APACHE_DEPEND}" |
191 | DEPEND="${DEPEND} ${NEED_APACHE_DEPEND}" |
| 149 | RDEPEND="${RDEPEND} ${APACHE_DEPEND}" |
192 | RDEPEND="${RDEPEND} ${NEED_APACHE_DEPEND}" |
| 150 | if useq apache2; then |
193 | if useq apache2; then |
| 151 | APACHE_VERSION='2' |
194 | uses_apache2 |
| 152 | USE_APACHE2=2 |
|
|
| 153 | APXS="$APXS2" |
|
|
| 154 | APACHECTL="${APACHECTL2}" |
|
|
| 155 | APACHE_BASEDIR="${APACHE2_BASEDIR}" |
|
|
| 156 | APACHE_CONFDIR="${APACHE2_CONFDIR}" |
|
|
| 157 | APACHE_MODULES_CONFDIR="${APACHE2_MODULES_CONFDIR}" |
|
|
| 158 | APACHE_VHOSTSDIR="${APACHE2_VHOSTSDIR}" |
|
|
| 159 | APACHE_MODULESDIR="${APACHE2_MODULESDIR}" |
|
|
| 160 | else |
195 | else |
| 161 | APACHE_VERSION='1' |
196 | uses_apache1 |
| 162 | APXS="$APXS1" |
|
|
| 163 | USE_APACHE2= |
|
|
| 164 | APACHECTL="${APACHECTL1}" |
|
|
| 165 | APACHE_BASEDIR="${APACHE1_BASEDIR}" |
|
|
| 166 | APACHE_CONFDIR="${APACHE1_CONFDIR}" |
|
|
| 167 | APACHE_MODULES_CONFDIR="${APACHE1_MODULES_CONFDIR}" |
|
|
| 168 | APACHE_VHOSTSDIR="${APACHE1_VHOSTSDIR}" |
|
|
| 169 | APACHE_MODULESDIR="${APACHE1_MODULESDIR}" |
|
|
| 170 | fi |
197 | fi |
| 171 | } |
198 | } |
|
|
199 | |
|
|
200 | want_apache() { |
|
|
201 | debug-print-function want_apache |
|
|
202 | |
|
|
203 | IUSE="${IUSE} apache apache2" |
|
|
204 | DEPEND="${DEPEND} ${WANT_APACHE_DEPEND}" |
|
|
205 | RDEPEND="${DEPEND} ${WANT_APACHE_DEPEND}" |
|
|
206 | if useq apache2 ; then |
|
|
207 | uses_apache2 |
|
|
208 | elif useq apache ; then |
|
|
209 | uses_apache1 |
|
|
210 | else |
|
|
211 | doesnt_use_apache |
|
|
212 | fi |
|
|
213 | } |