Gentoo Archives: gentoo-commits

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