| 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/php-pear-lib-r1.eclass,v 1.12 2007/09/02 17:49:20 jokey Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/php-pear-lib-r1.eclass,v 1.13 2008/02/11 20:47:35 armin76 Exp $ |
| 4 | # |
4 | # |
| 5 | # Author: Luca Longinotti <chtekk@gentoo.org> |
5 | # Author: Luca Longinotti <chtekk@gentoo.org> |
| 6 | |
6 | |
| 7 | # @ECLASS: php-pear-lib-r1.eclass |
7 | # @ECLASS: php-pear-lib-r1.eclass |
| 8 | # @MAINTAINER: |
8 | # @MAINTAINER: |
| … | |
… | |
| 11 | # @DESCRIPTION: |
11 | # @DESCRIPTION: |
| 12 | # This class provides means for an easy installation of PEAR-based libraries, |
12 | # This class provides means for an easy installation of PEAR-based libraries, |
| 13 | # such as Creole, Jargon, Phing etc., while retaining the functionality to put |
13 | # such as Creole, Jargon, Phing etc., while retaining the functionality to put |
| 14 | # the libraries into version-dependant directories. |
14 | # the libraries into version-dependant directories. |
| 15 | |
15 | |
| 16 | inherit depend.php |
16 | inherit depend.php multilib |
| 17 | |
17 | |
| 18 | EXPORT_FUNCTIONS src_install |
18 | EXPORT_FUNCTIONS src_install |
| 19 | |
19 | |
| 20 | DEPEND="dev-lang/php >=dev-php/PEAR-PEAR-1.4.6" |
20 | DEPEND="dev-lang/php >=dev-php/PEAR-PEAR-1.6.1" |
| 21 | RDEPEND="${DEPEND}" |
21 | RDEPEND="${DEPEND}" |
| 22 | |
22 | |
| 23 | # @FUNCTION: php-pear-lib-r1_src_install |
23 | # @FUNCTION: php-pear-lib-r1_src_install |
| 24 | # @DESCRIPTION: |
24 | # @DESCRIPTION: |
| 25 | # Takes care of standard install for PEAR-based libraries. |
25 | # Takes care of standard install for PEAR-based libraries. |
| … | |
… | |
| 32 | addpredict /session_mm_cli0.sem |
32 | addpredict /session_mm_cli0.sem |
| 33 | |
33 | |
| 34 | case "${CATEGORY}" in |
34 | case "${CATEGORY}" in |
| 35 | dev-php) |
35 | dev-php) |
| 36 | if has_version '=dev-lang/php-5*' ; then |
36 | if has_version '=dev-lang/php-5*' ; then |
| 37 | PHP_BIN="/usr/lib/php5/bin/php" |
37 | PHP_BIN="/usr/$(get_libdir)/php5/bin/php" |
| 38 | else |
38 | else |
| 39 | PHP_BIN="/usr/lib/php4/bin/php" |
39 | PHP_BIN="/usr/$(get_libdir)/php4/bin/php" |
| 40 | fi ;; |
40 | fi ;; |
| 41 | dev-php4) PHP_BIN="/usr/lib/php4/bin/php" ;; |
41 | dev-php4) PHP_BIN="/usr/$(get_libdir)/php4/bin/php" ;; |
| 42 | dev-php5) PHP_BIN="/usr/lib/php5/bin/php" ;; |
42 | dev-php5) PHP_BIN="/usr/$(get_libdir)/php5/bin/php" ;; |
| 43 | *) die "Version of PHP required by packages in category ${CATEGORY} unknown" |
43 | *) die "Version of PHP required by packages in category ${CATEGORY} unknown" |
| 44 | esac |
44 | esac |
| 45 | |
45 | |
| 46 | cd "${S}" |
46 | cd "${S}" |
| 47 | mv -f "${WORKDIR}/package.xml" "${S}" |
47 | mv -f "${WORKDIR}/package.xml" "${S}" |
| 48 | |
48 | |
| 49 | if has_version '>=dev-php/PEAR-PEAR-1.4.8' ; then |
49 | pear -d php_bin="${PHP_BIN}" install --force --loose --nodeps --offline --packagingroot="${D}" \ |
| 50 | pear -d php_bin="${PHP_BIN}" install --force --loose --nodeps --offline --packagingroot="${D}" "${S}/package.xml" > /dev/null || die "Unable to install PEAR package" |
50 | "${S}/package.xml" || die "Unable to install PEAR package" |
| 51 | else |
|
|
| 52 | pear -d php_bin="${PHP_BIN}" install --nodeps --packagingroot="${D}" "${S}/package.xml" > /dev/null || die "Unable to install PEAR package" |
|
|
| 53 | fi |
|
|
| 54 | |
51 | |
| 55 | rm -Rf "${D}/usr/share/php/.channels" \ |
52 | rm -Rf "${D}/usr/share/php/.channels" \ |
| 56 | "${D}/usr/share/php/.depdblock" \ |
53 | "${D}/usr/share/php/.depdblock" \ |
| 57 | "${D}/usr/share/php/.depdb" \ |
54 | "${D}/usr/share/php/.depdb" \ |
| 58 | "${D}/usr/share/php/.filemap" \ |
55 | "${D}/usr/share/php/.filemap" \ |
| … | |
… | |
| 62 | # install to the correct phpX folder, if not specified |
59 | # install to the correct phpX folder, if not specified |
| 63 | # /usr/share/php will be kept, also sedding to substitute |
60 | # /usr/share/php will be kept, also sedding to substitute |
| 64 | # the path, many files can specify it wrongly |
61 | # the path, many files can specify it wrongly |
| 65 | if [[ -n "${PHP_SHARED_CAT}" ]] && [[ "${PHP_SHARED_CAT}" != "php" ]] ; then |
62 | if [[ -n "${PHP_SHARED_CAT}" ]] && [[ "${PHP_SHARED_CAT}" != "php" ]] ; then |
| 66 | mv -f "${D}/usr/share/php" "${D}/usr/share/${PHP_SHARED_CAT}" || die "Unable to move files" |
63 | mv -f "${D}/usr/share/php" "${D}/usr/share/${PHP_SHARED_CAT}" || die "Unable to move files" |
| 67 | find "${D}/" -type f -exec sed -e "s|/usr/share/php|/usr/share/${PHP_SHARED_CAT}|g" -i {} \; || die "Unable to change PHP path" |
64 | find "${D}/" -type f -exec sed -e "s|/usr/share/php|/usr/share/${PHP_SHARED_CAT}|g" -i {} \; \ |
|
|
65 | || die "Unable to change PHP path" |
| 68 | einfo |
66 | einfo |
| 69 | einfo "Installing to /usr/share/${PHP_SHARED_CAT} ..." |
67 | einfo "Installing to /usr/share/${PHP_SHARED_CAT} ..." |
| 70 | einfo |
68 | einfo |
| 71 | else |
69 | else |
| 72 | einfo |
70 | einfo |