/[gentoo-x86]/eclass/php-pear-r1.eclass
Gentoo

Contents of /eclass/php-pear-r1.eclass

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.19 - (hide annotations) (download)
Thu Nov 8 16:07:22 2007 UTC (6 years, 9 months ago) by jokey
Branch: MAIN
Changes since 1.18: +3 -2 lines
Make the eclass handle alpha versions as well

1 chtekk 1.14 # Copyright 1999-2007 Gentoo Foundation
2 stuart 1.1 # Distributed under the terms of the GNU General Public License v2
3 jokey 1.19 # $Header: /var/cvsroot/gentoo-x86/eclass/php-pear-r1.eclass,v 1.18 2007/10/22 22:55:04 jokey Exp $
4 stuart 1.1 #
5     # Author: Tal Peer <coredumb@gentoo.org>
6 chtekk 1.14 # Author: Luca Longinotti <chtekk@gentoo.org>
7 stuart 1.1
8 jokey 1.17 # @ECLASS: php-pear-r1.eclass
9     # @MAINTAINER:
10     # Gentoo PHP Team <php-bugs@gentoo.org>
11     # @BLURB: Provides means for an easy installation of PEAR packages.
12     # @DESCRIPTION:
13     # This eclass provides means for an easy installation of PEAR packages.
14     # For more information on PEAR, see http://pear.php.net/
15     # Note that this eclass doesn't handle dependencies of PEAR packages
16     # on purpose; please use (R)DEPEND to define them correctly!
17 stuart 1.1
18     EXPORT_FUNCTIONS src_install
19    
20 jokey 1.18 DEPEND="dev-lang/php >=dev-php/PEAR-PEAR-1.4.8"
21 chtekk 1.14 RDEPEND="${DEPEND}"
22    
23 jokey 1.17 # @ECLASS-VARIABLE: PHP_PEAR_PKG_NAME
24     # @DESCRIPTION:
25     # Set this if the the PEAR package name differs from ${PN/PEAR-/}
26     # (generally shouldn't be the case).
27 chtekk 1.14 [[ -z "${PHP_PEAR_PKG_NAME}" ]] && PHP_PEAR_PKG_NAME="${PN/PEAR-/}"
28 stuart 1.1
29     fix_PEAR_PV() {
30 chtekk 1.14 tmp="${PV}"
31     tmp="${tmp/_/}"
32     tmp="${tmp/rc/RC}"
33     tmp="${tmp/beta/b}"
34 jokey 1.19 tmp="${tmp/alpha/a}"
35 chtekk 1.14 PEAR_PV="${tmp}"
36 stuart 1.1 }
37    
38 jokey 1.17 # @ECLASS-VARIABLE: PEAR_PV
39     # @DESCRIPTION:
40 jokey 1.19 # Set in ebuild if the eclass ${PV} mangling breaks SRC_URI for alpha/beta/rc versions
41 jokey 1.16 [[ -z "${PEAR_PV}" ]] && fix_PEAR_PV
42    
43 chtekk 1.14 PEAR_PN="${PHP_PEAR_PKG_NAME}-${PEAR_PV}"
44 stuart 1.1
45 chtekk 1.14 [[ -z "${SRC_URI}" ]] && SRC_URI="http://pear.php.net/get/${PEAR_PN}.tgz"
46     [[ -z "${HOMEPAGE}" ]] && HOMEPAGE="http://pear.php.net/${PHP_PEAR_PKG_NAME}"
47 chtekk 1.7
48 stuart 1.1 S="${WORKDIR}/${PEAR_PN}"
49    
50 jokey 1.17 # @FUNCTION: php-pear-r1_src_install
51     # @DESCRIPTION:
52     # Takes care of standard install for PEAR packages.
53 beu 1.3 php-pear-r1_src_install() {
54 chtekk 1.6 # SNMP support
55 stuart 1.1 addpredict /usr/share/snmp/mibs/.index
56     addpredict /var/lib/net-snmp/
57 chtekk 1.15 addpredict /session_mm_cli0.sem
58 stuart 1.1
59 sebastian 1.8 case "${CATEGORY}" in
60     dev-php)
61     if has_version '=dev-lang/php-5*' ; then
62     PHP_BIN="/usr/lib/php5/bin/php"
63     else
64     PHP_BIN="/usr/lib/php4/bin/php"
65     fi ;;
66     dev-php4) PHP_BIN="/usr/lib/php4/bin/php" ;;
67     dev-php5) PHP_BIN="/usr/lib/php5/bin/php" ;;
68 chtekk 1.14 *) die "Version of PHP required by packages in category ${CATEGORY} unknown"
69 sebastian 1.8 esac
70    
71 chtekk 1.6 cd "${S}"
72 chtekk 1.14 mv -f "${WORKDIR}/package.xml" "${S}"
73 sebastian 1.13
74 jokey 1.18 if [[ -f "${S}"/package2.xml ]] ; then
75     pear -d php_bin="${PHP_BIN}" install --force --loose --nodeps --offline --packagingroot="${D}" "${S}/package2.xml" > /dev/null || die "Unable to install PEAR package"
76     else
77 chtekk 1.14 pear -d php_bin="${PHP_BIN}" install --force --loose --nodeps --offline --packagingroot="${D}" "${S}/package.xml" > /dev/null || die "Unable to install PEAR package"
78 sebastian 1.10 fi
79 sebastian 1.13
80 chtekk 1.14 rm -Rf "${D}/usr/share/php/.channels" \
81 sebastian 1.10 "${D}/usr/share/php/.depdblock" \
82     "${D}/usr/share/php/.depdb" \
83     "${D}/usr/share/php/.filemap" \
84 sebastian 1.9 "${D}/usr/share/php/.lock" \
85     "${D}/usr/share/php/.registry"
86 stuart 1.1 }

  ViewVC Help
Powered by ViewVC 1.1.20