Built for 8.1.29. Libxml patch included
Search Criteria
Package Details: php81 8.1.29-3
Package Actions
Git Clone URL: | https://aur.archlinux.org/php81.git (read-only, click to copy) |
---|---|
Package Base: | php81 |
Description: | PHP. A general-purpose scripting language that is especially suited to web development |
Upstream URL: | http://www.php.net |
Keywords: | 8.1 php php8 |
Licenses: | PHP |
Submitter: | el_aur |
Maintainer: | el_aur |
Last Packager: | el_aur |
Votes: | 11 |
Popularity: | 0.41 |
First Submitted: | 2021-12-01 12:54 (UTC) |
Last Updated: | 2024-07-24 20:34 (UTC) |
Dependencies (58)
- libedit
- pcre
- zlib (zlib-ng-compat-gitAUR, zlib-gitAUR, zlib-ng-compatAUR)
- acl (acl-gitAUR) (make)
- apache (apache-gitAUR) (make)
- argon2 (argon2-gitAUR) (make)
- aspell (aspell-gitAUR) (make)
- autoconf (autoconf-gitAUR) (make)
- automake (automake-gitAUR) (make)
- bash (bash-devel-static-gitAUR, bash-gitAUR, bash-devel-gitAUR, busybox-coreutilsAUR) (make)
- c-clientAUR (make)
- coreutils (coreutils-gitAUR, busybox-coreutilsAUR, coreutils-hybrid-gitAUR, coreutils-uutilsAUR, coreutils-hybridAUR, coreutils-selinuxAUR) (make)
- curl (curl-quiche-gitAUR, curl-http3-ngtcp2AUR, curl-gitAUR, curl-c-aresAUR) (make)
- db5.3 (make)
- e2fsprogs (busybox-coreutilsAUR, e2fsprogs-gitAUR) (make)
- enchant (make)
- findutils (findutils-gitAUR, busybox-coreutilsAUR, findutils-selinuxAUR) (make)
- freetds (make)
- gawk (gawk-gitAUR, busybox-coreutilsAUR) (make)
- gd (gd-gitAUR) (make)
- Show 38 more dependencies...
Required by (67)
Sources (11)
el_aur commented on 2024-06-27 11:58 (UTC)
DmitrySkibitsky commented on 2024-05-30 07:18 (UTC)
Build error
makepkg -si
....
/home/dmitry/Apps/php81/src/php-8.1.28/ext/libxml/libxml.c: In function ‘zif_libxml_use_internal_errors’:
/home/dmitry/Apps/php81/src/php-8.1.28/ext/libxml/libxml.c:981:48: warning: comparison of distinct pointer types lacks a cast [-Wcompare-distinct-pointer-types]
981 | if (current_handler && current_handler == php_libxml_structured_error_handler) {
| ^~
/home/dmitry/Apps/php81/src/php-8.1.28/ext/libxml/libxml.c:999:49: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types]
999 | xmlSetStructuredErrorFunc(NULL, php_libxml_structured_error_handler);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)}
In file included from /usr/include/libxml2/libxml/valid.h:15,
from /usr/include/libxml2/libxml/parser.h:19,
from /home/dmitry/Apps/php81/src/php-8.1.28/ext/libxml/libxml.c:32:
/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’}
898 | xmlStructuredErrorFunc handler);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/home/dmitry/Apps/php81/src/php-8.1.28/ext/libxml/libxml.c: In function ‘zif_libxml_get_last_error’:
/home/dmitry/Apps/php81/src/php-8.1.28/ext/libxml/libxml.c:1016:15: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
1016 | error = xmlGetLastError();
| ^
make: *** [Makefile:968: ext/libxml/libxml.lo] Error 1
make: *** Waiting for unfinished jobs....
==> ERROR: A failure occurred in build().
Aborting...
grkr commented on 2024-05-28 07:04 (UTC) (edited on 2024-05-28 07:18 (UTC) by grkr)
@florianorineveu try with these 2 patches:
From 0a39890c967aa57225bb6bdf4821aff7a3a3c082 Mon Sep 17 00:00:00 2001
From: Niels Dossche <7771979+nielsdos@users.noreply.github.com>
Date: Fri, 1 Dec 2023 18:03:35 +0100
Subject: [PATCH 1/1] Fix libxml2 2.12 build due to API breaks
See https://github.com/php/php-src/actions/runs/7062192818/job/19225478601
---
ext/libxml/libxml.c | 14 ++++++++++----
ext/soap/php_sdl.c | 2 +-
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/ext/libxml/libxml.c b/ext/libxml/libxml.c
index 22eb1901b8..1de693892b 100644
--- a/ext/libxml/libxml.c
+++ b/ext/libxml/libxml.c
@@ -472,7 +472,11 @@ static void _php_libxml_free_error(void *ptr)
xmlResetError((xmlErrorPtr) ptr);
}
-static void _php_list_set_error_structure(xmlErrorPtr error, const char *msg)
+#if LIBXML_VERSION >= 21200
+static void _php_list_set_error_structure(const xmlError *error, const char *msg)
+#else
+static void _php_list_set_error_structure(xmlError *error, const char *msg)
+#endif
{
xmlError error_copy;
int ret;
@@ -725,7 +729,11 @@ PHP_LIBXML_API void php_libxml_ctx_warning(void *ctx, const char *msg, ...)
va_end(args);
}
+#if LIBXML_VERSION >= 21200
+PHP_LIBXML_API void php_libxml_structured_error_handler(void *userData, const xmlError *error)
+#else
PHP_LIBXML_API void php_libxml_structured_error_handler(void *userData, xmlErrorPtr error)
+#endif
{
_php_list_set_error_structure(error, NULL);
@@ -957,11 +965,9 @@ PHP_FUNCTION(libxml_use_internal_errors)
/* {{{ Retrieve last error from libxml */
PHP_FUNCTION(libxml_get_last_error)
{
- xmlErrorPtr error;
-
ZEND_PARSE_PARAMETERS_NONE();
- error = xmlGetLastError();
+ const xmlError *error = xmlGetLastError();
if (error) {
object_init_ex(return_value, libxmlerror_class_entry);
diff --git a/ext/soap/php_sdl.c b/ext/soap/php_sdl.c
index 749f5a5685..b731114775 100644
--- a/ext/soap/php_sdl.c
+++ b/ext/soap/php_sdl.c
@@ -332,7 +332,7 @@ static void load_wsdl_ex(zval *this_ptr, char *struri, sdlCtx *ctx, int include)
sdl_restore_uri_credentials(ctx);
if (!wsdl) {
- xmlErrorPtr xmlErrorPtr = xmlGetLastError();
+ const xmlError *xmlErrorPtr = xmlGetLastError();
if (xmlErrorPtr) {
soap_error2(E_ERROR, "Parsing WSDL: Couldn't load from '%s' : %s", struri, xmlErrorPtr->message);
--
2.45.1
and
From cc46a4e6b5a413bab3e264c1dcaaf7052f54fbc4 Mon Sep 17 00:00:00 2001
From: David Carlier <devnexen@gmail.com>
Date: Sat, 17 Feb 2024 21:38:21 +0000
Subject: [PATCH 1/1] ext/intl: level up c++ runtime std for icu 74 and
onwards.
to align with what is required to build icu 74 itself.
Close GH-14002
---
NEWS | 3 +++
ext/intl/config.m4 | 11 ++++++++++-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/NEWS b/NEWS
index bcff2820de..e5f8e3eba5 100644
--- a/NEWS
+++ b/NEWS
@@ -18,6 +18,9 @@ PHP NEWS
. Fixed bug GH-13563 (Setting bool values via env in FPM config fails).
(Jakub Zelenka)
+- Intl:
+ . Fixed build for icu 74 and onwards. (dunglas)
+
- MySQLnd:
. Fix shift out of bounds on 32-bit non-fast-path platforms. (nielsdos)
diff --git a/ext/intl/config.m4 b/ext/intl/config.m4
index dd687bcd97..48f5147ca7 100644
--- a/ext/intl/config.m4
+++ b/ext/intl/config.m4
@@ -80,7 +80,16 @@ if test "$PHP_INTL" != "no"; then
breakiterator/codepointiterator_methods.cpp"
PHP_REQUIRE_CXX()
- PHP_CXX_COMPILE_STDCXX(11, mandatory, PHP_INTL_STDCXX)
+
+ AC_MSG_CHECKING([if intl requires -std=gnu++17])
+ AS_IF([test "$PKG_CONFIG icu-uc --atleast-version=74"],[
+ AC_MSG_RESULT([yes])
+ PHP_CXX_COMPILE_STDCXX(17, mandatory, PHP_INTL_STDCXX)
+ ],[
+ AC_MSG_RESULT([no])
+ PHP_CXX_COMPILE_STDCXX(11, mandatory, PHP_INTL_STDCXX)
+ ])
+
PHP_INTL_CXX_FLAGS="$INTL_COMMON_FLAGS $PHP_INTL_STDCXX $ICU_CXXFLAGS"
case $host_alias in
*cygwin*) PHP_INTL_CXX_FLAGS="$PHP_INTL_CXX_FLAGS -D_POSIX_C_SOURCE=200809L"
--
2.45.1
florianorineveu commented on 2024-05-27 17:23 (UTC) (edited on 2024-05-27 17:33 (UTC) by florianorineveu)
Package fails to build again, libxml error... Error available at least on php56, php80 and php81
el_aur commented on 2023-11-23 15:17 (UTC)
@jacklem thanks for fix, included to PKGBUILD
jacklem commented on 2023-11-22 19:33 (UTC) (edited on 2023-11-22 21:57 (UTC) by jacklem)
I FIXED THE ERRORS BY CHANGING THE FILES SHOWN HERE IN THE PHP SOURCE AT GITHUB https://github.com/php/php-src/commit/8a95e616b91ac0eeedba90a61e36e652919763f2
Package FAILS to build due to several similar errors in the file php.libxml.h from lines 148 to 154.
[...]php-8.1.25/ext/libxml/php_libxml.h: In function ‘php_libxml_sanitize_parse_ctxt_options’:
/php-8.1.25/ext/libxml/php_libxml.h:148:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
148 | ctxt->loadsubset = 0;
| ^~
/php-8.1.25/ext/libxml/php_libxml.h:149:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
149 | ctxt->validate = 0;
| ^~
/php-8.1.25/ext/libxml/php_libxml.h:150:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
150 | ctxt->pedantic = 0;
| ^~
/php-8.1.25/ext/libxml/php_libxml.h:151:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
151 | ctxt->replaceEntities = 0;
| ^~
/php-8.1.25/ext/libxml/php_libxml.h:152:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
152 | ctxt->linenumbers = 0;
| ^~
/php-8.1.25/ext/libxml/php_libxml.h:153:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
153 | ctxt->keepBlanks = 1;
| ^~
/php-8.1.25/ext/libxml/php_libxml.h:154:13: error: invalid use of incomplete typedef ‘xmlParserCtxt’ {aka ‘struct _xmlParserCtxt’}
154 | ctxt->options = 0;
| ^~
DmitrySkibitsky commented on 2023-10-17 09:47 (UTC) (edited on 2023-10-17 09:48 (UTC) by DmitrySkibitsky)
Upgraded to 8.1.24. Everything's fine. The only thing is that I still need to set values for CFLAGS and CXXFLAGS variables.
php -m [PHP Modules] bcmath bz2 calendar Core ctype curl date dba dom enchant exif FFI fileinfo filter ftp gd gettext gmp hash iconv imagick imap intl json ldap libxml mbstring mysqli mysqlnd odbc openssl pcntl pcre PDO pdo_dblib PDO_Firebird pdo_mysql PDO_ODBC pdo_pgsql pdo_sqlite pgsql Phar posix pspell readline redis Reflection session shmop SimpleXML snmp soap sockets sodium SPL sqlite3 standard sysvmsg sysvsem sysvshm tidy tokenizer xml xmlreader xmlwriter xsl Zend OPcache zip zlib [Zend Modules] Zend OPcache
PHP 8.1.24 (cli) (built: Oct 17 2023 09:19:37) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.24, Copyright (c) Zend Technologies with Zend OPcache v8.1.24, Copyright (c), by Zend Technologies
gebeer commented on 2023-07-31 14:49 (UTC)
@el_aur key for repo at build.opensuse.org seems to have changed. Following your instructions, pacman -Syy results in:
error: home_el_archphp_Arch: signature from "home:el OBS Project <home:el@build.opensuse.org>" is invalid
Pinned Comments
el_aur commented on 2022-01-27 12:09 (UTC) (edited on 2022-01-27 15:19 (UTC) by el_aur)
Read Carefully! Breaking changes in compare with native PHP package
Console version
/usr/bin/php81
is installed withphp81-cli
subpackage,php81
doesn't include it anymore!!!PEAR and PECL are available as
php81-pear
andphp81-pecl
subpackagesAll shared modules are respresented as stand-alone subpackages and are not included with
php81
package anymore.No more extensions in php.ini itself!
Separate INI files for each extension are placed in
/etc/php81/conf.d
They are loaded in correct order according to priority