diff options
author | Ole Markus With <olemarkus@gentoo.org> | 2011-05-01 20:15:53 +0000 |
---|---|---|
committer | Ole Markus With <olemarkus@gentoo.org> | 2011-05-01 20:15:53 +0000 |
commit | 19a2fd7293f5dc32faf2e23e40d0cd484c3c07f8 (patch) | |
tree | 557c015ad17f8258ff9f2718aa4e4ec73b80ce30 /dev-lang | |
parent | Mask binutils-2.21.51 on FreeBSD, as long as #347931 isn't fully fixed (diff) | |
download | historical-19a2fd7293f5dc32faf2e23e40d0cd484c3c07f8.tar.gz historical-19a2fd7293f5dc32faf2e23e40d0cd484c3c07f8.tar.bz2 historical-19a2fd7293f5dc32faf2e23e40d0cd484c3c07f8.zip |
Added SVN snapshot ebuild
Package-Manager: portage-2.1.9.46/cvs/Linux x86_64
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/php/ChangeLog | 8 | ||||
-rw-r--r-- | dev-lang/php/Manifest | 20 | ||||
-rw-r--r-- | dev-lang/php/files/eblits/src_prepare-snapshots.eblit | 73 | ||||
-rw-r--r-- | dev-lang/php/php-5.4.0_pre201104301030.ebuild | 354 |
4 files changed, 446 insertions, 9 deletions
diff --git a/dev-lang/php/ChangeLog b/dev-lang/php/ChangeLog index ed72f0ad8c37..7fd61e1e94f0 100644 --- a/dev-lang/php/ChangeLog +++ b/dev-lang/php/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-lang/php # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/ChangeLog,v 1.487 2011/04/19 16:44:56 olemarkus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/ChangeLog,v 1.488 2011/05/01 20:15:53 olemarkus Exp $ + +*php-5.4.0_pre201104301030 (01 May 2011) + + 01 May 2011; <olemarkus@gentoo.org> +php-5.4.0_pre201104301030.ebuild, + +files/eblits/src_prepare-snapshots.eblit: + Added SVN snapshot ebuild *php-5.3.6-r1 (19 Apr 2011) diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 22a2484654a5..fcd02c1a3885 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -19,6 +19,7 @@ AUX eblits/src_configure-v52.eblit 11017 RMD160 4a804e4b021d2454c81c33644a744b72 AUX eblits/src_configure-v521.eblit 10844 RMD160 90513f59b5f17d680004d3e74581d9eedc8af490 SHA1 a369e2cf7816799f7e2bead8b6eccc2115d0ecdc SHA256 ad875ca45e9ad975c0d7a3cbedc27c5035aa048d7aa935221a15e47cbca63c3d AUX eblits/src_install-v1.eblit 5146 RMD160 24127823735939101dcb00585a5ed69adedffed2 SHA1 36ab2648abaae12d1a86c97db82cd2ea86497b2d SHA256 3bddd375764b0ed00cb30e65036c67f96c56ea0ebfd70bcdc61b7465d1500d36 AUX eblits/src_install-v2.eblit 4986 RMD160 b5f409b505212d20058c6ba9e817a67878bef20e SHA1 31253a50f89f7a082bae99a3f47e435610cd1c69 SHA256 22a135acec8b7cc0f5521f2354617471e245b2300e99b39768e8785dee10c4ee +AUX eblits/src_prepare-snapshots.eblit 2659 RMD160 150885679ba149a3cf5cdf49724e0595c6172203 SHA1 1f31ead076439b236bd6385825e470e915c684be SHA256 7605f33a16f084d36458bcf47f1b5dc2973131267de5f5b1fdd9eab8879f82ca AUX eblits/src_prepare-v1.eblit 2616 RMD160 ccff64d09cc90ada1ea5d1311457cf9a05f12f8e SHA1 7db40d0ca7ef01e5b61962f261511803f768f1bc SHA256 915b9755a37f7670f6e436fe5072dae8f5e6b437ccdfbff835e26bb2f9d22b1e AUX eblits/src_prepare-v2.eblit 2604 RMD160 379dbca3e2ae8c1f09f608220ec9c98d099cb792 SHA1 42afae4e07633535ecea49817f5badd559f10ff1 SHA256 fe7534260fb81a012b8021b5d555756ce8733ad192bf51cedd94f12963811790 AUX eblits/src_prepare-v3.eblit 2649 RMD160 5f01f42eef528535866c3b5ade0ded592d1ffd48 SHA1 1bdc640ab548f4e8b78acc305fdd6ceab225daf8 SHA256 7ea3a5351fabeb050161e64c09b98ff945bbdb8b4d1a7fb83d6b4645f277b486 @@ -42,6 +43,8 @@ DIST php-patchset-5.3.3-r2.tar.bz2 9796 RMD160 6620cae9768e6a2c415ad6ed1fe9d5665 DIST php-patchset-5.3.5-r0.tar.bz2 9479 RMD160 e8b90a8f064d3053a5fe233c758d34bedc450b25 SHA1 e8158b6741017c306f7f092a7592ee7007169df9 SHA256 29097986de2f19713c2aa530bcc1cd873f77aeacacba5405f325c460cfd46219 DIST php-patchset-5.3.5-r1.tar.bz2 10272 RMD160 79ef53cdea8099eba93bfdf9dfe7af989d5f9146 SHA1 8a7ff781fcd37ce4591aeff619681f7ff5af57c6 SHA256 1cdc2b5eef4efdef154dc8cc60faac0566f72617de7432636f9053e412d99a46 DIST php-patchset-5.3.6-r0.tar.bz2 10033 RMD160 352290d674cfc3bb76c4ee44b90e3ef7a231c405 SHA1 cd9e5ae79595adf7ca42d6e2fe81dd275a8b7575 SHA256 544aae373fcff288bf22706a30f06da6bcc29695d0014dc7768585197c80aaeb +DIST php-patchset-5.4.0_pre201104301030-r0.tar.bz2 9532 RMD160 8ef9cafc7652db45aef4421bafd51928f07dabff SHA1 44d7720208895b00a713e0f9ee777ea40a8fcf8a SHA256 3c348d8e09545beb33971c018ff948f4534766349821a477bd28c1b088b09b65 +DIST php-trunk-201104301030.tar.bz2 10808277 RMD160 0f5fdf9eae436c3fba1758035d512cdde61a58e2 SHA1 ce715c3f886580cb16fa53a9479cdabafa7b7fe7 SHA256 4e08eaeda27d9d502b1f303f8fd182d3ce3d0da2150cc3d0bcea0de12f86bfa3 DIST suhosin-patch-5.2.14-0.9.7.patch.gz 23057 RMD160 bc7790cd36dc4101322684b754db3ca2d4385ba6 SHA1 0a12d3589f9c26dc7d6b6452ef7987b2e6527a30 SHA256 bd03ade44673f7e6fa116d746350f16c60be7170d6c41816a2d51faaeb5a31ae DIST suhosin-patch-5.2.16-0.9.7.patch.gz 23069 RMD160 b28b70faf136b3e04c5b483da0f4c2279378f43a SHA1 fec10b2b81582d06bb0d0a96ea55c525afc8ab29 SHA256 aae115a318d80b3f32cedf876e7a8e4b932febb1b0c743c0b398003ebe122f91 DIST suhosin-patch-5.3.3-0.9.10.patch.gz 41298 RMD160 8dcd8b51ea0357b6cc51e70e495e18f341c62f7c SHA1 76675242cfdeff763767900213346af622002490 SHA256 f48489ff7d3fd3fc30429f7349f181c84caf2e03e672eb2d2b55b46adf6f602c @@ -53,16 +56,17 @@ EBUILD php-5.3.5-r1.ebuild 9762 RMD160 f39618b8a72db38f6500ba49afe8db963817b135 EBUILD php-5.3.5.ebuild 9712 RMD160 ea2e619e8ed6e055ea3fbc131008657c39c2eab7 SHA1 3450722d844e367dd017e72e64d23e365eba9cf8 SHA256 58a8483120fb62019d2bfbf537db60ea83ab9ed862cedf6b7c516518afe7d46e EBUILD php-5.3.6-r1.ebuild 9538 RMD160 e7365ce71f94f06b5732d497b9fc94b93f12945d SHA1 ccdd5c0fdcd169b4819d924ff0f5f5a6caaf934b SHA256 97ffbe697c6d607b748b89044baed1b4a91fc7a09790d0abfce6acc47ca45703 EBUILD php-5.3.6.ebuild 9794 RMD160 9be2d19b4cfc93aa0f6920958f7868198b254427 SHA1 ab4f7dfd77ce61441901e4ae6834c6563a1bf96c SHA256 f97847b13e3f5a09f686006401f816ba823850541da4d2ab58a9c7289651809e -MISC ChangeLog 82450 RMD160 5e23be77ba59162d1cfef74ac4613668dce548fd SHA1 e26cfd914e7713226c01b5ae77453091e1500d9d SHA256 33268fd8a7ff4469b3932fe45da7f3d74c8152c969751773d50f4874375e4a90 +EBUILD php-5.4.0_pre201104301030.ebuild 9587 RMD160 1ff192a7a6e2e4a33609d0dce4a7ca759a2ceff6 SHA1 f5842822da14b0a722337f783af8a632125ae34b SHA256 ed9c00e6c882e7b7bdd37daaf50798b036934a533dadfd4511007867eae6b32f +MISC ChangeLog 82639 RMD160 5e1328d994c0f46e546a7e21928b58830da83f06 SHA1 7ba391b01146f095fc4540eb499c74040b1c4212 SHA256 9be42759eea319f8517af4b8b4656f7443bb39ec6d84f267289e9edde3530f55 MISC metadata.xml 2212 RMD160 e26ea7f6831acb23854f018fe6d00c213bf62e5a SHA1 25500969d6ef6c1918a8e6abbb04e0553806dee2 SHA256 6fdbba214ce15fae4a1e2eb086586008377fff85e67e38b1e2232a9745432674 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.16 (GNU/Linux) -iQEcBAEBAgAGBQJNrbxbAAoJEGurSuXEqSv1HsAH/ikSU0rUb8UvugTue2hygRtP -KxoHfZrUkI0lgSjPbrEAb4sJp6SdTz0t6MSUxdGO2HvsNK6ivXCjFB6ZVjvC1C0e -NQeNZ1+kvrg2+zpukaOKdqQEdxFnZ6emuctogFc8EXps3UjuqLmtU5YD2Zhyg4wV -5d/tgyzDR2XM6lPm1rd7xkeC8yV+AreqZpcxWRb6SEVJOhVCyxKPQP8F6LkOBiBd -7nPktEnetzbyVFvnUU9oj3gdwKzvj1MmJRV/OJKFMCiQBSPnuh2Cd6YcM6Ngw7Wj -I3Jv0GgXrG+2Yw/ovpC8HBELytkFmA91pJF5/pEiycnXHc+J47m7rCBOkqxb9ZE= -=WWiT +iQEcBAEBAgAGBQJNvb90AAoJEGurSuXEqSv18KYH/1FaAdqG/GEV0cHd1gJUexST +mHEZ3HLjgpGVQWkqLw4aWsmF2ZyUZ+A4DUg/xb47J8STN/OTmHDgjVAep+dHKe95 +NpeR2NuKU/HQMybM4EufmuSFk5DvowXCaU5DJaiDeOnEJDHc3wdXDANDyKSvDEur +RSg4lLTMoQYF70b7l/ck05RlLqHEwbW91qWLAgykVcRHrOdg4AZoTew59dhnG9Si +oa0PBX10F+iHNPx1uUGCWWDydCcpK7qO3POKyhubbYmJartFTqRO55waaKYVav/h +bmKOBpb0uWmynvxBcuqHBAD2UqVfTEd3qxulX9pgsrmcupqCfQI7c08+dTxl5a4= +=MJuc -----END PGP SIGNATURE----- diff --git a/dev-lang/php/files/eblits/src_prepare-snapshots.eblit b/dev-lang/php/files/eblits/src_prepare-snapshots.eblit new file mode 100644 index 000000000000..df238070d916 --- /dev/null +++ b/dev-lang/php/files/eblits/src_prepare-snapshots.eblit @@ -0,0 +1,73 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/files/eblits/src_prepare-snapshots.eblit,v 1.1 2011/05/01 20:15:52 olemarkus Exp $ + +eblit-php-src_prepare() { + # USE=sharedmem (session/mod_mm to be exact) tries to mmap() this path + # ([empty session.save_path]/session_mm_[sapi][gid].sem) + # there is no easy way to circumvent that, all php calls during + # install use -n, so no php.ini file will be used. + # As such, this is the easiest way to get around + addpredict /session_mm_cli250.sem + addpredict /session_mm_cli0.sem + + # kolab support (support for imap annotations) + use kolab && epatch "${WORKDIR}/${PV}/opt/imap-kolab-annotations.patch" + + # Change PHP branding + sed -re "s|^(PHP_EXTRA_VERSION=\").*(\")|\1${PHP_EXTRA_BRANDING}-pl${PR/r/}-gentoo\2|g" \ + -i configure.in || die "Unable to change PHP branding" + + # Apply generic PHP patches + EPATCH_SOURCE="${WORKDIR}/patches/generic" EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + EPATCH_MULTI_MSG="Applying generic patches and fixes from upstream..." epatch + + # Patch PHP to show Gentoo as the server platform + sed -e 's/PHP_UNAME=`uname -a | xargs`/PHP_UNAME=`uname -s -n -r -v | xargs`/g' \ + -i configure.in || die "Failed to fix server platform name" + + # Prevent PHP from activating the Apache config, + # as we will do that ourselves + sed -i \ + -e "s,-i -a -n php${PHP_MV},-i -n php${PHP_MV},g" \ + -e "s,-i -A -n php${PHP_MV},-i -n php${PHP_MV},g" \ + configure sapi/apache2filter/config.m4 sapi/apache2handler/config.m4 + + # Patch PHP to support heimdal instead of mit-krb5 + if has_version "app-crypt/heimdal" ; then + sed -e 's|gssapi_krb5|gssapi|g' -i acinclude.m4 \ + || die "Failed to fix heimdal libname" + sed -e 's|PHP_ADD_LIBRARY(k5crypto, 1, $1)||g' -i acinclude.m4 \ + || die "Failed to fix heimdal crypt library reference" + fi + + # Suhosin support + if [[ -n $SUHOSIN_VERSION ]] ; then + if use suhosin ; then + epatch "${WORKDIR}/${SUHOSIN_PATCH}" + fi + else + ewarn "Please note that this version of PHP does not yet come with a suhosin patch" + fi + + #Add user patches #357637 + epatch_user + + # rebuild the whole autotools stuff as we are heavily patching it + # (suhosin, fastbuild, ...) + + # eaclocal doesn't accept --force, so we try to force re-generation + # this way + rm aclocal.m4 + + # work around divert() issues with newer autoconf, bug #281697 + if has_version '>=sys-devel/autoconf-2.64' ; then + sed -i -r \ + -e 's:^((m4_)?divert)[(]([0-9]*)[)]:\1(600\3):' \ + $(grep -l divert $(find . -name '*.m4') configure.in) || die + fi + eautoreconf --force -W no-cross +} + + diff --git a/dev-lang/php/php-5.4.0_pre201104301030.ebuild b/dev-lang/php/php-5.4.0_pre201104301030.ebuild new file mode 100644 index 000000000000..cc44f1f93021 --- /dev/null +++ b/dev-lang/php/php-5.4.0_pre201104301030.ebuild @@ -0,0 +1,354 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/php/php-5.4.0_pre201104301030.ebuild,v 1.1 2011/05/01 20:15:53 olemarkus Exp $ + +EAPI=4 + +PHPCONFUTILS_MISSING_DEPS="adabas birdstep db2 dbmaker empress empress-bcs esoob interbase oci8 sapdb solid" + +inherit eutils autotools flag-o-matic versionator depend.apache apache-module db-use phpconfutils php-common-r1 libtool + +SUHOSIN_VERSION="" +FPM_VERSION="builtin" +EXPECTED_TEST_FAILURES="" + +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" + +function php_get_uri () +{ + case "${1}" in + "php-pre") + echo "http://downloads.php.net/johannes/${2}" + ;; + "php") + echo "http://www.php.net/distributions/${2}" + ;; + "suhosin") + echo "http://download.suhosin.org/${2}" + ;; + "olemarkus") + echo "http://olemarkus.org/~olemarkus/gentoo/${2}" + ;; + "gentoo") + echo "mirror://gentoo/${2}" + ;; + *) + die "unhandled case in php_get_uri" + ;; + esac +} + +PHP_MV="$(get_major_version)" + +# alias, so we can handle different types of releases (finals, rcs, alphas, +# betas, ...) w/o changing the whole ebuild +PHP_PV="$(get_version_component_range 4 )" +PHP_PV="${PHP_PV/pre/trunk-}" + +PHP_RELEASE="olemarkus" +PHP_P="${PN}-${PHP_PV}" + +PHP_PATCHSET_LOC="olemarkus" + +PHP_SRC_URI="$(php_get_uri "${PHP_RELEASE}" "${PHP_P}.tar.bz2")" + +PHP_PATCHSET="0" +PHP_PATCHSET_URI=" + $(php_get_uri "${PHP_PATCHSET_LOC}" "php-patchset-${PV}-r${PHP_PATCHSET}.tar.bz2")" + +if [[ ${SUHOSIN_VERSION} == *-gentoo ]]; then + # in some cases we use our own suhosin patch (very recent version, + # patch conflicts, etc.) + SUHOSIN_TYPE="gentoo" +else + SUHOSIN_TYPE="suhosin" +fi + +if [[ -n ${SUHOSIN_VERSION} ]]; then + SUHOSIN_PATCH="suhosin-patch-${SUHOSIN_VERSION}.patch"; + SUHOSIN_URI="$(php_get_uri ${SUHOSIN_TYPE} ${SUHOSIN_PATCH}.gz )" +fi + +SRC_URI=" + ${PHP_SRC_URI} + ${PHP_PATCHSET_URI} + " + +if [[ -n ${SUHOSIN_VERSION} ]]; then + SRC_URI="${SRC_URI} + suhosin? ( ${SUHOSIN_URI} )" +fi + +DESCRIPTION="The PHP language runtime engine: CLI, CGI, FPM/FastCGI, Apache2 and embed SAPIs." +HOMEPAGE="http://php.net/" +LICENSE="PHP-3" + +SLOT="5.4" +S="${WORKDIR}/${PHP_P}" + +# We can build the following SAPIs in the given order +SAPIS="embed cli cgi fpm apache2" + +# Gentoo-specific, common features +IUSE="kolab" + +# SAPIs and SAPI-specific USE flags (cli SAPI is default on): +IUSE="${IUSE} + ${SAPIS/cli/+cli} + threads" + +IUSE="${IUSE} adabas bcmath berkdb birdstep bzip2 calendar cdb cjk + crypt +ctype curl curlwrappers db2 dbmaker debug doc empress + empress-bcs enchant esoob exif frontbase +fileinfo +filter firebird + flatfile ftp gd gd-external gdbm gmp +hash +iconv imap inifile + interbase intl iodbc ipv6 +json kerberos ldap ldap-sasl libedit mhash + mssql mysql mysqlnd mysqli nls oci8 + oci8-instant-client odbc pcntl pdo +phar pic +posix postgres qdbm + readline recode sapdb +session sharedext sharedmem + +simplexml snmp soap sockets solid spell sqlite sqlite3 ssl + sybase-ct sysvipc tidy +tokenizer truetype unicode wddx + xml xmlreader xmlwriter xmlrpc xpm xsl zip zlib" + +# Enable suhosin if available +[[ -n $SUHOSIN_VERSION ]] && IUSE="${IUSE} suhosin" + +DEPEND="!dev-lang/php:5 + >=app-admin/eselect-php-0.6.2 + >=dev-libs/libpcre-8.11[unicode] + adabas? ( >=dev-db/unixODBC-1.8.13 ) + apache2? ( www-servers/apache[threads=] ) + berkdb? ( =sys-libs/db-4* ) + birdstep? ( >=dev-db/unixODBC-1.8.13 ) + bzip2? ( app-arch/bzip2 ) + cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) + cjk? ( !gd? ( !gd-external? ( + virtual/jpeg + media-libs/libpng + sys-libs/zlib + ) ) ) + crypt? ( >=dev-libs/libmcrypt-2.4 ) + curl? ( >=net-misc/curl-7.10.5 ) + db2? ( >=dev-db/unixODBC-1.8.13 ) + dbmaker? ( >=dev-db/unixODBC-1.8.13 ) + empress? ( >=dev-db/unixODBC-1.8.13 ) + empress-bcs? ( >=dev-db/unixODBC-1.8.13 ) + enchant? ( app-text/enchant ) + esoob? ( >=dev-db/unixODBC-1.8.13 ) + exif? ( !gd? ( !gd-external? ( + virtual/jpeg + media-libs/libpng + sys-libs/zlib + ) ) ) + firebird? ( dev-db/firebird ) + gd? ( virtual/jpeg media-libs/libpng sys-libs/zlib ) + gd-external? ( media-libs/gd ) + gdbm? ( >=sys-libs/gdbm-1.8.0 ) + gmp? ( >=dev-libs/gmp-4.1.2 ) + iconv? ( virtual/libiconv ) + imap? ( virtual/imap-c-client[ssl=] ) + intl? ( dev-libs/icu ) + iodbc? ( dev-db/libiodbc ) + kerberos? ( virtual/krb5 ) + kolab? ( >=net-libs/c-client-2004g-r1 ) + ldap? ( !oci8? ( >=net-nds/openldap-1.2.11 ) ) + ldap-sasl? ( !oci8? ( dev-libs/cyrus-sasl >=net-nds/openldap-1.2.11 ) ) + libedit? ( || ( sys-freebsd/freebsd-lib dev-libs/libedit ) ) + mssql? ( dev-db/freetds[mssql] ) + !mysqlnd? ( + mysql? ( virtual/mysql ) + mysqli? ( >=virtual/mysql-4.1 ) + ) + nls? ( sys-devel/gettext ) + oci8-instant-client? ( dev-db/oracle-instantclient-basic ) + odbc? ( >=dev-db/unixODBC-1.8.13 ) + postgres? ( dev-db/postgresql-base ) + qdbm? ( dev-db/qdbm ) + readline? ( sys-libs/readline ) + recode? ( app-text/recode ) + sapdb? ( >=dev-db/unixODBC-1.8.13 ) + sharedmem? ( dev-libs/mm ) + simplexml? ( >=dev-libs/libxml2-2.6.8 ) + snmp? ( >=net-analyzer/net-snmp-5.2 ) + soap? ( >=dev-libs/libxml2-2.6.8 ) + solid? ( >=dev-db/unixODBC-1.8.13 ) + spell? ( >=app-text/aspell-0.50 ) + sqlite? ( =dev-db/sqlite-2* pdo? ( >=dev-db/sqlite-3.7.4 ) ) + sqlite3? ( >=dev-db/sqlite-3.7.4 ) + ssl? ( >=dev-libs/openssl-0.9.7 ) + sybase-ct? ( dev-db/freetds ) + tidy? ( app-text/htmltidy ) + truetype? ( + =media-libs/freetype-2* + >=media-libs/t1lib-5.0.0 + !gd? ( !gd-external? ( + virtual/jpeg media-libs/libpng sys-libs/zlib ) ) + ) + unicode? ( dev-libs/oniguruma ) + wddx? ( >=dev-libs/libxml2-2.6.8 ) + xml? ( >=dev-libs/libxml2-2.6.8 ) + xmlrpc? ( >=dev-libs/libxml2-2.6.8 virtual/libiconv ) + xmlreader? ( >=dev-libs/libxml2-2.6.8 ) + xmlwriter? ( >=dev-libs/libxml2-2.6.8 ) + xpm? ( + x11-libs/libXpm + virtual/jpeg + media-libs/libpng sys-libs/zlib + ) + xsl? ( dev-libs/libxslt >=dev-libs/libxml2-2.6.8 ) + zip? ( sys-libs/zlib ) + zlib? ( sys-libs/zlib ) + virtual/mta +" + +php="=${CATEGORY}/${PF}" + +REQUIRED_USE=" + truetype? ( || ( gd gd-external ) ) + cjk? ( || ( gd gd-external ) ) + exif? ( || ( gd gd-external ) ) + + xpm? ( gd ) + gd? ( zlib !gd-external ) + gd-external? ( !gd ) + simplexml? ( xml ) + soap? ( xml ) + wddx? ( xml ) + xmlrpc? ( || ( xml iconv ) ) + xmlreader? ( xml ) + xsl? ( xml ) + ldap-sasl? ( ldap !oci8 ) + adabas? ( odbc ) + birdstep? ( odbc ) + dbmaker? ( odbc ) + empress-bcs? ( empress ) + empress? ( odbc ) + esoob? ( odbc ) + db2? ( odbc ) + sapdb? ( odbc ) + solid? ( odbc ) + kolab? ( imap ) + mhash? ( hash ) + phar? ( hash ) + mysqlnd? ( || ( + mysql + mysqli + pdo + ) ) + + oci8? ( !oci8-instant-client !ldap-sasl ) + oci8-instant-client? ( !oci8 ) + + qdbm? ( !gdbm ) + readline? ( !libedit ) + recode? ( !imap !mysql !mysqli ) + firebird? ( !interbase ) + sharedmem? ( !threads ) + + !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )" + +DEPEND="${DEPEND} + enchant? ( !dev-php5/pecl-enchant ) + fileinfo? ( !<dev-php5/pecl-fileinfo-1.0.4-r2 ) + filter? ( !dev-php5/pecl-filter ) + json? ( !dev-php5/pecl-json ) + phar? ( !dev-php5/pecl-phar ) + zip? ( !dev-php5/pecl-zip )" + +[[ -n $SUHOSIN_VERSION ]] && RDEPEND="${RDEPEND} suhosin? ( +=${CATEGORY}/${PN}-${SLOT}*[unicode] )" + +DEPEND="${DEPEND} + sys-devel/flex + >=sys-devel/m4-1.4.3 + >=sys-devel/libtool-1.5.18" + +# They are in PDEPEND because we need PHP installed first! +PDEPEND="doc? ( app-doc/php-docs )" + +# No longer depend on the extension. The suhosin USE flag only installs the +# patch +#[[ -n $SUHOSIN_VERSION ]] && PDEPEND="${PDEPEND} suhosin? ( dev-php${PHP_MV}/suhosin )" + +# Allow users to install production version if they want to + +case "${PHP_INI_VERSION}" in + production|development) + ;; + *) + PHP_INI_VERSION="development" + ;; +esac + +PHP_INI_UPSTREAM="php.ini-${PHP_INI_VERSION}" +PHP_INI_FILE="php.ini" + +want_apache + +# eblit-core +# Usage: <function> [version] [eval] +# Main eblit engine +eblit-core() { + [[ -z $FILESDIR ]] && FILESDIR="$(dirname $EBUILD)/files" + local e v func=$1 ver=$2 eval_=$3 + for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do + e="${FILESDIR}/eblits/${func}${v}.eblit" + if [[ -e ${e} ]] ; then + . "${e}" + [[ ${eval_} == 1 ]] && eval "${func}() { eblit-run ${func} ${ver} ; }" + return 0 + fi + done + return 1 +} + +# eblit-include +# Usage: [--skip] <function> [version] +# Includes an "eblit" -- a chunk of common code among ebuilds in a given +# package so that its functions can be sourced and utilized within the +# ebuild. +eblit-include() { + local skipable=false r=0 + [[ $1 == "--skip" ]] && skipable=true && shift + [[ $1 == pkg_* ]] && skipable=true + + [[ -z $1 ]] && die "Usage: eblit-include <function> [version]" + eblit-core $1 $2 + r="$?" + ${skipable} && return 0 + [[ "$r" -gt "0" ]] && die "Could not locate requested eblit '$1' in ${FILESDIR}/eblits/" +} + +# eblit-run-maybe +# Usage: <function> +# Runs a function if it is defined in an eblit +eblit-run-maybe() { + [[ $(type -t "$@") == "function" ]] && "$@" +} + +# eblit-run +# Usage: <function> [version] +# Runs a function defined in an eblit +eblit-run() { + eblit-include --skip common "${*:2}" + eblit-include "$@" + eblit-run-maybe eblit-$1-pre + eblit-${PN}-$1 + eblit-run-maybe eblit-$1-post +} + +# eblit-pkg +# Usage: <phase> [version] +# Includes the given functions AND evals them so they're included in the binpkgs +eblit-pkg() { + [[ -z $1 ]] && die "Usage: eblit-pkg <phase> [version]" + eblit-core $1 $2 1 +} + +eblit-pkg pkg_setup v2 + +src_prepare() { eblit-run src_prepare snapshots ; } +src_configure() { eblit-run src_configure v2 ; } +src_compile() { eblit-run src_compile v1 ; } +src_install() { eblit-run src_install v2 ; } +src_test() { eblit-run src_test v1 ; } +pkg_postinst() { eblit-run pkg_postinst v2 ; } |