/[gentoo-x86]/eclass/depend.apache.eclass
Gentoo

Contents of /eclass/depend.apache.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.22 - (hide annotations) (download)
Sun Sep 18 05:01:46 2005 UTC (9 years, 1 month ago) by vericgar
Branch: MAIN
Changes since 1.21: +5 -3 lines
Changes to make apache multilib aware

1 stuart 1.20 # Copyright 1999-2005 Gentoo Foundation
2     # Distributed under the terms of the GNU General Public License v2
3 vericgar 1.22 # $Header: /var/cvsroot/gentoo-x86/eclass/depend.apache.eclass,v 1.21 2005/09/10 20:21:51 vericgar Exp $
4    
5     inherit multilib
6 stuart 1.2
7 urilith 1.6 ######
8     ## Apache Common Variables
9     ##
10     ## These are internal variables used by this, and other apache-related eclasses,
11     ## and thus should not need to be used by the ebuilds themselves (the ebuilds
12     ## should know what version of Apache they are building against).
13     ######
14    
15     ####
16     ## APACHE_VERSION
17     ##
18     ## Stores the version of apache we are going to be ebuilding. This variable is
19     ## set by the need_apache{|1|2} functions.
20 vericgar 1.9 ##
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 urilith 1.6 ####
24 vericgar 1.9 APACHE_VERSION='1'
25 urilith 1.6
26     ####
27     ## APXS1, APXS2
28     ##
29     ## Paths to the apxs tools
30     ####
31     APXS1="/usr/sbin/apxs"
32     APXS2="/usr/sbin/apxs2"
33    
34     ####
35     ## APACHECTL1, APACHECTL2
36     ##
37     ## Paths to the apachectl tools
38     ####
39     APACHECTL1="/usr/sbin/apachectl"
40     APACHECTL2="/usr/sbin/apache2ctl"
41    
42     ####
43     ## APACHE1_BASEDIR, APACHE2_BASEDIR
44     ##
45     ## Paths to the server root directories
46     ####
47 vericgar 1.22 APACHE1_BASEDIR="/usr/$(get_libdir)/apache"
48     APACHE2_BASEDIR="/usr/$(get_libdir)/apache2"
49 urilith 1.6
50     ####
51     ## APACHE1_CONFDIR, APACHE2_CONFDIR
52     ##
53     ## Paths to the configuration file directories (usually under
54     ## $APACHE?_BASEDIR/conf)
55     ####
56     APACHE1_CONFDIR="/etc/apache"
57     APACHE2_CONFDIR="/etc/apache2"
58    
59     ####
60     ## APACHE1_MODULES_CONFDIR, APACHE2_MODULES_CONFDIR
61     ##
62     ## Paths where module configuration files are kept
63     ####
64     APACHE1_MODULES_CONFDIR="${APACHE1_CONFDIR}/modules.d"
65     APACHE2_MODULES_CONFDIR="${APACHE2_CONFDIR}/modules.d"
66    
67     ####
68 vericgar 1.21 ## APACHE1_VHOSTDIR, APACHE2_VHOSTDIR
69 urilith 1.6 ##
70     ## Paths where virtual host configuration files are kept
71     ####
72     APACHE1_VHOSTDIR="${APACHE1_CONFDIR}/vhosts.d"
73     APACHE2_VHOSTDIR="${APACHE2_CONFDIR}/vhosts.d"
74    
75     ####
76     ## APACHE1_MODULESDIR, APACHE2_MODULESDIR
77     ##
78     ## Paths where we install modules
79     ####
80     APACHE1_MODULESDIR="${APACHE1_BASEDIR}/modules"
81     APACHE2_MODULESDIR="${APACHE2_BASEDIR}/modules"
82    
83     ####
84     ## APACHE1_DEPEND, APACHE2_DEPEND
85     ##
86     ## Dependencies for apache 1.x and apache 2.x
87 vericgar 1.21 ## - apache2 must be at least version 2.0.54-r30, this is lowest version
88 vericgar 1.9 ## containing our new overall changes -- trapni (Jan 21 2005)
89 vericgar 1.21 ## - apache1 must be at least version 1.3.33-r10, but how to
90 vericgar 1.9 ## define the DEPEND here? (FIXME) -- trapni (Jan 21 2005)
91     ## - currently not possible - bug #4315 -- vericgar (Jan 21 2005)
92 urilith 1.6 ####
93     APACHE1_DEPEND="=net-www/apache-1*"
94 vericgar 1.21 APACHE2_DEPEND=">=net-www/apache-2.0.54-r30"
95 vericgar 1.7
96 vericgar 1.9 ####
97     ## APACHE_DEPEND
98     ##
99     ## Dependency magic based on useflags to use the right DEPEND
100     ####
101    
102 stuart 1.20 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 vericgar 1.9
146 urilith 1.6 ####
147     ## need_apache1
148     ##
149     ## An ebuild calls this to get the dependency information
150     ## for apache-1.x. An ebuild should use this in order for
151     ## future changes to the build infrastructure to happen
152     ## seamlessly. All an ebuild needs to do is include the
153     ## line need_apache1 somewhere.
154     ####
155     need_apache1() {
156     debug-print-function need_apache1
157 stuart 1.1
158 urilith 1.6 DEPEND="${DEPEND} ${APACHE1_DEPEND}"
159 vericgar 1.10 RDEPEND="${RDEPEND} ${APACHE1_DEPEND}"
160 urilith 1.6 APACHE_VERSION='1'
161 stuart 1.1 }
162    
163 urilith 1.6 ####
164     ## need_apache2
165     ##
166     ## An ebuild calls this to get the dependency information
167     ## for apache-2.x. An ebuild should use this in order for
168     ## future changes to the build infrastructure to happen
169     ## seamlessly. All an ebuild needs to do is include the
170     ## line need_apache1 somewhere.
171     ####
172     need_apache2() {
173     debug-print-function need_apache2
174 stuart 1.1
175 urilith 1.6 DEPEND="${DEPEND} ${APACHE2_DEPEND}"
176 vericgar 1.10 RDEPEND="${RDEPEND} ${APACHE2_DEPEND}"
177 urilith 1.6 APACHE_VERSION='2'
178 stuart 1.1 }
179    
180 vericgar 1.9 ####
181 swegener 1.18 ## DO NOT CHANGE THIS FUNCTION UNLESS YOU UNDERSTAND THE CONSEQUENCES IT
182 vericgar 1.9 ## 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 urilith 1.6 need_apache() {
186     debug-print-function need_apache
187 stuart 1.1
188 urilith 1.6 IUSE="${IUSE} apache2"
189 stuart 1.20 DEPEND="${DEPEND} ${NEED_APACHE_DEPEND}"
190     RDEPEND="${RDEPEND} ${NEED_APACHE_DEPEND}"
191 urilith 1.6 if useq apache2; then
192 stuart 1.20 uses_apache2
193     else
194     uses_apache1
195     fi
196     }
197    
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 urilith 1.6 else
209 stuart 1.20 doesnt_use_apache
210 stuart 1.1 fi
211     }

  ViewVC Help
Powered by ViewVC 1.1.20