| 1 | # Copyright 1999-2005 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/Attic/php-ext-pecl-r1.eclass,v 1.3 2005/11/20 01:35:05 chtekk Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/Attic/php-ext-pecl-r1.eclass,v 1.8 2007/09/01 15:58:17 jokey Exp $ |
| 4 | # |
4 | # |
| 5 | # Author: Tal Peer <coredumb@gentoo.org> |
5 | # Author: Tal Peer <coredumb@gentoo.org> |
| 6 | # Maintained by the PHP Herd <php-bugs@gentoo.org> |
6 | # Author: Luca Longinotti <chtekk@gentoo.org> |
|
|
7 | # Author: Jakub Moc <jakub@gentoo.org> |
|
|
8 | |
|
|
9 | # @ECLASS: php-ext-pecl-r1.eclass |
|
|
10 | # @MAINTAINER: |
|
|
11 | # Gentoo PHP team <php-bugs@gentoo.org> |
|
|
12 | # @BLURB: A uniform way of installing PECL extensions |
|
|
13 | # @DESCRIPTION: |
|
|
14 | # This eclass should be used by all dev-php[45]/pecl-* ebuilds |
|
|
15 | # as a uniform way of installing PECL extensions. |
|
|
16 | # For more information about PECL, see http://pecl.php.net/ |
|
|
17 | |
|
|
18 | # @ECLASS-VARIABLE: PHP_EXT_PECL_PKG |
|
|
19 | # @DESCRIPTION: |
|
|
20 | # Set in ebuild before inheriting this eclass if the tarball name |
|
|
21 | # differs from ${PN/pecl-/} so that SRC_URI and HOMEPAGE gets set |
|
|
22 | # correctly by the eclass. |
| 7 | # |
23 | # |
| 8 | # This eclass should be used by all dev-php[4,5]/pecl-* ebuilds, as a uniform way of installing PECL extensions. |
24 | # Setting this variable manually also affects PHP_EXT_NAME and ${S} |
| 9 | # For more information about PECL, see: http://pecl.php.net |
25 | # unless you override those in ebuild. Also see PHP_EXT_PECL_FILENAME |
|
|
26 | # if this is not desired for whatever reason. |
| 10 | |
27 | |
| 11 | [ -z "${PHP_EXT_PECL_PKG}" ] && PHP_EXT_PECL_PKG=${PN/pecl-/} |
28 | # @ECLASS-VARIABLE: PHP_EXT_PECL_FILENAME |
| 12 | PECL_PKG=${PHP_EXT_PECL_PKG} |
29 | # @DESCRIPTION: |
| 13 | PECL_PKG_V=${PECL_PKG}-${PV} |
30 | # Set in ebuild before inheriting this eclass if the tarball name |
|
|
31 | # differs from ${PN/pecl-/} so that SRC_URI gets set correctly by |
|
|
32 | # the eclass. |
|
|
33 | # |
|
|
34 | # Unlike PHP_EXT_PECL_PKG, setting this variable does not affect |
|
|
35 | # HOMEPAGE, PHP_EXT_NAME or ${S}. |
| 14 | |
36 | |
| 15 | [ -z "${PHP_EXT_NAME}" ] && PHP_EXT_NAME=${PECL_PKG} |
37 | # @VARIABLE: DOCS |
|
|
38 | # @DESCRIPTION: |
|
|
39 | # Set in ebuild if you wish to install additional, package-specific documentation. |
| 16 | |
40 | |
|
|
41 | [[ -z "${PHP_EXT_PECL_PKG}" ]] && PHP_EXT_PECL_PKG="${PN/pecl-/}" |
|
|
42 | |
|
|
43 | PECL_PKG="${PHP_EXT_PECL_PKG}" |
|
|
44 | MY_PV="${PV/_/}" |
|
|
45 | PECL_PKG_V="${PECL_PKG}-${MY_PV}" |
|
|
46 | |
|
|
47 | [[ -z "${PHP_EXT_NAME}" ]] && PHP_EXT_NAME="${PECL_PKG}" |
|
|
48 | |
| 17 | inherit php-ext-source-r1 |
49 | inherit php-ext-source-r1 depend.php |
| 18 | |
50 | |
| 19 | EXPORT_FUNCTIONS src_compile src_install |
51 | EXPORT_FUNCTIONS src_compile src_install |
| 20 | |
52 | |
| 21 | # ---begin ebuild configurable settings |
|
|
| 22 | |
|
|
| 23 | # Needs to be set if the filename is other than the package name |
|
|
| 24 | if [ -n "${PHP_EXT_PECL_FILENAME}" ]; then |
53 | if [[ -n "${PHP_EXT_PECL_FILENAME}" ]] ; then |
| 25 | FILENAME="${PHP_EXT_PECL_FILENAME}-${PV}.tgz" |
54 | FILENAME="${PHP_EXT_PECL_FILENAME}-${MY_PV}.tgz" |
| 26 | else |
55 | else |
| 27 | FILENAME="${PECL_PKG_V}.tgz" |
56 | FILENAME="${PECL_PKG_V}.tgz" |
| 28 | fi |
57 | fi |
| 29 | |
|
|
| 30 | # ---end ebuild configurable settings |
|
|
| 31 | |
58 | |
| 32 | SRC_URI="http://pecl.php.net/get/${FILENAME}" |
59 | SRC_URI="http://pecl.php.net/get/${FILENAME}" |
| 33 | HOMEPAGE="http://pecl.php.net/${PECL_PKG}" |
60 | HOMEPAGE="http://pecl.php.net/${PECL_PKG}" |
| 34 | |
61 | |
| 35 | S="${WORKDIR}/${PECL_PKG_V}" |
62 | S="${WORKDIR}/${PECL_PKG_V}" |
| 36 | |
63 | |
|
|
64 | # @FUNCTION: php-ext-pecl-r1_src_compile |
|
|
65 | # @DESCRIPTION: |
|
|
66 | # Takes care of standard compile for PECL packages. |
| 37 | php-ext-pecl-r1_src_compile() { |
67 | php-ext-pecl-r1_src_compile() { |
| 38 | has_php |
68 | has_php |
| 39 | php-ext-source-r1_src_compile |
69 | php-ext-source-r1_src_compile |
| 40 | } |
70 | } |
| 41 | |
71 | |
|
|
72 | # @FUNCTION: php-ext-pecl-r1_src_install |
|
|
73 | # @DESCRIPTION: |
|
|
74 | # Takes care of standard install for PECL packages. |
|
|
75 | # You can also simply add examples to IUSE to automagically install |
|
|
76 | # examples supplied with the package. |
| 42 | php-ext-pecl-r1_src_install() { |
77 | php-ext-pecl-r1_src_install() { |
| 43 | has_php |
78 | has_php |
| 44 | php-ext-source-r1_src_install |
79 | php-ext-source-r1_src_install |
| 45 | |
80 | |
| 46 | # Those two are always present |
81 | # Those two are always present. |
| 47 | dodoc-php "${WORKDIR}/package.xml" CREDITS |
82 | dodoc-php "${WORKDIR}/package.xml" CREDITS |
|
|
83 | |
|
|
84 | for doc in ${DOCS} ; do |
|
|
85 | [[ -s ${doc} ]] && dodoc-php ${doc} |
|
|
86 | done |
|
|
87 | |
|
|
88 | if has examples ${IUSE} && use examples ; then |
|
|
89 | insinto /usr/share/doc/${CATEGORY}/${PF}/examples |
|
|
90 | doins -r examples/* |
|
|
91 | fi |
| 48 | } |
92 | } |