| 1 |
chtekk |
1.10 |
# Copyright 1999-2007 Gentoo Foundation |
| 2 |
chtekk |
1.1 |
# Distributed under the terms of the GNU General Public License v2 |
| 3 |
mabi |
1.16 |
# $Header: /var/cvsroot/gentoo-x86/eclass/php-pear-lib-r1.eclass,v 1.15 2009/01/12 22:48:06 maekke Exp $ |
| 4 |
chtekk |
1.1 |
# |
| 5 |
|
|
# Author: Luca Longinotti <chtekk@gentoo.org> |
| 6 |
jokey |
1.12 |
|
| 7 |
|
|
# @ECLASS: php-pear-lib-r1.eclass |
| 8 |
|
|
# @MAINTAINER: |
| 9 |
|
|
# Gentoo PHP team <php-bugs@gentoo.org> |
| 10 |
|
|
# @BLURB: Provides means for an easy installation of PEAR-based libraries. |
| 11 |
|
|
# @DESCRIPTION: |
| 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 |
| 14 |
|
|
# the libraries into version-dependant directories. |
| 15 |
chtekk |
1.1 |
|
| 16 |
armin76 |
1.13 |
inherit depend.php multilib |
| 17 |
chtekk |
1.1 |
|
| 18 |
|
|
EXPORT_FUNCTIONS src_install |
| 19 |
|
|
|
| 20 |
mabi |
1.16 |
DEPEND="dev-lang/php |
| 21 |
|
|
|| ( ( >=dev-php/PEAR-PEAR-1.6.1 <dev-php/PEAR-PEAR-1.8.1 ) |
| 22 |
|
|
>=dev-php/pear-1.8.1 )" |
| 23 |
chtekk |
1.10 |
RDEPEND="${DEPEND}" |
| 24 |
chtekk |
1.1 |
|
| 25 |
jokey |
1.12 |
# @FUNCTION: php-pear-lib-r1_src_install |
| 26 |
|
|
# @DESCRIPTION: |
| 27 |
|
|
# Takes care of standard install for PEAR-based libraries. |
| 28 |
chtekk |
1.1 |
php-pear-lib-r1_src_install() { |
| 29 |
|
|
has_php |
| 30 |
|
|
|
| 31 |
|
|
# SNMP support |
| 32 |
|
|
addpredict /usr/share/snmp/mibs/.index |
| 33 |
|
|
addpredict /var/lib/net-snmp/ |
| 34 |
chtekk |
1.11 |
addpredict /session_mm_cli0.sem |
| 35 |
chtekk |
1.1 |
|
| 36 |
sebastian |
1.3 |
case "${CATEGORY}" in |
| 37 |
|
|
dev-php) |
| 38 |
|
|
if has_version '=dev-lang/php-5*' ; then |
| 39 |
armin76 |
1.13 |
PHP_BIN="/usr/$(get_libdir)/php5/bin/php" |
| 40 |
sebastian |
1.3 |
else |
| 41 |
armin76 |
1.13 |
PHP_BIN="/usr/$(get_libdir)/php4/bin/php" |
| 42 |
sebastian |
1.3 |
fi ;; |
| 43 |
armin76 |
1.13 |
dev-php4) PHP_BIN="/usr/$(get_libdir)/php4/bin/php" ;; |
| 44 |
|
|
dev-php5) PHP_BIN="/usr/$(get_libdir)/php5/bin/php" ;; |
| 45 |
chtekk |
1.10 |
*) die "Version of PHP required by packages in category ${CATEGORY} unknown" |
| 46 |
sebastian |
1.3 |
esac |
| 47 |
|
|
|
| 48 |
chtekk |
1.1 |
cd "${S}" |
| 49 |
sebastian |
1.9 |
|
| 50 |
maekke |
1.15 |
if [[ -f "${WORKDIR}"/package2.xml ]] ; then |
| 51 |
|
|
mv -f "${WORKDIR}/package2.xml" "${S}" |
| 52 |
|
|
if has_version '>=dev-php/PEAR-PEAR-1.7.0' ; then |
| 53 |
|
|
local WWW_DIR="/usr/share/webapps/${PN}/${PVR}/htdocs" |
| 54 |
|
|
pear -d php_bin="${PHP_BIN}" -d www_dir="${WWW_DIR}" \ |
| 55 |
|
|
install --force --loose --nodeps --offline --packagingroot="${D}" \ |
| 56 |
|
|
"${S}/package2.xml" || die "Unable to install PEAR package" |
| 57 |
|
|
else |
| 58 |
|
|
pear -d php_bin="${PHP_BIN}" install --force --loose --nodeps --offline --packagingroot="${D}" \ |
| 59 |
|
|
"${S}/package2.xml" || die "Unable to install PEAR package" |
| 60 |
|
|
fi |
| 61 |
|
|
else |
| 62 |
|
|
mv -f "${WORKDIR}/package.xml" "${S}" |
| 63 |
|
|
if has_version '>=dev-php/PEAR-PEAR-1.7.0' ; then |
| 64 |
|
|
local WWW_DIR="/usr/share/webapps/${PN}/${PVR}/htdocs" |
| 65 |
|
|
pear -d php_bin="${PHP_BIN}" -d www_dir="${WWW_DIR}" \ |
| 66 |
|
|
install --force --loose --nodeps --offline --packagingroot="${D}" \ |
| 67 |
|
|
"${S}/package.xml" || die "Unable to install PEAR package" |
| 68 |
|
|
else |
| 69 |
|
|
pear -d php_bin="${PHP_BIN}" install --force --loose --nodeps --offline --packagingroot="${D}" \ |
| 70 |
|
|
"${S}/package.xml" || die "Unable to install PEAR package" |
| 71 |
|
|
fi |
| 72 |
|
|
fi |
| 73 |
sebastian |
1.9 |
|
| 74 |
chtekk |
1.10 |
rm -Rf "${D}/usr/share/php/.channels" \ |
| 75 |
sebastian |
1.5 |
"${D}/usr/share/php/.depdblock" \ |
| 76 |
|
|
"${D}/usr/share/php/.depdb" \ |
| 77 |
|
|
"${D}/usr/share/php/.filemap" \ |
| 78 |
chtekk |
1.1 |
"${D}/usr/share/php/.lock" \ |
| 79 |
|
|
"${D}/usr/share/php/.registry" |
| 80 |
|
|
|
| 81 |
|
|
# install to the correct phpX folder, if not specified |
| 82 |
chtekk |
1.6 |
# /usr/share/php will be kept, also sedding to substitute |
| 83 |
chtekk |
1.1 |
# the path, many files can specify it wrongly |
| 84 |
chtekk |
1.10 |
if [[ -n "${PHP_SHARED_CAT}" ]] && [[ "${PHP_SHARED_CAT}" != "php" ]] ; then |
| 85 |
chtekk |
1.1 |
mv -f "${D}/usr/share/php" "${D}/usr/share/${PHP_SHARED_CAT}" || die "Unable to move files" |
| 86 |
armin76 |
1.13 |
find "${D}/" -type f -exec sed -e "s|/usr/share/php|/usr/share/${PHP_SHARED_CAT}|g" -i {} \; \ |
| 87 |
|
|
|| die "Unable to change PHP path" |
| 88 |
chtekk |
1.1 |
einfo |
| 89 |
|
|
einfo "Installing to /usr/share/${PHP_SHARED_CAT} ..." |
| 90 |
|
|
einfo |
| 91 |
|
|
else |
| 92 |
|
|
einfo |
| 93 |
|
|
einfo "Installing to /usr/share/php ..." |
| 94 |
|
|
einfo |
| 95 |
|
|
fi |
| 96 |
|
|
} |