diff options
author | Eugene Lamskoy | 2024-07-24 23:30:33 +0300 |
---|---|---|
committer | Eugene Lamskoy | 2024-07-24 23:30:33 +0300 |
commit | bff4078a886db606ca90c5074ced66c15ae6d136 (patch) | |
tree | c39ffa0398432aefed3c3e2f0edf48a03d13de16 | |
parent | 620f3a6399a8dde7ed6fa576b04a5bcdbfcf9f03 (diff) | |
download | aur-bff4078a886db606ca90c5074ced66c15ae6d136.tar.gz |
Pear/pecl restored
-rw-r--r-- | .SRCINFO | 21 | ||||
-rw-r--r-- | PKGBUILD | 379 | ||||
-rw-r--r-- | libxml-pear.patch | 11 | ||||
-rw-r--r-- | pear-config-patcher.php | 42 |
4 files changed, 278 insertions, 175 deletions
@@ -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 @@ -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); |