summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Lamskoy2024-07-24 23:30:33 +0300
committerEugene Lamskoy2024-07-24 23:30:33 +0300
commitbff4078a886db606ca90c5074ced66c15ae6d136 (patch)
treec39ffa0398432aefed3c3e2f0edf48a03d13de16
parent620f3a6399a8dde7ed6fa576b04a5bcdbfcf9f03 (diff)
downloadaur-bff4078a886db606ca90c5074ced66c15ae6d136.tar.gz
Pear/pecl restored
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD379
-rw-r--r--libxml-pear.patch11
-rw-r--r--pear-config-patcher.php42
4 files changed, 278 insertions, 175 deletions
diff --git a/.SRCINFO b/.SRCINFO
index cddcb55df835..bd22f8625607 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by makepkg 6.1.0
-# Sun Jul 7 08:59:39 UTC 2024
+# Wed Jul 24 20:24:39 UTC 2024
pkgbase = php82
pkgdesc = PHP 8.2.21 compiled as to not conflict with mainline php
pkgver = 8.2.21
- pkgrel = 1
+ pkgrel = 2
url = http://www.php.net
arch = x86_64
license = PHP
@@ -68,7 +68,9 @@ pkgbase = php82
source = make-tests.patch
source = php-makefile-patcher.php
source = php-apache.conf
+ source = pear-config-patcher.php
source = https://php.net/distributions/php-8.2.21.tar.xz
+ source = libxml-pear.patch
source = debian-php-8.2.patch
source = php-phpinfo.patch
source = timezonedb-guess.patch
@@ -76,7 +78,9 @@ pkgbase = php82
sha256sums = e6b8530d747000eebb0089249ec70a3b14add7b501337046700544883f62b17b
sha256sums = ba72fc64f77822755a469314160d5889d5298f4eb5758dd7939dac9b811afe52
sha256sums = 6d0ad9becb5470ce8e5929d7d45660b0f32579038978496317544c5310281a91
+ sha256sums = 0b7e98dca9c996ec10cb9b3f6296bb7547c68797fd5f35006fdfd3e97700672d
sha256sums = 8cc44d51bb2506399ec176f70fe110f0c9e1f7d852a5303a2cd1403402199707
+ sha256sums = b5a6b99214dce395a058f40bffee50511adaf58ee84ee6fbb7ca7bdc3c07cb3c
sha256sums = 169d52d6fc78e24e88a5923715d965bc247a62697c59d06d468c1908eba1c189
sha256sums = 558e780e93dfa861a366c49b4d156d8fc43f17898f001ae6033ec63c33d5d41c
sha256sums = 40bcc1e5058602302198d0925e431495391d8469499593af477f59d84d32f764
@@ -159,8 +163,19 @@ pkgname = php82-litespeed
depends = argon2
backup = etc/php82/php.ini
+pkgname = php82-pear
+ pkgdesc = PHP Extension and Application Repository (PEAR) for php82
+ depends = php82=8.2.21
+ depends = php82-xml=8.2.21
+ depends = php82-cli=8.2.21
+ depends = php82-phar=8.2.21
+
+pkgname = php82-pecl
+ pkgdesc = PHP Extension Community Library (PECL) for php82
+ depends = php82-pear=8.2.21
+
pkgname = php82-phpdbg
- pkgdesc = Interactive PHP debugger for php82 ()
+ pkgdesc = Interactive PHP debugger for php82
depends = php82=8.2.21
depends = libxml2
depends = pcre2
diff --git a/PKGBUILD b/PKGBUILD
index 030f8909933b..efd43ae16b51 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
###############################################################################
# Generated by arch-phpbs: https://github.com/lamskoy/arch-phpbs
#
-# Maintaining/co-maintaining on AUR: all packages from php53 up to php82
+# Maintaining/co-maintaining on AUR: all packages from php56 up to php84
#
# Thanks to:
#
@@ -19,7 +19,8 @@
_phpbase="82"
_suffix=""
pkgver="8.2.21"
-pkgrel="1"
+pkgbase_rc=""
+pkgrel="2"
pkgbase="php82"
pkgdesc="PHP 8.2.21 compiled as to not conflict with mainline php"
_cppflags=" -DU_USING_ICU_NAMESPACE=1 "
@@ -32,9 +33,7 @@ _build_fpm_service_name="php82-fpm"
_build_icu_src_dir="icu/source"
_build_ini_per_sapi="0"
_build_mysql_socket="/run/mysqld/mysqld.sock"
-_build_openssl_v10_patch="0"
_build_openssl_v11_patch="0"
-_build_per_sapi="0"
_build_phpdbg="1"
_build_sapi_ini_apache="etc/php82"
_build_sapi_ini_cgi="etc/php82"
@@ -54,8 +53,6 @@ _build_system_timezonedb="1"
_build_update_sqlite="0"
_build_uses_argon="1"
_build_uses_lmdb="1"
-_build_with_custom_icu="0"
-_pkgver_icu="64-1"
_priority_default="20"
_priority_dom="16"
_priority_json="15"
@@ -74,6 +71,8 @@ pkgname=(
"php82-embed"
"php82-apache"
"php82-litespeed"
+ "php82-pear"
+ "php82-pecl"
"php82-phpdbg"
"php82-xml"
"php82-xsl"
@@ -129,7 +128,9 @@ source=(
"make-tests.patch"
"php-makefile-patcher.php"
"php-apache.conf"
+ "pear-config-patcher.php"
"https://php.net/distributions/php-${pkgver}.tar.xz"
+ "libxml-pear.patch"
"debian-php-8.2.patch"
"php-phpinfo.patch"
"timezonedb-guess.patch"
@@ -197,6 +198,7 @@ makedepends=(
arch=(
)
_patches=(
+ "libxml-pear.patch"
"debian-php-8.2.patch"
"php-phpinfo.patch"
"timezonedb-guess.patch"
@@ -287,6 +289,7 @@ _phpconfig="\
--with-config-file-scan-dir=/${_build_conf_d} \
--enable-filter \
--enable-session \
+ --with-pear \
--with-mhash=/usr \
--with-kerberos \
--with-mysql-sock=${_build_mysql_socket} \
@@ -482,15 +485,14 @@ _build_sapi() {
pushd "build-${_sapi}"
./configure ${_phpconfig} ${_commands}
patch -p1 -i "${srcdir}/make-tests.patch"
-
if (($_sapi != "cli")); then
make clean
+ elif ((_phpbase < 82)); then
+ sed -i 's/\(-Iext\/intl\/.*\)-std=c++11\(.*\)/\1-std=c++17\2/g' Makefile
fi
- if ((! _build_with_custom_icu)); then
- sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
- -e 's|^runpath_var=LD_RUN_PATH|runpath_var=LIBTOOL_IS_BROKED|g' \
- libtool
- fi
+ sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
+ -e 's|^runpath_var=LD_RUN_PATH|runpath_var=LIBTOOL_IS_BROKED|g' \
+ libtool
make
popd
}
@@ -502,54 +504,21 @@ build() {
export CFLAGS="${CFLAGS} -fPIC -Wno-error=incompatible-pointer-types"
export CXXFLAGS="${CXXFLAGS} -fPIC -Wno-error=incompatible-pointer-types -std=c++17"
export EXTENSION_DIR="/usr/lib/${pkgbase}/modules"
- if ((_build_openssl_v10_patch)); then
- export PHP_OPENSSL_DIR="/usr/lib/openssl-1.0"
- export PKG_CONFIG_PATH="/usr/lib/openssl-1.0/pkgconfig"
- elif ((_build_forced_openssl_11)); then
+ if ((_build_forced_openssl_11)); then
export PHP_OPENSSL_DIR="/usr/lib/openssl-1.1"
export PKG_CONFIG_PATH="/usr/lib/openssl-1.1/pkgconfig"
fi
if [[ ! -z "${_cppflags}" ]]; then
CPPFLAGS+=" $_cppflags "
fi
- if ((_build_with_custom_icu )); then
- local _php5_icu_first="${srcdir}/${_build_icu_src_dir}/php${_phpbase}${suffix}-icu${_pkgver_icu}"
- LDFLAGS+="-Wl,-rpath=$ORIGIN/usr/lib/${pkgbase}/icu${_pkgver_icu}/lib"
- _phpextensions+=" --with-icu-dir=${_php5_icu_first} "
- if [[ ! -d $_php5_icu_first ]]; then
- mkdir -p "${_php5_icu_first}"
- fi
- pushd "${_build_icu_src_dir}"
- ./configure --prefix="${_php5_icu_first}" \
- --sysconfdir="${_php5_icu_first}/etc" \
- --mandir="${_php5_icu_first}/share/man" \
- --sbindir="${_php5_icu_first}/bin" \
- --libdir="${_php5_icu_first}/lib" \
- --includedir="${_php5_icu_first}/include" \
- --disable-tests \
- --disable-debug
- make -j$(nproc)
- make install
- ./configure --prefix="/usr/lib/${pkgbase}/icu${_pkgver_icu}" \
- --sysconfdir="/usr/lib/${pkgbase}/icu${_pkgver_icu}/etc" \
- --mandir="/usr/lib/${pkgbase}/icu${_pkgver_icu}/share/man" \
- --sbindir="/usr/lib/${pkgbase}/icu${_pkgver_icu}/bin" \
- --libdir="/usr/lib/${pkgbase}/icu${_pkgver_icu}/lib" \
- --includedir="/usr/lib/${pkgbase}/icu${_pkgver_icu}/include" \
- --disable-tests \
- --disable-debug
- make -j$(nproc)
- popd
- fi
- if ((_build_ini_per_sapi || _build_per_sapi)); then
+ if ((_build_ini_per_sapi)); then
# CLI
_cli_addons=''
- if (( ! _build_per_sapi )); then
- # CGI enabled here only for tests passing, then overriden later by cgi build
- _cli_addons+=" --enable-cgi "
- fi
+ # CGI enabled here only for tests passing, then overriden later by cgi build
+ _cli_addons+=" --enable-cgi "
+
_build_sapi "cli" "\
--sysconfdir=/${_build_sapi_ini_cli} \
--with-config-file-path=/${_build_sapi_ini_cli} \
@@ -749,14 +718,6 @@ package_php82() {
# Binary names
pkgdesc='PHP. A general-purpose scripting language that is especially suited to web development'
depends=('zlib' 'pcre' 'libedit')
- if ((_build_with_custom_icu)); then
- pushd "${_build_icu_src_dir}"
- make DESTDIR="${pkgdir}" install
- popd
- pushd "${pkgdir}/usr/lib/${pkgbase}/icu${_pkgver_icu}"
- rm -rf bin include share
- popd
- fi
# Install session dir
install -d -m1733 "${pkgdir}/var/lib/${pkgbase}/sessions"
@@ -820,7 +781,7 @@ package_php82-cgi() {
pkgdesc="CGI and FCGI SAPI for ${pkgbase}"
depends=("${pkgbase}=${pkgver}")
depends+=("${_sapi_depends[@]}")
- if ((_build_ini_per_sapi || _build_per_sapi)); then
+ if ((_build_ini_per_sapi)); then
pushd "build-${_sapi}"
else
pushd "build-cli"
@@ -829,14 +790,7 @@ package_php82-cgi() {
install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cgi}/php.ini"
backup=("${_build_sapi_ini_cgi}/php.ini")
fi
- case "${_phpbase}" in
- 53 | 54)
- install -D -m755 sapi/cgi/php-cgi "${pkgdir}/usr/bin/${pkgbase}-cgi"
- ;;
- *)
- make -j1 INSTALL_ROOT="${pkgdir}" install-cgi
- ;;
- esac
+ make -j1 INSTALL_ROOT="${pkgdir}" install-cgi
popd
}
# CGI end
@@ -891,7 +845,7 @@ package_php82-fpm() {
backup+=("${_build_sapi_ini_fpm}/php-fpm.d/www.conf")
fi
options=('!emptydirs')
- if ((_build_ini_per_sapi || _build_per_sapi)); then
+ if ((_build_ini_per_sapi)); then
pushd "build-${_sapi}"
else
pushd "build-cli"
@@ -916,7 +870,7 @@ package_php82-embed() {
depends=("${pkgbase}=${pkgver}" 'ncurses' 'systemd-libs' 'libxcrypt' 'acl' 'ncurses')
depends+=("${_sapi_depends[@]}")
options=('!emptydirs')
- if ((_build_ini_per_sapi || _build_per_sapi)); then
+ if ((_build_ini_per_sapi)); then
pushd "build-${_sapi}"
else
pushd "build-cli"
@@ -927,7 +881,11 @@ package_php82-embed() {
backup=("${_build_sapi_ini_embed}/php.ini")
fi
make -j1 INSTALL_ROOT="${pkgdir}" PHP_SAPI=embed install-sapi
- mv "${pkgdir}/usr/lib/libphp${_suffix_so}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
+ if ((_phpbase < 84)); then
+ mv "${pkgdir}/usr/lib/libphp${_suffix_so}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
+ else
+ mv "${pkgdir}/usr/lib/${pkgbase}/libphp${_suffix_so}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
+ fi
popd
patchelf --set-soname "lib${pkgbase}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
}
@@ -937,10 +895,10 @@ package_php82-embed() {
package_php82-phpdbg() {
_sapi="phpdbg"
options=('!emptydirs')
- pkgdesc="Interactive PHP debugger for ${pkgbase} ($_sapi)"
+ pkgdesc="Interactive PHP debugger for ${pkgbase}"
depends=("${pkgbase}=${pkgver}")
depends+=("${_sapi_depends[@]}")
- if ((_build_ini_per_sapi || _build_per_sapi)); then
+ if ((_build_ini_per_sapi)); then
pushd "build-${_sapi}"
else
pushd "build-cli"
@@ -961,7 +919,7 @@ package_php82-litespeed() {
pkgdesc="LiteSpeed SAPI for ${pkgbase}"
depends=("${pkgbase}=${pkgver}")
depends+=("${_sapi_depends[@]}")
- if ((_build_ini_per_sapi || _build_per_sapi)); then
+ if ((_build_ini_per_sapi)); then
pushd "build-${_sapi}"
else
pushd "build-cli"
@@ -980,34 +938,113 @@ package_php82-litespeed() {
# litespeed sapi end
###############################################################################
+# PEAR + PECL
+###############################################################################
+
+# PEAR
+package_php82-pear() {
+ pkgdesc="PHP Extension and Application Repository (PEAR) for ${pkgbase}"
+ depends=(
+ "${pkgbase}=${pkgver}"
+ "php${_phpbase}-xml${_suffix}=${pkgver}"
+ "php${_phpbase}-cli${_suffix}=${pkgver}"
+ "php${_phpbase}-phar${_suffix}=${pkgver}"
+ )
+ #backup=("${_build_sapi_ini_cli}/pear.conf")
+ install -d "${pkgdir}/usr/share/${pkgbase}/pear/htdocs"
+ install -d "${pkgdir}/usr/share/${pkgbase}/pear/data"
+ install -d "${pkgdir}/usr/share/${pkgbase}/pear/doc"
+ install -d "${pkgdir}/usr/share/${pkgbase}/pear/test"
+ install -d "${pkgdir}/usr/share/${pkgbase}/pear/cfg"
+ install -d "${pkgdir}/var/lib/${pkgbase}/pear/cache"
+ install -d "${pkgdir}/var/lib/${pkgbase}/pear/metadata"
+ install -d "${pkgdir}/var/lib/${pkgbase}/pear/download"
+ install -d "${pkgdir}/var/lib/${pkgbase}/pear/temp"
+ export PHP_PEAR_SYSCONF_DIR="${_build_sapi_ini_cli}"
+ pushd build-cli
+
+ cp "${srcdir}/php-${pkgver}/pear/install-pear-nozlib.phar" "pear/install-pear-nozlib.phar"
+
+ INSTALL_ROOT="${pkgdir}/" ./sapi/cli/php -n \
+ -d extension=modules/xml.so \
+ -d extension=modules/phar.so \
+ -d date.timezone=UTC -d memory_limit=64M -d short_open_tag=0 -d safe_mode=0 \
+ -d 'error_reporting=E_ALL&~E_DEPRECATED' -d detect_unicode=0 "pear/install-pear-nozlib.phar" \
+ -ds "${_phpbase}${_suffix}" \
+ --php "/usr/bin/${pkgbase}" \
+ --bin "/usr/bin" \
+ --man "/usr/share/man" \
+ --dir "/usr/share/${pkgbase}/pear" \
+ --data "/usr/share/${pkgbase}/pear/data" \
+ --doc "/usr/share/${pkgbase}/pear/doc" \
+ --test "/usr/share/${pkgbase}/pear/test" \
+ --www "/usr/share/${pkgbase}/pear/htdocs" \
+ --config "/usr/share/${pkgbase}/pear/cfg" \
+ --force
+ # fix pear.conf with unserialize
+ # first arg: path to pear.conf
+ # second arg: PEAR base /var path
+ ./sapi/cli/php -n ../pear-config-patcher.php \
+ "${pkgdir}/${_build_sapi_ini_cli}/pear.conf" \
+ "/var/lib/${pkgbase}/pear"
+ popd
+ # remove unneeded files
+ rm -rf "${pkgdir}"/.{channels,depdb,depdblock,filemap,lock,registry}
+ #rename binaries
+ for i in pear peardev pecl; do
+ _target="${pkgbase/php/$i}"
+ # fix hardcoded paths
+ sed "s|PHP=php|PHP=\"/usr/bin/${pkgbase}\"|g; s|\"/usr/bin/php\"|\"/usr/bin/${pkgbase}\"|g; s| -n | |g" \
+ -i "${pkgdir}/usr/bin/${i}"
+ if [[ "$i" == "pecl" ]]; then
+ echo "Moving ${pkgdir}/usr/bin/${i} => ${srcdir}/${pkgbase}-pecl-bin/"
+ mkdir -p "${srcdir}/${pkgbase}-pecl-bin/"
+ mv "${pkgdir}/usr/bin/pecl" "${srcdir}/${pkgbase}-pecl-bin/"
+ else
+ echo "Moving ${pkgdir}/usr/bin/${i} => ${pkgdir}/usr/bin/${_target}"
+ mv "${pkgdir}/usr/bin/${i}" "${pkgdir}/usr/bin/${_target}"
+ fi
+ done
+}
+# PEAR end
+
+# PECL
+package_php82-pecl() {
+ pkgdesc="PHP Extension Community Library (PECL) for ${pkgbase}"
+ depends=("php${_phpbase}-pear${_suffix}=${pkgver}")
+ _target="${pkgbase/php/pecl}"
+ install -D -m755 "${srcdir}/${pkgbase}-pecl-bin/pecl" "${pkgdir}/usr/bin/${_target}"
+}
+
+###############################################################################
# PHP Modules: First need
###############################################################################
# OpenSSL
package_php82-openssl() {
- pkgdesc="OpenSSL module for ${pkgbase}"
+ pkgdesc="OpenSSL module for php82"
depends=("${_ext_depends_openssl[@]}")
_install_module openssl
}
# Json
package_php82-json() {
- pkgdesc="json module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="json module for php82"
+ depends=("php82=${pkgver}")
_install_module json
}
# pdo
package_php82-pdo() {
- pkgdesc="pdo module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="pdo module for php82"
+ depends=("php82=${pkgver}")
_install_module pdo
}
# mbstring
package_php82-mbstring() {
- pkgdesc="mbstring module for ${pkgbase}"
+ pkgdesc="mbstring module for php82"
depends=("${_ext_depends_mbstring[@]}")
_install_module mbstring
}
@@ -1015,8 +1052,8 @@ package_php82-mbstring() {
# phar
package_php82-phar() {
- pkgdesc="phar module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="phar module for php82"
+ depends=("php82=${pkgver}")
_install_module phar
}
@@ -1027,51 +1064,51 @@ package_php82-phar() {
# XML modules combined package
package_php82-xml() {
- pkgdesc="xml modules for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libxml2')
+ pkgdesc="xml modules for php82"
+ depends=("php82=${pkgver}" 'libxml2')
_install_module xml
}
package_php82-wddx() {
- pkgdesc="wddx module for ${pkgbase}"
+ pkgdesc="wddx module for php82"
depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
_install_module wddx
}
package_php82-simplexml() {
- pkgdesc="simplexml module for ${pkgbase}"
+ pkgdesc="simplexml module for php82"
depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
_install_module simplexml
}
package_php82-dom() {
- pkgdesc="dom module for ${pkgbase}"
+ pkgdesc="dom module for php82"
depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
_install_module dom
}
package_php82-xmlreader() {
- pkgdesc="xmlreader module for ${pkgbase}"
+ pkgdesc="xmlreader module for php82"
depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
_install_module xmlreader
}
package_php82-xmlwriter() {
- pkgdesc="xmlwriter module for ${pkgbase}"
+ pkgdesc="xmlwriter module for php82"
depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
_install_module xmlwriter
}
# Tidy
package_php82-tidy() {
- pkgdesc="tidy module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'tidy')
+ pkgdesc="tidy module for php82"
+ depends=("php82=${pkgver}" 'tidy')
_install_module tidy
}
# XSL
package_php82-xsl() {
- pkgdesc="xsl module for ${pkgbase}"
+ pkgdesc="xsl module for php82"
depends=("php${_phpbase}-xml${_suffix}=${pkgver}" "php${_phpbase}-dom${_suffix}=${pkgver}")
depends+=('libxslt')
_install_module xsl
@@ -1083,7 +1120,7 @@ package_php82-xsl() {
# MySQL
package_php82-mysql() {
- pkgdesc="MySQL modules for ${pkgbase}"
+ pkgdesc="MySQL modules for php82"
depends=("${_ext_depends_mysql[@]}")
_install_module mysqlnd
_install_module mysql
@@ -1093,7 +1130,7 @@ package_php82-mysql() {
# pdo_sqlite + sqlite3
package_php82-sqlite() {
- pkgdesc="sqlite module for ${pkgbase}"
+ pkgdesc="sqlite module for php82"
depends=("${_ext_depends_sqlite[@]}")
_install_module sqlite3
_install_module pdo_sqlite
@@ -1101,7 +1138,7 @@ package_php82-sqlite() {
# ODBC
package_php82-odbc() {
- pkgdesc="ODBC modules for ${pkgbase}"
+ pkgdesc="ODBC modules for php82"
depends=("${_ext_depends_odbc[@]}")
_install_module odbc
_install_module pdo_odbc
@@ -1109,7 +1146,7 @@ package_php82-odbc() {
# PostgreSQL
package_php82-pgsql() {
- pkgdesc="PostgreSQL modules for ${pkgbase}"
+ pkgdesc="PostgreSQL modules for php82"
depends=("${_ext_depends_pgsql[@]}")
_install_module pgsql
_install_module pdo_pgsql
@@ -1117,35 +1154,35 @@ package_php82-pgsql() {
# interbase
package_php82-interbase() {
- pkgdesc="interbase module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" "libfbclient")
+ pkgdesc="interbase module for php82"
+ depends=("php82=${pkgver}" "libfbclient")
_install_module interbase
}
# firebird
package_php82-firebird() {
- pkgdesc="pdo_firebird module for ${pkgbase}"
+ pkgdesc="pdo_firebird module for php82"
depends=("${_ext_depends_firebird[@]}")
_install_module pdo_firebird
}
# pdo_dblib
package_php82-dblib() {
- depends=("${pkgbase}=${pkgver}" 'freetds')
- pkgdesc="pdo_dblib module for ${pkgbase}"
+ depends=("php82=${pkgver}" 'freetds')
+ pkgdesc="pdo_dblib module for php82"
_install_module pdo_dblib
}
# mssql
package_php82-mssql() {
- depends=("${pkgbase}=${pkgver}" 'freetds')
- pkgdesc="mssql module for ${pkgbase}"
+ depends=("php82=${pkgver}" 'freetds')
+ pkgdesc="mssql module for php82"
_install_module mssql
}
# Dba
package_php82-dba() {
- pkgdesc="dba module for ${pkgbase}"
+ pkgdesc="dba module for php82"
depends=("${_ext_depends_dba[@]}")
_install_module dba
}
@@ -1156,40 +1193,36 @@ package_php82-dba() {
# Intl
package_php82-intl() {
- pkgdesc="intl module for ${pkgbase}"
+ pkgdesc="intl module for php82"
depends=("${_ext_depends_intl[@]}")
- if ((_build_with_custom_icu)); then
- # Patch to proper path inside intl.so
- patchelf --set-rpath "/usr/lib/${pkgbase}/icu${_pkgver_icu}/lib" "build-cli/modules/intl.so"
- fi
_install_module intl
}
# Recode
package_php82-recode() {
- pkgdesc="recode module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'recode')
+ pkgdesc="recode module for php82"
+ depends=("php82=${pkgver}" 'recode')
_install_module recode
}
# gettext
package_php82-gettext() {
- pkgdesc="gettext module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="gettext module for php82"
+ depends=("php82=${pkgver}")
_install_module gettext
}
# iconv
package_php82-iconv() {
- pkgdesc="iconv module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="iconv module for php82"
+ depends=("php82=${pkgver}")
_install_module iconv
}
# calendar
package_php82-calendar() {
- pkgdesc="calendar module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="calendar module for php82"
+ depends=("php82=${pkgver}")
_install_module calendar
}
@@ -1200,22 +1233,22 @@ package_php82-calendar() {
# GD
package_php82-gd() {
- pkgdesc="gd module for ${pkgbase}"
+ pkgdesc="gd module for php82"
depends=("${_ext_depends_gd[@]}")
_install_module gd
}
# exif
package_php82-exif() {
- pkgdesc="exif module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="exif module for php82"
+ depends=("php82=${pkgver}")
_install_module exif
}
# fileinfo
package_php82-fileinfo() {
- pkgdesc="fileinfo module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="fileinfo module for php82"
+ depends=("php82=${pkgver}")
_install_module fileinfo
}
@@ -1226,15 +1259,15 @@ package_php82-fileinfo() {
# bcmath
package_php82-bcmath() {
- pkgdesc="bcmath module for ${pkgbase}"
- depends=("${pkgbase}")
+ pkgdesc="bcmath module for php82"
+ depends=("php82")
_install_module bcmath
}
# gmp
package_php82-gmp() {
- pkgdesc="gmp module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'gmp')
+ pkgdesc="gmp module for php82"
+ depends=("php82=${pkgver}" 'gmp')
_install_module gmp
}
@@ -1244,15 +1277,15 @@ package_php82-gmp() {
# Enchant
package_php82-enchant() {
- pkgdesc="enchant module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'enchant' 'libvoikko' 'hspell' 'hunspell' 'nuspell' 'aspell')
+ pkgdesc="enchant module for php82"
+ depends=("php82=${pkgver}" 'enchant' 'libvoikko' 'hspell' 'hunspell' 'nuspell' 'aspell')
_install_module enchant
}
# Pspell
package_php82-pspell() {
- pkgdesc="pspell module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'aspell')
+ pkgdesc="pspell module for php82"
+ depends=("php82=${pkgver}" 'aspell')
_install_module pspell
}
@@ -1262,15 +1295,15 @@ package_php82-pspell() {
# bz2
package_php82-bz2() {
- pkgdesc="bz2 module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'bzip2')
+ pkgdesc="bz2 module for php82"
+ depends=("php82=${pkgver}" 'bzip2')
_install_module bz2
}
# Zip
package_php82-zip() {
- pkgdesc="zip module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libzip')
+ pkgdesc="zip module for php82"
+ depends=("php82=${pkgver}" 'libzip')
_install_module zip
}
@@ -1280,57 +1313,57 @@ package_php82-zip() {
# curl
package_php82-curl() {
- pkgdesc="curl module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" "curl")
+ pkgdesc="curl module for php82"
+ depends=("php82=${pkgver}" "curl")
_install_module curl
}
# SOAP
package_php82-soap() {
- pkgdesc="soap module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libxml2')
+ pkgdesc="soap module for php82"
+ depends=("php82=${pkgver}" 'libxml2')
_install_module soap
}
# FTP
package_php82-ftp() {
- pkgdesc="FTP module for ${pkgbase}"
+ pkgdesc="FTP module for php82"
depends=("${_ext_depends_ftp[@]}")
_install_module ftp
}
# ldap
package_php82-ldap() {
- pkgdesc="ldap module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libldap' 'libsasl')
+ pkgdesc="ldap module for php82"
+ depends=("php82=${pkgver}" 'libldap' 'libsasl')
_install_module ldap
}
# SNMP
package_php82-snmp() {
- pkgdesc="snmp module for ${pkgbase}"
+ pkgdesc="snmp module for php82"
depends=("${_ext_depends_snmp[@]}")
_install_module snmp
}
# XML-RPC
package_php82-xmlrpc() {
- pkgdesc="xmlrpc module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libxml2')
+ pkgdesc="xmlrpc module for php82"
+ depends=("php82=${pkgver}" 'libxml2')
_install_module xmlrpc
}
# Imap
package_php82-imap() {
- pkgdesc="imap module for ${pkgbase}"
+ pkgdesc="imap module for php82"
depends=("${_ext_depends_imap[@]}")
_install_module imap
}
# sockets
package_php82-sockets() {
- pkgdesc="sockets module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="sockets module for php82"
+ depends=("php82=${pkgver}")
_install_module sockets
}
@@ -1340,15 +1373,15 @@ package_php82-sockets() {
# Sodium
package_php82-sodium() {
- pkgdesc="sodium (libsodium) module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" "libsodium")
+ pkgdesc="sodium (libsodium) module for php82"
+ depends=("php82=${pkgver}" "libsodium")
_install_module sodium
}
# Mcrypt
package_php82-mcrypt() {
- pkgdesc="mcrypt module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libmcrypt')
+ pkgdesc="mcrypt module for php82"
+ depends=("php82=${pkgver}" 'libmcrypt')
_install_module mcrypt
}
@@ -1359,8 +1392,8 @@ package_php82-mcrypt() {
# Opcache
package_php82-opcache() {
- pkgdesc="opcache zend module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="opcache zend module for php82"
+ depends=("php82=${pkgver}")
_install_module opcache
}
@@ -1370,43 +1403,43 @@ package_php82-opcache() {
# posix
package_php82-posix() {
- pkgdesc="posix module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="posix module for php82"
+ depends=("php82=${pkgver}")
_install_module posix
}
# pcntl
package_php82-pcntl() {
- pkgdesc="pcntl module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="pcntl module for php82"
+ depends=("php82=${pkgver}")
_install_module pcntl
}
# shmop
package_php82-shmop() {
- pkgdesc="shmop module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="shmop module for php82"
+ depends=("php82=${pkgver}")
_install_module shmop
}
# sysvmsg
package_php82-sysvmsg() {
- pkgdesc="sysvmsg module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="sysvmsg module for php82"
+ depends=("php82=${pkgver}")
_install_module sysvmsg
}
# sysvsem
package_php82-sysvsem() {
- pkgdesc="sysvsem module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="sysvsem module for php82"
+ depends=("php82=${pkgver}")
_install_module sysvsem
}
# sysvshm
package_php82-sysvshm() {
- pkgdesc="sysvshm module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="sysvshm module for php82"
+ depends=("php82=${pkgver}")
_install_module sysvshm
}
@@ -1416,29 +1449,29 @@ package_php82-sysvshm() {
# Ffi
package_php82-ffi() {
- pkgdesc="ffi module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libffi')
+ pkgdesc="ffi module for php82"
+ depends=("php82=${pkgver}" 'libffi')
_install_module ffi
}
# ctype
package_php82-ctype() {
- pkgdesc="ctype module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="ctype module for php82"
+ depends=("php82=${pkgver}")
_install_module ctype
}
# tokenizer
package_php82-tokenizer() {
- pkgdesc="tokenizer module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}")
+ pkgdesc="tokenizer module for php82"
+ depends=("php82=${pkgver}")
_install_module tokenizer
}
# libedit/readline
package_php82-readline() {
- pkgdesc="readline (libedit version) module for ${pkgbase}"
- depends=("${pkgbase}=${pkgver}" 'libedit')
+ pkgdesc="readline (libedit version) module for php82"
+ depends=("php82=${pkgver}" 'libedit')
_install_module readline
}
@@ -1446,7 +1479,9 @@ package_php82-readline() {
sha256sums=('e6b8530d747000eebb0089249ec70a3b14add7b501337046700544883f62b17b'
'ba72fc64f77822755a469314160d5889d5298f4eb5758dd7939dac9b811afe52'
'6d0ad9becb5470ce8e5929d7d45660b0f32579038978496317544c5310281a91'
+ '0b7e98dca9c996ec10cb9b3f6296bb7547c68797fd5f35006fdfd3e97700672d'
'8cc44d51bb2506399ec176f70fe110f0c9e1f7d852a5303a2cd1403402199707'
+ 'b5a6b99214dce395a058f40bffee50511adaf58ee84ee6fbb7ca7bdc3c07cb3c'
'169d52d6fc78e24e88a5923715d965bc247a62697c59d06d468c1908eba1c189'
'558e780e93dfa861a366c49b4d156d8fc43f17898f001ae6033ec63c33d5d41c'
'40bcc1e5058602302198d0925e431495391d8469499593af477f59d84d32f764'
diff --git a/libxml-pear.patch b/libxml-pear.patch
new file mode 100644
index 000000000000..b8a9cc326464
--- /dev/null
+++ b/libxml-pear.patch
@@ -0,0 +1,11 @@
+--- php-8.3.9/ext/xml/compat.c
++++ php-8.3.9/ext/xml/compat.c
+@@ -375,7 +375,7 @@
+ if (ret == NULL)
+ ret = xmlGetDocEntity(parser->parser->myDoc, name);
+
+- if (ret == NULL || (parser->parser->instate != XML_PARSER_ENTITY_VALUE && parser->parser->instate != XML_PARSER_ATTRIBUTE_VALUE)) {
++ if (ret == NULL || parser->parser->instate == XML_PARSER_CONTENT) {
+ if (ret == NULL || ret->etype == XML_INTERNAL_GENERAL_ENTITY || ret->etype == XML_INTERNAL_PARAMETER_ENTITY || ret->etype == XML_INTERNAL_PREDEFINED_ENTITY) {
+ /* Predefined entities will expand unless no cdata handler is present */
+ if (parser->h_default && ! (ret && ret->etype == XML_INTERNAL_PREDEFINED_ENTITY && parser->h_cdata)) {
diff --git a/pear-config-patcher.php b/pear-config-patcher.php
new file mode 100644
index 000000000000..ac6a1254282b
--- /dev/null
+++ b/pear-config-patcher.php
@@ -0,0 +1,42 @@
+<?php
+if (!isset($argv, $argc)) {
+ echo "No command line args provided\n";
+ exit(1);
+}
+if ($argc < 3) {
+ echo "Not all command line args provided\n";
+ exit(2);
+}
+$targetFile = $confFile = $argv[1];
+$varPath = $argv[2];
+
+$data = '';
+$file = fopen($confFile, "r");
+
+if ($file !== false) {
+ while(!feof($file)) {
+ $line = fgets($file);
+ $serialized = @unserialize($line);
+ if (is_array($serialized)) {
+ $serialized['temp_dir'] = "{$varPath}/temp";
+ $serialized['cache_dir'] = "{$varPath}/cache";
+ $serialized['download_dir'] = "{$varPath}/download";
+ $serialized['metadata_dir'] = "{$varPath}/metadata";
+ $data .= @serialize($serialized);
+ $data .= "\n";
+ } else {
+ $data .= $line;
+ }
+ }
+ fclose($file);
+ if (false !== file_put_contents($targetFile, $data)) {
+ echo "Written to $targetFile\n";
+ } else {
+ echo "Failed to write to $targetFile\n";
+ exit(3);
+ }
+} else {
+ echo "File was not found {$confFile}\n";
+ exit(4);
+}
+exit(0);