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

Diff of /eclass/apache-2.eclass

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.8 Revision 1.9
1# Copyright 1999-2007 Gentoo Foundation 1# Copyright 1999-2007 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
3# $Header: /var/cvsroot/gentoo-x86/eclass/apache-2.eclass,v 1.8 2008/02/02 10:10:36 hollow Exp $ 3# $Header: /var/cvsroot/gentoo-x86/eclass/apache-2.eclass,v 1.9 2008/03/23 00:14:13 hollow Exp $
4 4
5# @ECLASS: apache-2 5# @ECLASS: apache-2
6# @MAINTAINER: apache-devs@gentoo.org 6# @MAINTAINER: apache-devs@gentoo.org
7# @BLURB: Provides a common set of functions for >=apache-2.2* ebuilds 7# @BLURB: Provides a common set of functions for >=apache-2.2* ebuilds
8# @DESCRIPTION: 8# @DESCRIPTION:
9# This eclass handles common apache ebuild functions in a sane way and providing 9# This eclass handles common apache ebuild functions in a sane way and providing
10# information about where certain interfaces are located such as LoadModule 10# information about where certain interfaces are located such as LoadModule
11# generation and inter-module dependency checking. 11# generation and inter-module dependency checking.
12 12
13inherit autotools eutils flag-o-matic multilib 13inherit autotools confutils eutils flag-o-matic multilib
14 14
15# ============================================================================== 15# ==============================================================================
16# INTERNAL VARIABLES 16# INTERNAL VARIABLES
17# ============================================================================== 17# ==============================================================================
18 18
25# @DESCRIPTION: 25# @DESCRIPTION:
26# This internal variable contains the working directory where patches and config 26# This internal variable contains the working directory where patches and config
27# files are located 27# files are located
28GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}" 28GENTOO_PATCHDIR="${WORKDIR}/${GENTOO_PATCHNAME}"
29 29
30# @ECLASS-VARIABLE: GENTOO_DEVELOPER 30# @VARIABLE: GENTOO_DEVELOPER
31# @DESCRIPTION: 31# @DESCRIPTION:
32# This variable needs to be set in the ebuild and contains the name of the 32# This variable needs to be set in the ebuild and contains the name of the
33# gentoo developer who created the patch tarball 33# gentoo developer who created the patch tarball
34 34
35# @ECLASS-VARIABLE: GENTOO_PATCHSTAMP 35# @VARIABLE: GENTOO_PATCHSTAMP
36# @DESCRIPTION: 36# @DESCRIPTION:
37# This variable needs to be set in the ebuild and contains the date the patch 37# This variable needs to be set in the ebuild and contains the date the patch
38# tarball was created at in YYYYMMDD format 38# tarball was created at in YYYYMMDD format
39 39
40SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2 40SRC_URI="mirror://apache/httpd/httpd-${PV}.tar.bz2
41 http://dev.gentoo.org/~${GENTOO_DEVELOPER}/dist/apache/${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2" 41 http://dev.gentoo.org/~${GENTOO_DEVELOPER}/dist/apache/${GENTOO_PATCHNAME}-${GENTOO_PATCHSTAMP}.tar.bz2"
42 42
43# @ECLASS-VARIABLE: IUSE_MPMS_FORK 43# @VARIABLE: IUSE_MPMS_FORK
44# @DESCRIPTION: 44# @DESCRIPTION:
45# This variable needs to be set in the ebuild and contains a list of forking 45# This variable needs to be set in the ebuild and contains a list of forking
46# (i.e. non-threaded) MPMS 46# (i.e. non-threaded) MPMS
47 47
48# @ECLASS-VARIABLE: IUSE_MPMS_THREAD 48# @VARIABLE: IUSE_MPMS_THREAD
49# @DESCRIPTION: 49# @DESCRIPTION:
50# This variable needs to be set in the ebuild and contains a list of threaded 50# This variable needs to be set in the ebuild and contains a list of threaded
51# MPMS 51# MPMS
52 52
53# @ECLASS-VARIABLE: IUSE_MODULES 53# @VARIABLE: IUSE_MODULES
54# @DESCRIPTION: 54# @DESCRIPTION:
55# This variable needs to be set in the ebuild and contains a list of available 55# This variable needs to be set in the ebuild and contains a list of available
56# built-in modules 56# built-in modules
57 57
58IUSE_MPMS="${IUSE_MPMS_FORK} ${IUSE_MPMS_THREAD}" 58IUSE_MPMS="${IUSE_MPMS_FORK} ${IUSE_MPMS_THREAD}"
131 eerror "You have selected a non-threaded MPM but USE=threads is enabled" 131 eerror "You have selected a non-threaded MPM but USE=threads is enabled"
132 die "invalid use flag combination" 132 die "invalid use flag combination"
133 fi 133 fi
134} 134}
135 135
136# @ECLASS-VARIABLE: MODULE_CRITICAL 136# @VARIABLE: MODULE_CRITICAL
137# @DESCRIPTION: 137# @DESCRIPTION:
138# This variable needs to be set in the ebuild and contains a space-separated 138# This variable needs to be set in the ebuild and contains a space-separated
139# list of modules critical for the default apache. A user may still 139# list of modules critical for the default apache. A user may still
140# disable these modules for custom minimal installation at their own risk. 140# disable these modules for custom minimal installation at their own risk.
141 141
162 ewarn 162 ewarn
163 ebeep 10 163 ebeep 10
164 fi 164 fi
165} 165}
166 166
167# @ECLASS-VARIABLE: MODULE_DEPENDS 167# @VARIABLE: MODULE_DEPENDS
168# @DESCRIPTION: 168# @DESCRIPTION:
169# This variable needs to be set in the ebuild and contains a space-separated 169# This variable needs to be set in the ebuild and contains a space-separated
170# list of dependency tokens each with a module and the module it depends on 170# list of dependency tokens each with a module and the module it depends on
171# separated by a colon 171# separated by a colon
172 172
217 fi 217 fi
218 218
219 MY_CONF="--enable-so=static" 219 MY_CONF="--enable-so=static"
220 220
221 if use ldap ; then 221 if use ldap ; then
222 if ! built_with_use 'dev-libs/apr-util' ldap ; then 222 confutils_use_depend_built_with_all ldap dev-libs/apr-util ldap
223 eerror "dev-libs/apr-util is missing LDAP support. For apache to have"
224 eerror "ldap support, apr-util must be built with the ldap USE-flag"
225 eerror "enabled."
226 die "ldap USE-flag enabled while not supported in apr-util"
227 fi
228 MY_CONF="${MY_CONF} --enable-authnz_ldap=${mod_type} --enable-ldap=${mod_type}" 223 MY_CONF="${MY_CONF} --enable-authnz_ldap=${mod_type} --enable-ldap=${mod_type}"
229 MY_MODS="${MY_MODS} ldap authnz_ldap" 224 MY_MODS="${MY_MODS} ldap authnz_ldap"
230 else 225 else
231 MY_CONF="${MY_CONF} --disable-authnz_ldap --disable-ldap" 226 MY_CONF="${MY_CONF} --disable-authnz_ldap --disable-ldap"
232 fi 227 fi
288 MY_MODS=$(echo ${MY_MODS} | tr ' ' '\n' | sort -u) 283 MY_MODS=$(echo ${MY_MODS} | tr ' ' '\n' | sort -u)
289 check_module_depends 284 check_module_depends
290 check_module_critical 285 check_module_critical
291} 286}
292 287
293# @ECLASS-VARIABLE: MODULE_DEFINES 288# @VARIABLE: MODULE_DEFINES
294# @DESCRIPTION: 289# @DESCRIPTION:
295# This variable needs to be set in the ebuild and contains a space-separated 290# This variable needs to be set in the ebuild and contains a space-separated
296# list of tokens each mapping a module to a runtime define which can be 291# list of tokens each mapping a module to a runtime define which can be
297# specified in APACHE2_OPTS in /etc/conf.d/apache2 to enable this particular 292# specified in APACHE2_OPTS in /etc/conf.d/apache2 to enable this particular
298# module. 293# module.

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.20