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