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