From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 2C06C15852A for ; Fri, 16 Aug 2024 21:39:45 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 53A4A2BC021; Fri, 16 Aug 2024 21:39:44 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 1F71F2BC021 for ; Fri, 16 Aug 2024 21:39:44 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id F1FAB342FAC for ; Fri, 16 Aug 2024 21:39:42 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 5BEC21EF2 for ; Fri, 16 Aug 2024 21:39:41 +0000 (UTC) From: "Michael Orlitzky" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Michael Orlitzky" Message-ID: <1723844097.09a4b7ed4f24d04730e19ae146317c2032c81eac.mjo@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/php/, dev-lang/php/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/php/Manifest dev-lang/php/files/php-8.3.10-optional-png-testfixen.patch dev-lang/php/files/php-8.3.9-optional-png-testfixen.patch dev-lang/php/php-8.2.22.ebuild dev-lang/php/php-8.3.10.ebuild dev-lang/php/php-8.3.9.ebuild X-VCS-Directories: dev-lang/php/ dev-lang/php/files/ X-VCS-Committer: mjo X-VCS-Committer-Name: Michael Orlitzky X-VCS-Revision: 09a4b7ed4f24d04730e19ae146317c2032c81eac X-VCS-Branch: master Date: Fri, 16 Aug 2024 21:39:41 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 98e502c3-453f-4c52-884f-f2db84a1c828 X-Archives-Hash: aebd4680cff343d30bac5eb5f11fd29c commit: 09a4b7ed4f24d04730e19ae146317c2032c81eac Author: Michael Orlitzky gentoo org> AuthorDate: Fri Aug 16 21:32:51 2024 +0000 Commit: Michael Orlitzky gentoo org> CommitDate: Fri Aug 16 21:34:57 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09a4b7ed dev-lang/php: add 8.2.22, upgrade 8.3.9 -> 8.3.10 Sorry for the big test patch (again). It's been upstream for a long time but keeps getting overlooked when cutting the releases. Signed-off-by: Michael Orlitzky gentoo.org> dev-lang/php/Manifest | 3 +- ...tch => php-8.3.10-optional-png-testfixen.patch} | 28 --- .../php/{php-8.3.9.ebuild => php-8.2.22.ebuild} | 278 +++++++++++++-------- .../php/{php-8.3.9.ebuild => php-8.3.10.ebuild} | 2 +- 4 files changed, 178 insertions(+), 133 deletions(-) diff --git a/dev-lang/php/Manifest b/dev-lang/php/Manifest index 0f0436a4d5b4..8bfd4776ccb2 100644 --- a/dev-lang/php/Manifest +++ b/dev-lang/php/Manifest @@ -1,3 +1,4 @@ DIST php-8.1.29.tar.xz 11826292 BLAKE2B 471f85504531c61e534c857a854de2ce9935b263e002deee19c4508390f6b2a11f89a02f55a90d660ee8d537b22a45db057e24373fb17fd2edf45f6e458f0196 SHA512 fd4f75224f71111a4cc40b3015ae70ac57a623326a3299da9ab8bd9dfad4ea27ff345d0eb75f1407d183207e763d372d738bbd8d217d01ec1414d29a547e8ba7 DIST php-8.2.20.tar.xz 12097568 BLAKE2B 1e38e48ea9c28abfe2c3bd860bc5d959fbe327669c007f2e2a665ae14f5a045f6ad8a0a972f32618f88ea1ff3636c2692504478b5b094b48404d6c4a214f863b SHA512 c659ed4809b6507aa428b483c85c7322815ac9d7d8e4bfe575513a5e69c5a680b8d089fd98a19f83d3a00df3de61468809f21408455913aa24d519776e44abc5 -DIST php-8.3.9.tar.xz 12470616 BLAKE2B 44cc360c91b121f6fe1c768134d2e5e355fe1ab23ebefb98e60e878755e79b0bd31fa46a435eb5c3dabf034fb7b4bd785db014dc63f40331a6b168a14d849571 SHA512 f6291b71cf2c66f9effc2a8a7b0365364481cd5532551161194376893074f1f20dc7e9dbd628727e3b07460ac63b6d38bf4871bf4976e2b3b290f230b0111360 +DIST php-8.2.22.tar.xz 12099476 BLAKE2B 8c6c664f0d48ce839971e5316b6c6619434babdf26013709589b2c5e91a63d79eddc3d716762ff1714620e7e5e35cf24f06eb270931dc6f15603e233c34728af SHA512 b72df5bf8bde09571a965f512b970e2403f1c9b26fbf9efc4d1aeb5940def10e4088e5c7dbb06087b2f5206d711e34849b0726af6a81b0c3b6d9bcbd14f5172d +DIST php-8.3.10.tar.xz 12484660 BLAKE2B a2cb60f83eea13aff7c907f322733a78f3d02bc334666a5350d795a84433252e0b27468f23eecc654fcfe882464da2699669bed247b7f4eaf40138bfb3773656 SHA512 99dc53cef802304dba455b7e1e54183e780fa21a58ec044ee5eac34d24fc9e5a1390447c18a3ef0035ef3dc531fc817016b47edab5b2e90af1233a73b59517be diff --git a/dev-lang/php/files/php-8.3.9-optional-png-testfixen.patch b/dev-lang/php/files/php-8.3.10-optional-png-testfixen.patch similarity index 97% rename from dev-lang/php/files/php-8.3.9-optional-png-testfixen.patch rename to dev-lang/php/files/php-8.3.10-optional-png-testfixen.patch index 04b55b3b6b81..def26884ef2f 100644 --- a/dev-lang/php/files/php-8.3.9-optional-png-testfixen.patch +++ b/dev-lang/php/files/php-8.3.10-optional-png-testfixen.patch @@ -1247,31 +1247,3 @@ index 29cc89c1c56eb..a7be335ca92a6 100644 --FILE-- -Date: Wed, 10 Jul 2024 08:20:31 -0400 -Subject: [PATCH 1/1] ext/gd/tests/gh10614.phpt: skip if no PNG support - -This test uses imagecreatefrompng(), which won't be there if libgd was -built without PNG support. ---- - ext/gd/tests/gh10614.phpt | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/ext/gd/tests/gh10614.phpt b/ext/gd/tests/gh10614.phpt -index c068914183..1b91115d74 100644 ---- a/ext/gd/tests/gh10614.phpt -+++ b/ext/gd/tests/gh10614.phpt -@@ -5,6 +5,9 @@ - --SKIPIF-- - =')) die("skip test requires GD 2.3.4 or older"); -+if (!(imagetypes() & IMG_PNG)) { -+ die("skip No PNG support"); -+} - ?> - --FILE-- - =app-eselect/eselect-php-0.9.7[apache2?,fpm?] + >=dev-libs/libpcre2-10.30[jit?,unicode] virtual/libcrypt:= fpm? ( acl? ( sys-apps/acl ) apparmor? ( sys-libs/libapparmor ) selinux? ( sys-libs/libselinux ) ) apache2? ( www-servers/apache[apache2_modules_unixd(+),threads=] ) argon2? ( app-crypt/argon2:= ) + avif? ( media-libs/libavif:= ) berkdb? ( || ( sys-libs/db:5.3 sys-libs/db:4.8 ) ) bzip2? ( app-arch/bzip2:0= ) - capstone? ( dev-libs/capstone ) cdb? ( || ( dev-db/cdb dev-db/tinycdb ) ) - curl? ( net-misc/curl ) + curl? ( >=net-misc/curl-7.29.0 ) enchant? ( app-text/enchant:2 ) - ffi? ( dev-libs/libffi:= ) + ffi? ( >=dev-libs/libffi-3.0.11:= ) firebird? ( dev-db/firebird ) - gd? ( - >=media-libs/gd-2.3.3-r4[avif?,jpeg?,png?,truetype?,webp?,xpm?] - ) - gdbm? ( sys-libs/gdbm:0= ) + gd? ( media-libs/libjpeg-turbo:0= media-libs/libpng:0= ) + gdbm? ( >=sys-libs/gdbm-1.8.0:0= ) gmp? ( dev-libs/gmp:0= ) iconv? ( virtual/libiconv ) imap? ( net-libs/c-client[kerberos=,ssl=] ) intl? ( dev-libs/icu:= ) kerberos? ( virtual/krb5 ) - ldap? ( net-nds/openldap:= ) + ldap? ( >=net-nds/openldap-1.2.11:= ) ldap-sasl? ( dev-libs/cyrus-sasl ) libedit? ( dev-libs/libedit ) lmdb? ( dev-db/lmdb:= ) mssql? ( dev-db/freetds[mssql] ) nls? ( sys-devel/gettext ) - odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( dev-db/unixODBC ) ) - postgres? ( dev-db/postgresql:* ) + oci8-instant-client? ( dev-db/oracle-instantclient[sdk] ) + odbc? ( iodbc? ( dev-db/libiodbc ) !iodbc? ( >=dev-db/unixODBC-1.8.13 ) ) + postgres? ( >=dev-db/postgresql-9.1:* ) qdbm? ( dev-db/qdbm ) readline? ( sys-libs/readline:0= ) session-mm? ( dev-libs/mm ) - snmp? ( net-analyzer/net-snmp ) + snmp? ( >=net-analyzer/net-snmp-5.2 ) sodium? ( dev-libs/libsodium:=[-minimal(-)] ) - spell? ( app-text/aspell ) - sqlite? ( dev-db/sqlite ) - ssl? ( dev-libs/openssl:0= ) + spell? ( >=app-text/aspell-0.50 ) + sqlite? ( >=dev-db/sqlite-3.7.6.3 ) + ssl? ( >=dev-libs/openssl-1.0.2:0= ) tidy? ( app-text/htmltidy ) tokyocabinet? ( dev-db/tokyocabinet ) - truetype? ( media-libs/freetype ) + truetype? ( =media-libs/freetype-2* ) unicode? ( dev-libs/oniguruma:= ) valgrind? ( dev-debug/valgrind ) - xml? ( >=dev-libs/libxml2-2.12.5 ) + webp? ( media-libs/libwebp:0= ) + xml? ( >=dev-libs/libxml2-2.9.0 ) + xpm? ( x11-libs/libXpm ) xslt? ( dev-libs/libxslt ) - zip? ( dev-libs/libzip:= ) - zlib? ( sys-libs/zlib:0= ) + zip? ( >=dev-libs/libzip-1.2.0:= ) + zlib? ( >=sys-libs/zlib-1.2.0.4:0= ) " -IDEPEND="app-eselect/eselect-php[apache2?,fpm?]" +IDEPEND=">=app-eselect/eselect-php-0.9.7[apache2?,fpm?]" RDEPEND="${COMMON_DEPEND} virtual/mta @@ -130,17 +140,19 @@ RDEPEND="${COMMON_DEPEND} # have an incompatible version installed. See bug 593278. DEPEND="${COMMON_DEPEND} app-arch/xz-utils - sys-devel/bison" + >=sys-devel/bison-3.0.1" BDEPEND="virtual/pkgconfig" +PHP_MV="$(ver_cut 1)" + PATCHES=( - "${FILESDIR}/php-8.3.9-optional-png-testfixen.patch" - "${FILESDIR}/php-8.3.9-gd-cachevars.patch" + "${FILESDIR}/php-iodbc-header-location.patch" + "${FILESDIR}/php-capstone-optional.patch" + "${FILESDIR}/php-8.2.8-openssl-tests.patch" + "${FILESDIR}/php-8.2.20-implicit-printf.patch" ) -PHP_MV="$(ver_cut 1)" - # ARM/Windows functions (bug 923335) QA_CONFIG_IMPL_DECL_SKIP=( __crc32d @@ -164,14 +176,15 @@ php_install_ini() { local phpinisrc="php.ini-production-${phpsapi}" cp php.ini-production "${phpinisrc}" || die - # Set the include path to point to where we want to find PEAR - # packages - local sed_src='^;include_path = ".:/php.*' - local include_path="." - include_path+=":${EPREFIX}/usr/share/php${PHP_MV}" - include_path+=":${EPREFIX}/usr/share/php" - local sed_dst="include_path = \"${include_path}\"" - sed -e "s|${sed_src}|${sed_dst}|" -i "${phpinisrc}" || die + # default to /tmp for save_path, bug #282768 + sed -e 's|^;session.save_path .*$|session.save_path = "'"${EPREFIX}"'/tmp"|g' -i "${phpinisrc}" || die + + # Set the extension dir + sed -e "s|^extension_dir .*$|extension_dir = ${extension_dir}|g" \ + -i "${phpinisrc}" || die + + # Set the include path to point to where we want to find PEAR packages + sed -e 's|^;include_path = ".:/php/includes".*|include_path = ".:'"${EPREFIX}"'/usr/share/php'${PHP_MV}':'"${EPREFIX}"'/usr/share/php"|' -i "${phpinisrc}" || die insinto "${PHP_INI_DIR#${EPREFIX}}" newins "${phpinisrc}" php.ini @@ -184,7 +197,7 @@ php_install_ini() { if use opcache; then elog "Adding opcache to $PHP_EXT_INI_DIR" - echo "zend_extension = opcache.so" >> \ + echo "zend_extension=${PHP_DESTDIR}/$(get_libdir)/opcache.so" >> \ "${D}/${PHP_EXT_INI_DIR}"/opcache.ini dosym "../ext/opcache.ini" \ "${PHP_EXT_INI_DIR_ACTIVE#${EPREFIX}}/opcache.ini" @@ -221,12 +234,62 @@ src_prepare() { sapi/fpm/php-fpm.conf.in \ || die 'failed to move the include directory in php-fpm.conf' + # Emulate buildconf to support cross-compilation + rm -fr aclocal.m4 autom4te.cache config.cache \ + configure main/php_config.h.in || die + eautoconf --force + eautoheader + + # missing skipif; fixed upstream already + rm sapi/cgi/tests/005.phpt || die + + # These three get BORKED on no-ipv6 systems, + # + # https://github.com/php/php-src/pull/11651 + # + rm ext/sockets/tests/mcast_ipv6_recv.phpt \ + ext/sockets/tests/mcast_ipv6_recv_limited.phpt \ + ext/sockets/tests/mcast_ipv6_send.phpt \ + || die + # fails in a network sandbox, # # https://github.com/php/php-src/issues/11662 # rm ext/sockets/tests/bug63000.phpt || die + # expected output needs to be updated, + # + # https://github.com/php/php-src/pull/11648 + # + rm ext/dba/tests/dba_tcadb.phpt || die + + # Two IMAP tests missing SKIPIFs, + # + # https://github.com/php/php-src/pull/11654 + # + rm ext/imap/tests/imap_mutf7_to_utf8.phpt \ + ext/imap/tests/imap_utf8_to_mutf7_basic.phpt \ + || die + + # broken upstream with icu-73.x, + # + # https://github.com/php/php-src/issues/11128 + # + rm ext/intl/tests/calendar_clear_variation1.phpt || die + + # overly sensitive to INI values; fixes sent upstream: + # + # https://github.com/php/php-src/pull/11631 + # + rm ext/session/tests/{bug74514,bug74936,gh7787}.phpt || die + + # This is sensitive to the current "nice" level: + # + # https://github.com/php/php-src/issues/11630 + # + rm ext/standard/tests/general_functions/proc_nice_basic.phpt || die + # Tests ignoring the "-n" flag we pass to run-tests.php, # # https://github.com/php/php-src/pull/11669 @@ -245,12 +308,38 @@ src_prepare() { sapi/cli/tests/bug78323.phpt \ || die + # Same TEST_PHP_EXTRA_ARGS (-n) issue with this one, but it's + # already been fixed upstream. + rm sapi/cli/tests/017.phpt || die + + # Most Oracle tests are borked, + # + # * https://github.com/php/php-src/issues/11804 + # * https://github.com/php/php-src/pull/11820 + # * https://github.com/php/php-src/issues/11819 + # + rm ext/oci8/tests/*.phpt || die + + # https://github.com/php/php-src/issues/12801 + rm ext/pcre/tests/gh11374.phpt || die + # This is a memory usage test with hard-coded limits. Whenever the # limits are surpassed... they get increased... but in the meantime, # the tests fail. This is not really a test that end users should # be running pre-install, in my opinion. Bug 927461. rm ext/fileinfo/tests/bug78987.phpt || die + # glibc-2.39 compatibility, fixed upstream in + # https://github.com/php/php-src/pull/14097 + rm ext/standard/tests/strings/setlocale_variation3.phpt || die + + # The expected warnings aren't triggered in this test because we + # define session.save_path on the CLI: + # + # https://github.com/php/php-src/issues/14368 + # + rm ext/session/tests/gh13856.phpt || die + # Bug 935382, fixed eventually by # # - https://github.com/php/php-src/pull/14788 @@ -266,25 +355,8 @@ src_prepare() { # rm ext/dba/tests/dba_gdbm.phpt || die - # Most tests failing with an external libgd have been fixed, - # but there are a few stragglers: - # - # * https://github.com/php/php-src/issues/11252 - # - rm ext/gd/tests/bug43073.phpt \ - ext/gd/tests/bug48732.phpt \ - ext/gd/tests/bug48732-mb.phpt \ - ext/gd/tests/bug48801.phpt \ - ext/gd/tests/bug48801-mb.phpt \ - ext/gd/tests/bug53504.phpt \ - ext/gd/tests/bug65148.phpt \ - ext/gd/tests/bug73272.phpt \ - || die - - # One-off, somebody forgot to update a version constant - rm ext/reflection/tests/ReflectionZendExtension.phpt || die - - eautoconf --force + # https://github.com/php/php-src/pull/14439 + rm ext/openssl/tests/bug74341.phpt || die } src_configure() { @@ -323,10 +395,10 @@ src_configure() { our_conf+=( $(use_with apparmor fpm-apparmor) $(use_with argon2 password-argon2 "${EPREFIX}/usr") + $(use_with avif) $(use_enable bcmath) $(use_with bzip2 bz2 "${EPREFIX}/usr") $(use_enable calendar) - $(use_with capstone) $(use_enable ctype) $(use_with curl) $(use_enable xml dom) @@ -351,7 +423,6 @@ src_configure() { $(use_enable phar) $(use_enable pdo) $(use_enable opcache) - $(use_enable opcache-jit) $(use_with postgres pgsql "${EPREFIX}/usr") $(use_enable posix) $(use_with selinux fpm-selinux) @@ -378,17 +449,6 @@ src_configure() { $(use_with valgrind) ) - # Override autoconf cache variables for libcrypt algorithms.These - # otherwise cannot be detected when cross-compiling. Bug 931884. - our_conf+=( - ac_cv_crypt_blowfish=yes - ac_cv_crypt_des=yes - ac_cv_crypt_ext_des=yes - ac_cv_crypt_md5=yes - ac_cv_crypt_sha512=yes - ac_cv_crypt_sha256=yes - ) - # DBA support if use cdb || use berkdb || use flatfile || use gdbm || use inifile \ || use qdbm || use lmdb || use tokyocabinet ; then @@ -407,20 +467,16 @@ src_configure() { $(use_with lmdb lmdb "${EPREFIX}/usr") ) - # Use the system copy of GD. The autoconf cache variable overrides - # allow cross-compilation to proceed since the corresponding - # features cannot be detected by running a program. + # Support for the GD graphics library our_conf+=( - $(use_enable gd gd) - $(use_with gd external-gd) - php_cv_lib_gd_gdImageCreateFromAvif=$(usex avif) - php_cv_lib_gd_gdImageCreateFromBmp=yes - php_cv_lib_gd_gdImageCreateFromJpeg=$(usex jpeg) - php_cv_lib_gd_gdImageCreateFromPng=$(usex png) - php_cv_lib_gd_gdImageCreateFromTga=yes - php_cv_lib_gd_gdImageCreateFromWebp=$(usex webp) - php_cv_lib_gd_gdImageCreateFromXpm=$(usex xpm) + $(use_with truetype freetype) + $(use_enable cjk gd-jis-conv) + $(use_with gd jpeg) + $(use_with xpm) + $(use_with webp) ) + # enable gd last, so configure can pick up the previous settings + our_conf+=( $(use_enable gd) ) # IMAP support if use imap ; then @@ -448,22 +504,10 @@ src_configure() { # ODBC support if use odbc && use iodbc ; then - # Obtain the correct -l and -I flags for the actual build from - # pkg-config. We use the "generic" library type to avoid the - # (wrong) hard-coded include dir for iodbc. - # - # We set the pdo_odbc_def_incdir variable because the - # ./configure script checks for the headers using "test -f" and - # ignores your CFLAGS... and pdo_odbc_def_libdir prevents the - # build system from appending a nonsense -L flag. - local iodbc_ldflags=$(pkg-config --libs libiodbc) - local iodbc_cflags=$(pkg-config --cflags libiodbc) our_conf+=( - pdo_odbc_def_libdir="${EPREFIX}/usr/$(get_libdir)" - pdo_odbc_def_incdir="${EPREFIX}/usr/include/iodbc" --without-unixODBC --with-iodbc - $(use_with pdo pdo-odbc "generic,,iodbc,${iodbc_ldlags},${iodbc_cflags}") + $(use_with pdo pdo-odbc "iODBC,${EPREFIX}/usr") ) elif use odbc ; then our_conf+=( @@ -479,6 +523,9 @@ src_configure() { ) fi + # Oracle support + our_conf+=( $(use_with oci8-instant-client oci8) ) + # PDO support if use pdo ; then our_conf+=( @@ -487,6 +534,7 @@ src_configure() { $(use_with postgres pdo-pgsql) $(use_with sqlite pdo-sqlite) $(use_with firebird pdo-firebird "${EPREFIX}/usr") + $(use_with oci8-instant-client pdo-oci) ) fi @@ -534,10 +582,6 @@ src_configure() { # in main/build-defs.h which is included in main/php.h which is # included by basically everything; so, avoiding a rebuild after # changing it is not an easy job. - # - # The upstream build system also does not support building the - # apache2 and embed SAPIs at the same time, presumably because they - # both produce a libphp.so. local one_sapi local sapi mkdir "${WORKDIR}/sapis-build" || die @@ -599,6 +643,17 @@ src_compile() { addpredict /usr/share/snmp/mibs/.index #nowarn addpredict /var/lib/net-snmp/mib_indexes #nowarn + if use oci8-instant-client && use kerberos && use imap && use phar; then + # A conspiracy takes place when the first three of these flags + # are set together, causing the newly-built "php" to open + # /dev/urandom with mode rw when it starts. That's not actually + # a problem... unless you also have USE=phar, which runs that + # "php" to build some phar thingy in src_compile(). Later in + # src_test(), portage (at least) sets "addpredict /" so the + # problem does not repeat. + addpredict /dev/urandom #nowarn + fi + local sapi for sapi in ${SAPIS} ; do use "${sapi}" && emake -C "${WORKDIR}/sapis-build/${sapi}" @@ -618,15 +673,20 @@ src_install() { fi done - # Install SAPI-independent targets + # Makefile forgets to create this before trying to write to it... + dodir "${PHP_DESTDIR#${EPREFIX}}/bin" + + # Install php environment (without any sapis) cd "${WORKDIR}/sapis-build/$first_sapi" || die emake INSTALL_ROOT="${D}" \ install-build install-headers install-programs - use opcache && emake INSTALL_ROOT="${D}" install-modules + + local extension_dir="$("${ED}/${PHP_DESTDIR#${EPREFIX}}/bin/php-config" --extension-dir)" # Create the directory where we'll put version-specific php scripts keepdir "/usr/share/php${PHP_MV}" + local file="" local sapi_list="" for sapi in ${SAPIS}; do @@ -692,6 +752,12 @@ src_install() { fi done + # Installing opcache module + if use opcache ; then + into "${PHP_DESTDIR#${EPREFIX}}" + dolib.so "modules/opcache$(get_libname)" + fi + # Install env.d files newenvd "${FILESDIR}/20php5-envd" "20php${SLOT}" sed -e "s|/lib/|/$(get_libdir)/|g" -i "${ED}/etc/env.d/20php${SLOT}" || die @@ -729,6 +795,11 @@ src_test() { export TEST_PHPDBG_EXECUTABLE="${WORKDIR}/sapis-build/phpdbg/sapi/phpdbg/phpdbg" fi + # The sendmail override prevents ext/imap/tests/bug77020.phpt from + # actually trying to send mail, and will be fixed upstream soon: + # + # https://github.com/php/php-src/issues/11629 + # # The IO capture tests need to be disabled because they fail when # std{in,out,err} are redirected (as they are within portage). # @@ -738,6 +809,7 @@ src_test() { "${TEST_PHP_EXECUTABLE}" -n \ "${WORKDIR}/sapis-build/cli/run-tests.php" --offline -n -q \ -d "session.save_path=${T}" \ + -d "sendmail_path=echo >/dev/null" \ || die "tests failed" } diff --git a/dev-lang/php/php-8.3.9.ebuild b/dev-lang/php/php-8.3.10.ebuild similarity index 99% rename from dev-lang/php/php-8.3.9.ebuild rename to dev-lang/php/php-8.3.10.ebuild index f0b4e07fb29d..5abc04930731 100644 --- a/dev-lang/php/php-8.3.9.ebuild +++ b/dev-lang/php/php-8.3.10.ebuild @@ -135,7 +135,7 @@ DEPEND="${COMMON_DEPEND} BDEPEND="virtual/pkgconfig" PATCHES=( - "${FILESDIR}/php-8.3.9-optional-png-testfixen.patch" + "${FILESDIR}/php-8.3.10-optional-png-testfixen.patch" "${FILESDIR}/php-8.3.9-gd-cachevars.patch" )