Gentoo Archives: gentoo-commits

From: "Matti Bickel (mabi)" <mabi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-lang/php: ChangeLog php-5.2.16-r1.ebuild php-5.3.4-r1.ebuild
Date: Wed, 05 Jan 2011 11:23:31
Message-Id: 20110105112316.ACFF320057@flycatcher.gentoo.org
1 mabi 11/01/05 11:23:16
2
3 Modified: ChangeLog
4 Added: php-5.2.16-r1.ebuild php-5.3.4-r1.ebuild
5 Log:
6 now includes new suhosin patch, mhash is usable again, interbase/firebird configure fixed, now includes a warning about stale config dirs
7
8 (Portage version: 2.2.0_alpha11/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.454 dev-lang/php/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/ChangeLog?rev=1.454&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/ChangeLog?rev=1.454&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/ChangeLog?r1=1.453&r2=1.454
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/dev-lang/php/ChangeLog,v
20 retrieving revision 1.453
21 retrieving revision 1.454
22 diff -u -r1.453 -r1.454
23 --- ChangeLog 2 Jan 2011 17:52:04 -0000 1.453
24 +++ ChangeLog 5 Jan 2011 11:23:16 -0000 1.454
25 @@ -1,6 +1,16 @@
26 # ChangeLog for dev-lang/php
27 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/ChangeLog,v 1.453 2011/01/02 17:52:04 klausman Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/ChangeLog,v 1.454 2011/01/05 11:23:16 mabi Exp $
30 +
31 +*php-5.3.4-r1 (05 Jan 2011)
32 +*php-5.2.16-r1 (05 Jan 2011)
33 +
34 + 05 Jan 2011; Matti Bickel <mabi@g.o>
35 + files/eblits/pkg_postinst-v2.eblit, +php-5.2.16-r1.ebuild,
36 + files/eblits/src_configure-v2.eblit, +php-5.3.4-r1.ebuild,
37 + files/eblits/src_prepare-v2.eblit:
38 + now includes new suhosin patch, mhash is usable again, interbase/firebird
39 + configure fixed, now includes a warning about stale config dirs
40
41 02 Jan 2011; Tobias Klausmann <klausman@g.o> php-5.2.16.ebuild:
42 Stable on alpha, bug #340807
43
44
45
46 1.1 dev-lang/php/php-5.2.16-r1.ebuild
47
48 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/php-5.2.16-r1.ebuild?rev=1.1&view=markup
49 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/php-5.2.16-r1.ebuild?rev=1.1&content-type=text/plain
50
51 Index: php-5.2.16-r1.ebuild
52 ===================================================================
53 # Copyright 1999-2011 Gentoo Foundation
54 # Distributed under the terms of the GNU General Public License v2
55 # $Header: /var/cvsroot/gentoo-x86/dev-lang/php/php-5.2.16-r1.ebuild,v 1.1 2011/01/05 11:23:16 mabi Exp $
56
57 EAPI=2
58
59 PHPCONFUTILS_MISSING_DEPS="adabas birdstep db2 dbmaker empress empress-bcs esoob
60 interbase msql oci8 sapdb solid"
61
62 inherit eutils autotools flag-o-matic versionator depend.apache apache-module db-use phpconfutils php-common-r1 libtool
63
64 #SUHOSIN_VERSION="$PV-0.9.7"
65 SUHOSIN_VERSION=""
66 EXPECTED_TEST_FAILURES=""
67
68 KEYWORDS="~amd64 ~arm ~hppa ~x86"
69
70 function php_get_uri ()
71 {
72 case "${1}" in
73 "php-pre")
74 echo "http://downloads.php.net/johannes/${2}"
75 ;;
76 "php")
77 echo "http://www.php.net/distributions/${2}"
78 ;;
79 "suhosin")
80 echo "http://download.suhosin.org/${2}"
81 ;;
82 "gentoo")
83 echo "mirror://gentoo/${2}"
84 ;;
85 *)
86 die "unhandled case in php_get_uri"
87 ;;
88 esac
89 }
90
91 PHP_MV="$(get_major_version)"
92
93 # alias, so we can handle different types of releases (finals, rcs, alphas,
94 # betas, ...) w/o changing the whole ebuild
95 PHP_PV="${PV/_rc/RC}"
96 PHP_RELEASE="php"
97 PHP_P="${PN}-${PHP_PV}"
98 PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
99
100 PHP_PATCHSET="0"
101 PHP_PATCHSET_URI="
102 $(php_get_uri gentoo "php-patchset-${PV}-r${PHP_PATCHSET}.tar.bz2")"
103
104 if [[ ${SUHOSIN_VERSION} == *-gentoo ]]; then
105 # in some cases we use our own suhosin patch (very recent version,
106 # patch conflicts, etc.)
107 SUHOSIN_TYPE="gentoo"
108 else
109 SUHOSIN_TYPE="suhosin"
110 fi
111
112 if [[ -n ${SUHOSIN_VERSION} ]]; then
113 SUHOSIN_PATCH="suhosin-patch-${SUHOSIN_VERSION}.patch"
114 SUHOSIN_URI="$(php_get_uri ${SUHOSIN_TYPE} ${SUHOSIN_PATCH}.gz )"
115 fi
116
117 SRC_URI="
118 ${PHP_SRC_URI}
119 ${PHP_PATCHSET_URI}"
120
121 if [[ -n ${SUHOSIN_VERSION} ]]; then
122 SRC_URI="${SRC_URI}
123 suhosin? ( ${SUHOSIN_URI} )"
124 fi
125
126 DESCRIPTION="The PHP language runtime engine: CLI, CGI, Apache2 and embed SAPIs."
127 HOMEPAGE="http://php.net/"
128 LICENSE="PHP-3"
129
130 # We can build the following SAPIs in the given order
131 SAPIS="cli cgi embed apache2"
132
133 # Gentoo-specific, common features
134 IUSE="kolab"
135
136 # SAPIs and SAPI-specific USE flags (cli SAPI is default on):
137 IUSE="${IUSE}
138 ${SAPIS/cli/+cli}
139 threads force-cgi-redirect discard-path"
140
141 IUSE="${IUSE} adabas bcmath berkdb birdstep bzip2 calendar cdb cjk
142 crypt +ctype curl curlwrappers db2 dbase dbmaker debug doc empress
143 empress-bcs esoob exif fdftk frontbase +filter firebird
144 flatfile ftp gd gd-external gdbm gmp +hash +iconv imap inifile
145 interbase iodbc ipv6 +json kerberos ldap ldap-sasl libedit
146 mcve mhash msql mssql mysql mysqli ncurses nls oci8
147 oci8-instant-client odbc pcntl +pcre pdo pic +posix postgres qdbm
148 readline recode reflection sapdb +session sharedext sharedmem
149 +simplexml snmp soap sockets solid spell spl sqlite ssl suhosin
150 sybase-ct sysvipc tidy +tokenizer truetype unicode wddx
151 xml xmlreader xmlwriter xmlrpc xpm xsl yaz zip zlib"
152
153 # Enable suhosin if available
154 [[ -n $SUHOSIN_VERSION ]] && IUSE="${IUSE} suhosin"
155
156 DEPEND=">=app-admin/eselect-php-0.6.2
157 pcre? ( >=dev-libs/libpcre-7.9[unicode] )
158 adabas? ( >=dev-db/unixODBC-1.8.13 )
159 apache2? ( www-servers/apache[threads=] )
160 berkdb? ( =sys-libs/db-4* )
161 birdstep? ( >=dev-db/unixODBC-1.8.13 )
162 bzip2? ( app-arch/bzip2 )
163 cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
164 cjk? ( !gd? ( !gd-external? (
165 >=media-libs/jpeg-6b
166 media-libs/libpng
167 sys-libs/zlib
168 ) ) )
169 crypt? ( >=dev-libs/libmcrypt-2.4 )
170 curl? ( >=net-misc/curl-7.10.5 )
171 db2? ( >=dev-db/unixODBC-1.8.13 )
172 dbmaker? ( >=dev-db/unixODBC-1.8.13 )
173 empress? ( >=dev-db/unixODBC-1.8.13 )
174 empress-bcs? ( >=dev-db/unixODBC-1.8.13 )
175 esoob? ( >=dev-db/unixODBC-1.8.13 )
176 exif? ( !gd? ( !gd-external? (
177 >=media-libs/jpeg-6b
178 media-libs/libpng
179 sys-libs/zlib
180 ) ) )
181 fdftk? ( app-text/fdftk )
182 firebird? ( dev-db/firebird )
183 gd? ( >=media-libs/jpeg-6b media-libs/libpng sys-libs/zlib )
184 gd-external? ( media-libs/gd )
185 gdbm? ( >=sys-libs/gdbm-1.8.0 )
186 gmp? ( >=dev-libs/gmp-4.1.2 )
187 iconv? ( virtual/libiconv )
188 imap? ( virtual/imap-c-client )
189 iodbc? ( dev-db/libiodbc )
190 kerberos? ( virtual/krb5 )
191 kolab? ( >=net-libs/c-client-2004g-r1 )
192 ldap? ( !oci8? ( >=net-nds/openldap-1.2.11 ) )
193 ldap-sasl? ( !oci8? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) )
194 libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
195 mhash? ( app-crypt/mhash )
196 mssql? ( dev-db/freetds[mssql] )
197 mysql? ( virtual/mysql )
198 mysqli? ( >=virtual/mysql-4.1 )
199 ncurses? ( sys-libs/ncurses )
200 nls? ( sys-devel/gettext )
201 oci8-instant-client? ( dev-db/oracle-instantclient-basic )
202 odbc? ( >=dev-db/unixODBC-1.8.13 )
203 postgres? ( dev-db/postgresql-base )
204 qdbm? ( dev-db/qdbm )
205 readline? ( sys-libs/readline )
206 recode? ( app-text/recode )
207 sapdb? ( >=dev-db/unixODBC-1.8.13 )
208 sharedmem? ( dev-libs/mm )
209 simplexml? ( >=dev-libs/libxml2-2.6.8 )
210 snmp? ( >=net-analyzer/net-snmp-5.2 )
211 soap? ( >=dev-libs/libxml2-2.6.8 )
212 solid? ( >=dev-db/unixODBC-1.8.13 )
213 spell? ( >=app-text/aspell-0.50 )
214 sqlite? ( =dev-db/sqlite-2* pdo? ( =dev-db/sqlite-3* ) )
215 ssl? ( >=dev-libs/openssl-0.9.7 )
216 sybase-ct? ( dev-db/freetds )
217 tidy? ( app-text/htmltidy )
218 truetype? (
219 =media-libs/freetype-2*
220 >=media-libs/t1lib-5.0.0
221 !gd? ( !gd-external? (
222 >=media-libs/jpeg-6b media-libs/libpng sys-libs/zlib ) )
223 )
224 wddx? ( >=dev-libs/libxml2-2.6.8 )
225 xml? ( >=dev-libs/libxml2-2.6.8 )
226 xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
227 xmlreader? ( >=dev-libs/libxml2-2.6.8 )
228 xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
229 xpm? (
230 x11-libs/libXpm
231 >=media-libs/jpeg-6b
232 media-libs/libpng sys-libs/zlib
233 )
234 xsl? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
235 zip? ( sys-libs/zlib )
236 zlib? ( sys-libs/zlib )
237 virtual/mta
238 "
239
240 php="=${CATEGORY}/${PF}"
241 RDEPEND="${DEPEND}
242 truetype? ( || ( $php[gd] $php[gd-external] ) )
243 cjk? ( || ( $php[gd] $php[gd-external] ) )
244 exif? ( || ( $php[gd] $php[gd-external] ) )
245
246 xpm? ( $php[gd] )
247 gd? ( $php[zlib,-gd-external] )
248 gd-external? ( $php[-gd] )
249 simplexml? ( $php[xml] )
250 soap? ( $php[xml] )
251 wddx? ( $php[xml] )
252 xmlrpc? ( || ( $php[xml] $php[iconv] ) )
253 xmlreader? ( $php[xml] )
254 xsl? ( $php[xml] )
255 ldap-sasl? ( $php[ldap,-oci8] )
256 suhosin? ( $php[unicode] )
257 adabas? ( $php[odbc] )
258 birdstep? ( $php[odbc] )
259 dbmaker? ( $php[odbc] )
260 empress-bcs? ( $php[empress] )
261 empress? ( $php[odbc] )
262 esoob? ( $php[odbc] )
263 db2? ( $php[odbc] )
264 sapdb? ( $php[odbc] )
265 solid? ( $php[odbc] )
266 kolab? ( $php[imap] )
267
268 oci8? ( $php[-oci8-instant-client,-ldap-sasl] )
269 oci8-instant-client? ( $php[-oci8] )
270
271 qdbm? ( $php[-gdbm] )
272 readline? ( $php[-libedit] )
273 recode? ( $php[-imap,-mysql,-mysqli] )
274 firebird? ( $php[-interbase] )
275 sharedmem? ( $php[-threads] )
276
277 !cli? ( !cgi? ( !apache2? ( !embed? ( $php[cli] ) ) ) )
278
279 filter? ( !dev-php${PHP_MV}/pecl-filter )
280 json? ( !dev-php${PHP_MV}/pecl-json )
281 zip? ( !dev-php${PHP_MV}/pecl-zip )"
282
283 [[ -n $SUHOSIN_VERSION ]] && DEPEND="${DEPEND} suhosin? ( $php[unicode] )"
284
285 DEPEND="${DEPEND}
286 sys-devel/flex
287 >=sys-devel/m4-1.4.3
288 >=sys-devel/libtool-1.5.18"
289
290 # They are in PDEPEND because we need PHP installed first!
291 PDEPEND="doc? ( app-doc/php-docs )
292 suhosin? ( dev-php${PHP_MV}/suhosin )
293 mcve? ( dev-php${PHP_MV}/pecl-mcve )
294 yaz? ( dev-php${PHP_MV}/pecl-yaz )"
295
296 [[ -n $SUHOSIN_VERSION ]] && PDEPEND="${PDEPEND} suhosin? ( dev-php${PHP_MV}/suhosin )"
297
298 # Portage doesn't support setting PROVIDE based on the USE flags that
299 # have been enabled, so we have to PROVIDE everything for now and hope
300 # for the best
301 PROVIDE="virtual/php"
302
303 SLOT="$(get_version_component_range 1-2)"
304 S="${WORKDIR}/${PHP_P}"
305
306 # Allow users to install production version if they want to
307 # PHP 5.2 has other filenames for prod and dev versions
308
309 case "${PHP_INI_VERSION}" in
310 production)
311 PHP_INI_UPSTREAM="php.ini-recommended"
312 ;;
313 development)
314 PHP_INI_UPSTREAM="php.ini-dist"
315 ;;
316 *)
317 PHP_INI_VERSION="development"
318 PHP_INI_UPSTREAM="php.ini-dist"
319 ;;
320 esac
321
322 PHP_INI_FILE="php.ini"
323
324 want_apache
325
326 # eblit-core
327 # Usage: <function> [version] [eval]
328 # Main eblit engine
329 eblit-core() {
330 [[ -z $FILESDIR ]] && FILESDIR="$(dirname $EBUILD)/files"
331 local e v func=$1 ver=$2 eval_=$3
332 for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
333 e="${FILESDIR}/eblits/${func}${v}.eblit"
334 if [[ -e ${e} ]] ; then
335 . "${e}"
336 [[ ${eval_} == 1 ]] && eval "${func}() { eblit-run ${func} ${ver} ; }"
337 return 0
338 fi
339 done
340 return 1
341 }
342
343 # eblit-include
344 # Usage: [--skip] <function> [version]
345 # Includes an "eblit" -- a chunk of common code among ebuilds in a given
346 # package so that its functions can be sourced and utilized within the
347 # ebuild.
348 eblit-include() {
349 local skipable=false r=0
350 [[ $1 == "--skip" ]] && skipable=true && shift
351 [[ $1 == pkg_* ]] && skipable=true
352
353 [[ -z $1 ]] && die "Usage: eblit-include <function> [version]"
354 eblit-core $1 $2
355 r="$?"
356 ${skipable} && return 0
357 [[ "$r" -gt "0" ]] && die "Could not locate requested eblit '$1' in ${FILESDIR}/eblits/"
358 }
359
360 # eblit-run-maybe
361 # Usage: <function>
362 # Runs a function if it is defined in an eblit
363 eblit-run-maybe() {
364 [[ $(type -t "$@") == "function" ]] && "$@"
365 }
366
367 # eblit-run
368 # Usage: <function> [version]
369 # Runs a function defined in an eblit
370 eblit-run() {
371 eblit-include --skip common "${*:2}"
372 eblit-include "$@"
373 eblit-run-maybe eblit-$1-pre
374 eblit-${PN}-$1
375 eblit-run-maybe eblit-$1-post
376 }
377
378 # eblit-pkg
379 # Usage: <phase> [version]
380 # Includes the given functions AND evals them so they're included in the binpkgs
381 eblit-pkg() {
382 [[ -z $1 ]] && die "Usage: eblit-pkg <phase> [version]"
383 eblit-core $1 $2 1
384 }
385
386 eblit-pkg pkg_setup v2
387
388 src_prepare() { eblit-run src_prepare v2 ; }
389 src_configure() { eblit-run src_configure v521 ; }
390 src_compile() { eblit-run src_compile v1 ; }
391 src_install() { eblit-run src_install v2 ; }
392 src_test() { eblit-run src_test v1 ; }
393 pkg_postinst() { eblit-run pkg_postinst v2 ; }
394
395
396
397 1.1 dev-lang/php/php-5.3.4-r1.ebuild
398
399 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/php-5.3.4-r1.ebuild?rev=1.1&view=markup
400 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lang/php/php-5.3.4-r1.ebuild?rev=1.1&content-type=text/plain
401
402 Index: php-5.3.4-r1.ebuild
403 ===================================================================
404 # Copyright 1999-2011 Gentoo Foundation
405 # Distributed under the terms of the GNU General Public License v2
406 # $Header: /var/cvsroot/gentoo-x86/dev-lang/php/php-5.3.4-r1.ebuild,v 1.1 2011/01/05 11:23:16 mabi Exp $
407
408 EAPI=2
409
410 PHPCONFUTILS_MISSING_DEPS="adabas birdstep db2 dbmaker empress empress-bcs esoob interbase oci8 sapdb solid"
411
412 inherit eutils autotools flag-o-matic versionator depend.apache apache-module db-use phpconfutils php-common-r1 libtool
413
414 SUHOSIN_VERSION="${PV}-0.9.10"
415 FPM_VERSION="builtin"
416 EXPECTED_TEST_FAILURES=""
417
418 KEYWORDS="~amd64 ~arm ~hppa ~x86"
419
420 function php_get_uri ()
421 {
422 case "${1}" in
423 "php-pre")
424 echo "http://downloads.php.net/johannes/${2}"
425 ;;
426 "php")
427 echo "http://www.php.net/distributions/${2}"
428 ;;
429 "suhosin")
430 echo "http://download.suhosin.org/${2}"
431 ;;
432 "olemarkus")
433 echo "http://olemarkus.org/~olemarkus/gentoo/${2}"
434 ;;
435 "gentoo")
436 echo "mirror://gentoo/${2}"
437 ;;
438 *)
439 die "unhandled case in php_get_uri"
440 ;;
441 esac
442 }
443
444 PHP_MV="$(get_major_version)"
445
446 # alias, so we can handle different types of releases (finals, rcs, alphas,
447 # betas, ...) w/o changing the whole ebuild
448 PHP_PV="${PV/_rc/RC}"
449 PHP_RELEASE="php"
450 PHP_P="${PN}-${PHP_PV}"
451
452 PHP_PATCHSET_LOC="gentoo"
453
454 PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")"
455
456 PHP_PATCHSET="0"
457 PHP_PATCHSET_URI="
458 $(php_get_uri "${PHP_PATCHSET_LOC}" "php-patchset-${PV}-r${PHP_PATCHSET}.tar.bz2")"
459
460 if [[ ${SUHOSIN_VERSION} == *-gentoo ]]; then
461 # in some cases we use our own suhosin patch (very recent version,
462 # patch conflicts, etc.)
463 SUHOSIN_TYPE="gentoo"
464 else
465 SUHOSIN_TYPE="suhosin"
466 fi
467
468 if [[ -n ${SUHOSIN_VERSION} ]]; then
469 SUHOSIN_PATCH="suhosin-patch-${SUHOSIN_VERSION}.patch";
470 SUHOSIN_URI="$(php_get_uri ${SUHOSIN_TYPE} ${SUHOSIN_PATCH}.gz )"
471 fi
472
473 SRC_URI="
474 ${PHP_SRC_URI}
475 ${PHP_PATCHSET_URI}"
476
477 if [[ -n ${SUHOSIN_VERSION} ]]; then
478 SRC_URI="${SRC_URI}
479 suhosin? ( ${SUHOSIN_URI} )"
480 fi
481
482 DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2 and embed SAPIs."
483 HOMEPAGE="http://php.net/"
484 LICENSE="PHP-3"
485
486 SLOT="$(get_version_component_range 1-2)"
487 S="${WORKDIR}/${PHP_P}"
488
489 # We can build the following SAPIs in the given order
490 SAPIS="cli cgi fpm embed apache2"
491
492 # Gentoo-specific, common features
493 IUSE="kolab"
494
495 # SAPIs and SAPI-specific USE flags (cli SAPI is default on):
496 IUSE="${IUSE}
497 ${SAPIS/cli/+cli}
498 threads"
499
500 IUSE="${IUSE} adabas bcmath berkdb birdstep bzip2 calendar cdb cjk
501 crypt +ctype curl curlwrappers db2 dbmaker debug doc empress
502 empress-bcs enchant esoob exif frontbase +fileinfo +filter firebird
503 flatfile ftp gd gd-external gdbm gmp +hash +iconv imap inifile
504 interbase intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit mhash
505 mssql mysql mysqlnd mysqli nls oci8
506 oci8-instant-client odbc pcntl pdo +phar pic +posix postgres qdbm
507 readline recode sapdb +session sharedext sharedmem
508 +simplexml snmp soap sockets solid spell sqlite sqlite3 ssl
509 sybase-ct sysvipc tidy +tokenizer truetype unicode wddx
510 xml xmlreader xmlwriter xmlrpc xpm xsl zip zlib"
511
512 # Enable suhosin if available
513 [[ -n $SUHOSIN_VERSION ]] && IUSE="${IUSE} suhosin"
514
515 DEPEND="!dev-lang/php:5
516 >=app-admin/eselect-php-0.6.2
517 >=dev-libs/libpcre-7.9[unicode]
518 adabas? ( >=dev-db/unixODBC-1.8.13 )
519 apache2? ( www-servers/apache[threads=] )
520 berkdb? ( =sys-libs/db-4* )
521 birdstep? ( >=dev-db/unixODBC-1.8.13 )
522 bzip2? ( app-arch/bzip2 )
523 cdb? ( || ( dev-db/cdb dev-db/tinycdb ) )
524 cjk? ( !gd? ( !gd-external? (
525 virtual/jpeg
526 media-libs/libpng
527 sys-libs/zlib
528 ) ) )
529 crypt? ( >=dev-libs/libmcrypt-2.4 )
530 curl? ( >=net-misc/curl-7.10.5 )
531 db2? ( >=dev-db/unixODBC-1.8.13 )
532 dbmaker? ( >=dev-db/unixODBC-1.8.13 )
533 empress? ( >=dev-db/unixODBC-1.8.13 )
534 empress-bcs? ( >=dev-db/unixODBC-1.8.13 )
535 enchant? ( app-text/enchant )
536 esoob? ( >=dev-db/unixODBC-1.8.13 )
537 exif? ( !gd? ( !gd-external? (
538 virtual/jpeg
539 media-libs/libpng
540 sys-libs/zlib
541 ) ) )
542 firebird? ( dev-db/firebird )
543 fpm? ( >=dev-libs/libevent-1.4.12 )
544 gd? ( virtual/jpeg media-libs/libpng sys-libs/zlib )
545 gd-external? ( media-libs/gd )
546 gdbm? ( >=sys-libs/gdbm-1.8.0 )
547 gmp? ( >=dev-libs/gmp-4.1.2 )
548 iconv? ( virtual/libiconv )
549 imap? ( virtual/imap-c-client )
550 intl? ( dev-libs/icu )
551 iodbc? ( dev-db/libiodbc )
552 kerberos? ( virtual/krb5 )
553 kolab? ( >=net-libs/c-client-2004g-r1 )
554 ldap? ( !oci8? ( >=net-nds/openldap-1.2.11 ) )
555 ldap-sasl? ( !oci8? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) )
556 libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) )
557 mssql? ( dev-db/freetds[mssql] )
558 !mysqlnd? (
559 mysql? ( virtual/mysql )
560 mysqli? ( >=virtual/mysql-4.1 )
561 )
562 nls? ( sys-devel/gettext )
563 oci8-instant-client? ( dev-db/oracle-instantclient-basic )
564 odbc? ( >=dev-db/unixODBC-1.8.13 )
565 postgres? ( dev-db/postgresql-base )
566 qdbm? ( dev-db/qdbm )
567 readline? ( sys-libs/readline )
568 recode? ( app-text/recode )
569 sapdb? ( >=dev-db/unixODBC-1.8.13 )
570 sharedmem? ( dev-libs/mm )
571 simplexml? ( >=dev-libs/libxml2-2.6.8 )
572 snmp? ( >=net-analyzer/net-snmp-5.2 )
573 soap? ( >=dev-libs/libxml2-2.6.8 )
574 solid? ( >=dev-db/unixODBC-1.8.13 )
575 spell? ( >=app-text/aspell-0.50 )
576 sqlite? ( =dev-db/sqlite-2* pdo? ( =dev-db/sqlite-3* ) )
577 sqlite3? ( =dev-db/sqlite-3* )
578 ssl? ( >=dev-libs/openssl-0.9.7 )
579 sybase-ct? ( dev-db/freetds )
580 tidy? ( app-text/htmltidy )
581 truetype? (
582 =media-libs/freetype-2*
583 >=media-libs/t1lib-5.0.0
584 !gd? ( !gd-external? (
585 virtual/jpeg media-libs/libpng sys-libs/zlib ) )
586 )
587 unicode? ( dev-libs/oniguruma )
588 wddx? ( >=dev-libs/libxml2-2.6.8 )
589 xml? ( >=dev-libs/libxml2-2.6.8 )
590 xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv )
591 xmlreader? ( >=dev-libs/libxml2-2.6.8 )
592 xmlwriter? ( >=dev-libs/libxml2-2.6.8 )
593 xpm? (
594 x11-libs/libXpm
595 virtual/jpeg
596 media-libs/libpng sys-libs/zlib
597 )
598 xsl? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 )
599 zip? ( sys-libs/zlib )
600 zlib? ( sys-libs/zlib )
601 virtual/mta
602 "
603
604 php="=${CATEGORY}/${PF}"
605 RDEPEND="${DEPEND}
606 truetype? ( || ( $php[gd] $php[gd-external] ) )
607 cjk? ( || ( $php[gd] $php[gd-external] ) )
608 exif? ( || ( $php[gd] $php[gd-external] ) )
609
610 xpm? ( $php[gd] )
611 gd? ( $php[zlib,-gd-external] )
612 gd-external? ( $php[-gd] )
613 simplexml? ( $php[xml] )
614 soap? ( $php[xml] )
615 wddx? ( $php[xml] )
616 xmlrpc? ( || ( $php[xml] $php[iconv] ) )
617 xmlreader? ( $php[xml] )
618 xsl? ( $php[xml] )
619 ldap-sasl? ( $php[ldap,-oci8] )
620 adabas? ( $php[odbc] )
621 birdstep? ( $php[odbc] )
622 dbmaker? ( $php[odbc] )
623 empress-bcs? ( $php[empress] )
624 empress? ( $php[odbc] )
625 esoob? ( $php[odbc] )
626 db2? ( $php[odbc] )
627 sapdb? ( $php[odbc] )
628 solid? ( $php[odbc] )
629 kolab? ( $php[imap] )
630 mhash? ( $php[hash] )
631 phar? ( $php[hash] )
632 mysqlnd? ( || (
633 $php[mysql]
634 $php[mysqli]
635 $php[pdo]
636 ) )
637
638 oci8? ( $php[-oci8-instant-client,-ldap-sasl] )
639 oci8-instant-client? ( $php[-oci8] )
640
641 qdbm? ( $php[-gdbm] )
642 readline? ( $php[-libedit] )
643 recode? ( $php[-imap,-mysql,-mysqli] )
644 firebird? ( $php[-interbase] )
645 sharedmem? ( $php[-threads] )
646
647 !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( $php[cli] ) ) ) ) )
648
649 enchant? ( !dev-php${PHP_MV}/pecl-enchant )
650 fileinfo? ( !<dev-php${PHP_MV}/pecl-fileinfo-1.0.4-r2 )
651 filter? ( !dev-php${PHP_MV}/pecl-filter )
652 json? ( !dev-php${PHP_MV}/pecl-json )
653 phar? ( !dev-php${PHP_MV}/pecl-phar )
654 zip? ( !dev-php${PHP_MV}/pecl-zip )"
655
656 [[ -n $SUHOSIN_VERSION ]] && DEPEND="${DEPEND} suhosin? (
657 =${CATEGORY}/${PN}-${SLOT}*[unicode] )"
658
659 DEPEND="${DEPEND}
660 sys-devel/flex
661 >=sys-devel/m4-1.4.3
662 >=sys-devel/libtool-1.5.18"
663
664 # They are in PDEPEND because we need PHP installed first!
665 PDEPEND="doc? ( app-doc/php-docs )"
666
667 [[ -n $SUHOSIN_VERSION ]] && PDEPEND="${PDEPEND} suhosin? ( dev-php${PHP_MV}/suhosin )"
668
669 # Portage doesn't support setting PROVIDE based on the USE flags that
670 # have been enabled, so we have to PROVIDE everything for now and hope
671 # for the best
672 PROVIDE="virtual/php"
673
674 # Allow users to install production version if they want to
675
676 case "${PHP_INI_VERSION}" in
677 production|development)
678 ;;
679 *)
680 PHP_INI_VERSION="development"
681 ;;
682 esac
683
684 PHP_INI_UPSTREAM="php.ini-${PHP_INI_VERSION}"
685 PHP_INI_FILE="php.ini"
686
687 want_apache
688
689 # eblit-core
690 # Usage: <function> [version] [eval]
691 # Main eblit engine
692 eblit-core() {
693 [[ -z $FILESDIR ]] && FILESDIR="$(dirname $EBUILD)/files"
694 local e v func=$1 ver=$2 eval_=$3
695 for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do
696 e="${FILESDIR}/eblits/${func}${v}.eblit"
697 if [[ -e ${e} ]] ; then
698 . "${e}"
699 [[ ${eval_} == 1 ]] && eval "${func}() { eblit-run ${func} ${ver} ; }"
700 return 0
701 fi
702 done
703 return 1
704 }
705
706 # eblit-include
707 # Usage: [--skip] <function> [version]
708 # Includes an "eblit" -- a chunk of common code among ebuilds in a given
709 # package so that its functions can be sourced and utilized within the
710 # ebuild.
711 eblit-include() {
712 local skipable=false r=0
713 [[ $1 == "--skip" ]] && skipable=true && shift
714 [[ $1 == pkg_* ]] && skipable=true
715
716 [[ -z $1 ]] && die "Usage: eblit-include <function> [version]"
717 eblit-core $1 $2
718 r="$?"
719 ${skipable} && return 0
720 [[ "$r" -gt "0" ]] && die "Could not locate requested eblit '$1' in ${FILESDIR}/eblits/"
721 }
722
723 # eblit-run-maybe
724 # Usage: <function>
725 # Runs a function if it is defined in an eblit
726 eblit-run-maybe() {
727 [[ $(type -t "$@") == "function" ]] && "$@"
728 }
729
730 # eblit-run
731 # Usage: <function> [version]
732 # Runs a function defined in an eblit
733 eblit-run() {
734 eblit-include --skip common "${*:2}"
735 eblit-include "$@"
736 eblit-run-maybe eblit-$1-pre
737 eblit-${PN}-$1
738 eblit-run-maybe eblit-$1-post
739 }
740
741 # eblit-pkg
742 # Usage: <phase> [version]
743 # Includes the given functions AND evals them so they're included in the binpkgs
744 eblit-pkg() {
745 [[ -z $1 ]] && die "Usage: eblit-pkg <phase> [version]"
746 eblit-core $1 $2 1
747 }
748
749 eblit-pkg pkg_setup v2
750
751 src_prepare() { eblit-run src_prepare v2 ; }
752 src_configure() { eblit-run src_configure v2 ; }
753 src_compile() { eblit-run src_compile v1 ; }
754 src_install() { eblit-run src_install v2 ; }
755 src_test() { eblit-run src_test v1 ; }
756 pkg_postinst() { eblit-run pkg_postinst v2 ; }