summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD1905
1 files changed, 1477 insertions, 428 deletions
diff --git a/PKGBUILD b/PKGBUILD
index d50d6af14921..8f2ca50676b4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,514 +1,1563 @@
-# $Id$
-# Maintainer: Volkan Gümüs <hallo@f1-computer.de>
-# Contributor: Felix Yan <felixonmars@archlinux.org>
-# Contributor: Pierre Schmitz <pierre@archlinux.de>
-
-pkgbase=php53
-_pkgbase=${pkgbase%53}
-pkgname=("${pkgbase}"
- "${pkgbase}-cgi"
- "${pkgbase}-apache"
- "${pkgbase}-fpm"
- "${pkgbase}-embed"
- "${pkgbase}-dblib"
- "${pkgbase}-pear"
- "${pkgbase}-enchant"
- "${pkgbase}-gd"
- "${pkgbase}-imap"
- "${pkgbase}-intl"
- "${pkgbase}-ldap"
- "${pkgbase}-mcrypt"
- "${pkgbase}-mssql"
- "${pkgbase}-odbc"
- "${pkgbase}-pgsql"
- "${pkgbase}-pspell"
- "${pkgbase}-snmp"
- "${pkgbase}-sqlite"
- "${pkgbase}-tidy"
- "${pkgbase}-xsl")
-pkgver=5.3.29
-_suhosinver=5.3.9-0.9.10
-pkgrel=9
-pkgdesc="A general-purpose scripting language that is especially suited to web development"
-arch=('i686' 'x86_64')
+###############################################################################
+# Generated by arch-phpbs: https://github.com/lamskoy/arch-phpbs
+#
+# Maintaining/co-maintaining on AUR: php81 php80 php74 php73 php72 php71 php70 php55 php54 php53
+#
+# Thanks to:
+#
+# AUR php80 Co-maintainer: Timo Sarawinski
+# AUR php70 and php71 Co-maintainer: William Gathoye <william@gathoye.be>
+# AUR php74 Co-maintainer: Tomasz Gruszka <tompear79@gmail.com>
+# AUR php73 Co-maintainer: Matt Harrison <matt@harrison.us.com>
+# AUR php73 Contirubutor: Pierre Schmitz <pierre@archlinux.de>
+# AUR php55 Original maintainer: Raphaël Doursenaud <rdoursenaud@gmail.com>
+# AUR php53 Original maintainer: Felix Yan <felixonmars@archlinux.org>
+###############################################################################
+_phpbase="53"
+_suffix=""
+pkgver="5.3.29"
+pkgrel="18"
+pkgbase="php53"
+pkgdesc="PHP 5.3.29 compiled as to not conflict with mainline php"
+_cppflags=" -DU_USING_ICU_NAMESPACE=1 -DOPENSSL_NO_SSL3=1 -DOPENSSL_NO_SSL2=1 -DU_DEFINE_FALSE_AND_TRUE=1 "
+_build_apache_cfg="etc/httpd/conf/extra"
+_build_bundled_gd="1"
+_build_conf_d="etc/php53/conf.d"
+_build_forced_openssl_11="0"
+_build_fpm_name="php-fpm53"
+_build_fpm_service_name="php53-fpm"
+_build_icu_src_dir="icu/source"
+_build_ini_per_sapi="0"
+_build_mysql_socket="/run/mysqld/mysqld.sock"
+_build_openssl_v10_patch="1"
+_build_openssl_v11_patch="0"
+_build_per_sapi="1"
+_build_phpdbg="0"
+_build_sapi_ini_apache="etc/php53"
+_build_sapi_ini_cgi="etc/php53"
+_build_sapi_ini_cli="etc/php53"
+_build_sapi_ini_embed="etc/php53"
+_build_sapi_ini_fpm="etc/php53"
+_build_sapi_ini_litespeed="etc/php53"
+_build_sapi_ini_phpdbg="etc/php53"
+_build_sapi_litespeed="--with-litespeed"
+_build_shared_gd="1"
+_build_shared_json="1"
+_build_shared_libedit="0"
+_build_shared_mysqlnd="1"
+_build_shared_openssl="0"
+_build_shared_pdo="0"
+_build_system_timezonedb="0"
+_build_update_sqlite="0"
+_build_uses_argon="0"
+_build_uses_lmdb="0"
+_build_with_custom_icu="1"
+_pkgver_icu="64-1"
+_priority_default="20"
+_priority_dom="16"
+_priority_json="15"
+_priority_mysqlnd="10"
+_priority_opcache="10"
+_priority_openssl="05"
+_priority_pdo="10"
+_priority_xml="15"
+_suffix=""
+_suffix_so="5"
+pkgname=(
+ "php53"
+ "php53-cli"
+ "php53-cgi"
+ "php53-fpm"
+ "php53-embed"
+ "php53-apache"
+ "php53-litespeed"
+ "php53-pear"
+ "php53-pecl"
+ "php53-xml"
+ "php53-xsl"
+ "php53-xmlreader"
+ "php53-xmlwriter"
+ "php53-wddx"
+ "php53-dom"
+ "php53-simplexml"
+ "php53-mysql"
+ "php53-phar"
+ "php53-pcntl"
+ "php53-posix"
+ "php53-shmop"
+ "php53-sockets"
+ "php53-sysvmsg"
+ "php53-sysvsem"
+ "php53-sysvshm"
+ "php53-tokenizer"
+ "php53-dba"
+ "php53-pgsql"
+ "php53-odbc"
+ "php53-firebird"
+ "php53-interbase"
+ "php53-dblib"
+ "php53-sqlite"
+ "php53-mssql"
+ "php53-gd"
+ "php53-exif"
+ "php53-tidy"
+ "php53-iconv"
+ "php53-xmlrpc"
+ "php53-bcmath"
+ "php53-gmp"
+ "php53-zip"
+ "php53-bz2"
+ "php53-json"
+ "php53-fileinfo"
+ "php53-ctype"
+ "php53-recode"
+ "php53-mbstring"
+ "php53-pspell"
+ "php53-enchant"
+ "php53-intl"
+ "php53-calendar"
+ "php53-gettext"
+ "php53-soap"
+ "php53-ftp"
+ "php53-curl"
+ "php53-snmp"
+ "php53-ldap"
+ "php53-imap"
+ "php53-mcrypt"
+)
+source=(
+ "make-tests.patch"
+ "pear-config-patcher.php"
+ "php-makefile-patcher.php"
+ "php-apache.conf"
+ "https://php.net/distributions/php-${pkgver}.tar.bz2"
+ "https://github.com/unicode-org/icu/releases/download/release-${_pkgver_icu}/icu4c-${_pkgver_icu/-/_}-src.tgz"
+ "php53-phar-names.patch"
+ "openssl-1.0.patch"
+ "openssl-sslv3.patch"
+ "openssl-sslv3-consts.patch"
+ "dba-5.3-support.patch"
+ "cve-php5.3.patch"
+ "mpm-apache.patch"
+ "fpm-numeric-uid-gid.patch"
+ "fpm-reload-sighup.patch"
+ "mysql-socket-php5.3.patch"
+ "php-enchant-php5.3.patch"
+ "php-enchant-depr.patch"
+ "recode-php5.3.patch"
+ "php-mysqlnd-charsets.patch"
+ "php-mysqlnd.patch"
+ "php-tests.patch"
+ "debian-php-5.3.29.patch"
+ "php-phpinfo.patch"
+)
+depends=(
+)
+makedepends=(
+ "acl"
+ "libtool"
+ "autoconf"
+ "automake"
+ "patchelf"
+ "gawk"
+ "sed"
+ "bash"
+ "python"
+ "libxml2"
+ "pam"
+ "krb5"
+ "zlib"
+ "libedit"
+ "smtp-forwarder"
+ "pcre"
+ "apache"
+ "ncurses"
+ "libxcrypt"
+ "systemd"
+ "systemd-libs"
+ "coreutils"
+ "findutils"
+ "autoconf2.13"
+ "libxslt"
+ "e2fsprogs"
+ "openssl-1.0"
+ "db5.3"
+ "postgresql-libs"
+ "unixodbc"
+ "libfbclient"
+ "libfbclient"
+ "freetds"
+ "sqlite"
+ "gd"
+ "tidy"
+ "gmp"
+ "libzip"
+ "recode"
+ "aspell"
+ "enchant"
+ "libvoikko"
+ "hspell"
+ "hunspell"
+ "nuspell"
+ "aspell"
+ "curl"
+ "net-snmp"
+ "libsasl"
+ "libldap"
+ "c-client"
+ "pam"
+ "libmcrypt"
+)
+arch=(
+)
+_patches=(
+ "php53-phar-names.patch"
+ "openssl-1.0.patch"
+ "openssl-sslv3.patch"
+ "openssl-sslv3-consts.patch"
+ "dba-5.3-support.patch"
+ "cve-php5.3.patch"
+ "mpm-apache.patch"
+ "fpm-numeric-uid-gid.patch"
+ "fpm-reload-sighup.patch"
+ "mysql-socket-php5.3.patch"
+ "php-enchant-php5.3.patch"
+ "php-enchant-depr.patch"
+ "recode-php5.3.patch"
+ "php-mysqlnd-charsets.patch"
+ "php-mysqlnd.patch"
+ "php-tests.patch"
+ "debian-php-5.3.29.patch"
+ "php-phpinfo.patch"
+)
+_sapi_depends=(
+ "libxml2"
+ "pcre2"
+ "libedit"
+)
+_ext_depends_snmp=(
+ "php53=5.3.29"
+ "net-snmp"
+ "openssl-1.0"
+)
+_ext_depends_ftp=(
+ "php53=5.3.29"
+ "openssl-1.0"
+)
+_ext_depends_intl=(
+ "php53=5.3.29"
+)
+_ext_depends_imap=(
+ "php53=5.3.29"
+ "pam"
+ "krb5"
+ "c-client"
+ "libxcrypt"
+ "openssl-1.0"
+)
+_ext_depends_gd=(
+ "php53=5.3.29"
+ "gd"
+ "libxpm"
+ "libpng"
+ "libjpeg"
+)
+_ext_depends_mysql=(
+ "php53=5.3.29"
+)
+_ext_depends_dba=(
+ "php53=5.3.29"
+ "db5.3"
+)
+_ext_depends_odbc=(
+ "php53=5.3.29"
+ "unixodbc"
+)
+_ext_depends_pgsql=(
+ "php53=5.3.29"
+ "postgresql-libs"
+)
+_ext_depends_firebird=(
+ "php53=5.3.29"
+ "libfbclient"
+)
+_ext_depends_sqlite=(
+ "php53=5.3.29"
+ "sqlite"
+)
+_ext_depends_mbstring=(
+ "php53=5.3.29"
+)
+_ext_depends_openssl=(
+ "php53=5.3.29"
+ "krb5"
+ "e2fsprogs"
+ "openssl-1.0"
+)
+_phpconfig="\
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --localstatedir=/var \
+ --with-layout=GNU \
+ --disable-debug \
+ --mandir=/usr/share/man \
+ --srcdir=../php-${pkgver} \
+ --libdir=/usr/lib/php${_phpbase}${_suffix} \
+ --datadir=/usr/share/php${_phpbase}${_suffix} \
+ --program-suffix=${_phpbase}${_suffix} \
+ --with-config-file-scan-dir=/${_build_conf_d} \
+ --enable-filter \
+ --with-pear \
+ --enable-session \
+ --with-mhash=/usr \
+ --with-kerberos \
+ --with-mysql-sock=${_build_mysql_socket} \
+ --enable-mysqlnd-compression-support \
+ --with-zlib-dir=/usr \
+ --enable-libxml \
+ --with-pcre-regex=/usr \
+ --with-openssl=/usr \
+ --enable-pdo \
+ --with-libedit \
+ --enable-zend-multibyte"
+_phpextensions="\
+ --enable-xml=shared \
+ --with-xsl=shared \
+ --enable-xmlreader=shared \
+ --enable-xmlwriter=shared \
+ --enable-wddx=shared \
+ --enable-dom=shared \
+ --enable-simplexml=shared \
+ --enable-mysqlnd=shared \
+ --with-mysql=shared,mysqlnd \
+ --with-mysqli=shared,mysqlnd \
+ --with-pdo-mysql=shared,mysqlnd \
+ --enable-phar=shared \
+ --enable-pcntl=shared \
+ --enable-posix=shared \
+ --enable-shmop=shared \
+ --enable-sockets=shared \
+ --enable-sysvmsg=shared \
+ --enable-sysvsem=shared \
+ --enable-sysvshm=shared \
+ --enable-tokenizer=shared
+ --enable-dba=shared \
+ --with-db4=/usr \
+ --without-gdbm \
+ --with-cdb \
+ --with-pgsql=shared,/usr \
+ --with-pdo-pgsql=shared,/usr \
+ --with-unixODBC=shared,/usr \
+ --with-pdo-odbc=shared,unixODBC,/usr \
+ --with-pdo-firebird=shared,/usr \
+ --with-interbase=shared,/usr \
+ --with-pdo-dblib=shared,/usr \
+ --with-pdo-sqlite=shared,/usr \
+ --with-sqlite3=shared,/usr \
+ --with-mssql=shared,/usr \
+ --with-gd=shared \
+ --enable-gd-native-ttf
+ --with-webp-dir=/usr \
+ --with-jpeg-dir=/usr \
+ --with-png-dir=/usr \
+ --with-xpm-dir=/usr \
+ --with-freetype-dir=/usr \
+ --enable-exif=shared \
+ --with-tidy=shared,/usr \
+ --with-iconv=shared \
+ --with-xmlrpc=shared \
+ --enable-bcmath=shared \
+ --with-gmp=shared,/usr \
+ --enable-zip=shared \
+ --with-bz2=shared,/usr \
+ --enable-json=shared \
+ --enable-fileinfo=shared \
+ --enable-ctype=shared \
+ --with-recode=shared \
+ --enable-mbstring=shared \
+ --enable-mbregex \
+ --enable-mbregex-backtrack \
+ --with-pspell=shared,/usr \
+ --with-enchant=shared,/usr \
+ --enable-intl=shared \
+ --enable-calendar=shared \
+ --with-gettext=shared,/usr \
+ --enable-soap=shared \
+ --enable-ftp=shared \
+ --with-curl=shared,/usr \
+ --with-snmp=shared,/usr \
+ --with-ldap=shared,/usr \
+ --with-ldap-sasl=/usr \
+ --with-imap=shared,/usr \
+ --with-imap-ssl=yes \
+ --with-mcrypt=shared"
+_phpextensions_fpm="\
+ --with-fpm-user=http \
+ --with-fpm-group=http"
+
+
+options=('!lto')
+arch=("$CARCH")
+checkdepends=('procps-ng' 'smtp-forwarder')
license=('PHP')
-url='http://php.net'
-makedepends=('apache' 'c-client' 'postgresql-libs' 'libldap' 'smtp-forwarder'
- 'sqlite' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds'
- 'libmcrypt' 'tidyhtml' 'aspell' 'libltdl' 'libpng' 'libjpeg' 'freetype2' 'icu'
- 'curl' 'libxslt' 'openssl-1.0' 'db' 'gmp' 'systemd')
-
-source=("http://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz"
- "https://distfiles.macports.org/php5/suhosin-patch-${_suhosinver}.patch.gz"
- 'php.ini.patch' 'apache.conf' 'php-fpm.conf.in.patch'
- 'logrotate.d.php-fpm' 'php-fpm.service' 'php-fpm.tmpfiles'
- 'suhosin.patch'
- 'CVE-2014-3587.patch' 'CVE-2014-3597.patch' 'CVE-2014-3668.patch'
- 'CVE-2014-3669.patch' 'CVE-2014-3670.patch' 'curl_embedded_null.patch'
- 'CVE-2014-8142.patch' 'CVE-2015-0231.patch' 'CVE-2014-9705.patch'
- 'CVE-2015-0273.patch' 'CVE-2015-2301.patch' 'CVE-2015-2305.patch'
- 'CVE-2015-2783.patch' 'CVE-2015-2787.patch' 'CVE-2015-3330.patch'
- 'CVE-2015-3329.patch')
-sha1sums=('8772d7419511f9f066fb17929194b5492680ec9b'
- '7b9ef5c3e0831154df0d6290aba0989ca90138ed'
- 'b42a385359f5d033748d4d8f44a9f7a0469f628a'
- '82776db01f70b9186ba455de22eb06fe193f1d30'
- '2247fb95547feefdc898fc2c01bae1817ec2dc2a'
- 'ce75999f51fa780c68e1575cca1d660ea60a5e64'
- '2a3607973db41aa08f7aba11057218e2d88732b7'
- '3c011681562bb620b1717b3829cb354461dd94d5'
- '4d9fea0b7ab856c59ddbf722fe6c95b8e479af9b'
- 'b5caa85fd1b76a3ece056ab5441852330989640b'
- '9f2aa7c2514cb66204f9f5c3dc5f8ebdda238c78'
- '4672c18ece397b2f99ad0c992f61220e210b2dc1'
- '454e96af5cab1f649fceca61c0afb46ae73179f5'
- '2f368143bcdaae4659a65103ffdeb71cac12c5cf'
- 'ede78d11b7d4d6c304253bfd358607e160a3918a'
- 'e97ea93d37ffbf6c3025281202d2e807facb4e7e'
- '0ab48f282d62058318d08c44607aac89912f78d6'
- 'b535103d79ba9791c22a841d5d72497dec3dd93d'
- '7cb38769807eb7d35ff7f3eaf1cce408d8ad2676'
- '066fe3a84e1aabaf45afe26470cd769b9e3ab79a'
- '4968abe76ab18c15f85111b3e78dba0059f948ce'
- '18e3f12ad04adf4cc59aa5862628ab0d032c76ef'
- '4d9551ec6c2462cde45d0e556edf6d9e792c15b4'
- '248dc92602721c193f3906f3eb7d98cd5499ba40'
- '40fc97494110e9b312ea0f5bade8aa0b7043f40e')
+url='http://www.php.net'
+
+################################################################################
+# Prepare it
+################################################################################
prepare() {
- cd ${srcdir}
-
- msg "Fix the suhosin patch"
- patch -l -i suhosin.patch
- sed -i 's/1997-2004/1997-2014/g' suhosin-patch-${_suhosinver}.patch
- sed -i 's/1997-2012/1997-2014/g' suhosin-patch-${_suhosinver}.patch
-
- cd ${srcdir}/${_pkgbase}-${pkgver}
-
- # TODO: some doesn't apply
- msg "Applying security patches (from Ubuntu)"
- # patch -p1 -i ../CVE-2014-3587.patch
- # patch -p1 -i ../CVE-2014-3597.patch
- patch -p1 -i ../CVE-2014-3668.patch
- patch -p1 -i ../CVE-2014-3669.patch
- patch -p1 -i ../CVE-2014-3670.patch
- patch -p1 -i ../curl_embedded_null.patch
- patch -p1 -i ../CVE-2014-8142.patch
- patch -p1 -i ../CVE-2015-0231.patch
- patch -p1 -i ../CVE-2014-9705.patch
- # patch -p1 -i ../CVE-2015-0273.patch
- patch -p1 -i ../CVE-2015-2301.patch
- patch -p1 -i ../CVE-2015-2305.patch
- patch -p1 -i ../CVE-2015-2783.patch
- patch -p1 -i ../CVE-2015-2787.patch
- patch -p1 -i ../CVE-2015-3330.patch
- patch -p1 -i ../CVE-2015-3329.patch
-
- msg "Applying suhosin patch"
- patch -F3 -p1 -i ${srcdir}/suhosin-patch-${_suhosinver}.patch
-
- msg "Adjust paths"
- patch -p0 -i ${srcdir}/php.ini.patch
- patch -p0 -i ${srcdir}/php-fpm.conf.in.patch
- # Just because our Apache 2.4 is configured with a threaded MPM by default does not mean we want to build a ZTS PHP.
- # Let's supress this behaviour and build a SAPI that works fine with the prefork MPM.
- sed '/APACHE_THREADED_MPM=/d' -i sapi/apache2handler/config.m4 -i configure
-
- # Allow php-tidy to compile with tidy-html5
- sed 's/buffio\.h/tidybuffio\.h/' -i ext/tidy/tidy.c
-
- msg "Enchant 2 fixes"
- sed -i -e 's|include/enchant|include/enchant-2|' -e 's|-lenchant|-lenchant-2|' configure
-
- msg "ICU fixes"
- sed -i '/U_NAMESPACE_END/a using namespace icu;' ext/intl/msgformat/msgformat_helpers.cpp
+ pushd "php-${pkgver}"
+
+ echo "[SED] scripts/phpize.in"
+ sed -E "s|(includedir[\t ]*=.*/php)|\1${_phpbase}${_suffix}|g" \
+ -i scripts/phpize.in
+
+ echo "[SED] scripts/phpize.m4"
+ sed -e "s|\[php-config\]|\[php-config${_phpbase}${_suffix}\]|g" \
+ -e "s|\(PHP_ARG_WITH(\[php-config\)${_phpbase}${_suffix}\]|\1]|g" \
+ -e "s|php-config, no|php-config${_phpbase}${_suffix}, no|g" \
+ -i "scripts/phpize.m4"
+
+ echo "[SED] scripts/Makefile.frag"
+ sed -E "s|(phpincludedir[\t ]*=.*/php)|\1${_phpbase}${_suffix}|g" \
+ -i scripts/Makefile.frag
+
+ echo "[SED] scripts/php-config.in"
+ sed -E "s|(include_dir[\t ]*=.*php)|\1${_phpbase}${_suffix}|g" \
+ -i scripts/php-config.in
+
+ echo "[SED] sapi/apache2handler/config.m4"
+ sed -e '/APACHE_THREADED_MPM=/d' \
+ -i sapi/apache2handler/config.m4
+
+ echo "[SED] sapi/fpm/Makefile.frag"
+ # sed -e 's#php-fpm\$(program_suffix)#php\$(program_suffix)-fpm#'
+ sed -e 's/.conf.default/.conf/g' \
+ -i sapi/fpm/Makefile.frag
+
+ echo "[SED] sapi/fpm/php-fpm.service.in"
+ sed -E "s|ExecStart[\s]?=[\s]?@([a-zA-Z_]+)@/php-fpm|ExecStart=@\1@/${_build_fpm_name}|g; \
+ s|PIDFile[\s]?=[\s]?@([a-zA-Z_]+)@/run/php-fpm.pid|PIDFile=/run/${_build_fpm_service_name}/php-fpm.pid|g" \
+ -i sapi/fpm/php-fpm.service.in
+
+ local _check_files=("sapi/fpm/www.conf.in" "sapi/fpm/php-fpm.conf.in");
+ for file_conf in "${_check_files[@]}"; do
+ if [[ ! -f $file_conf ]]; then
+ continue;
+ fi
+ echo "[SED] ${file_conf}"
+ sed -e "s#^listen =.*#listen = /run/${_build_fpm_service_name}/php-fpm.sock#" \
+ -e "s#run/php-fpm.pid#/run/${_build_fpm_service_name}/php-fpm.pid#" \
+ -e 's#^;*[ \t]*listen.owner =#listen.owner =#' \
+ -e 's#^;*[ \t]*listen.group =#listen.group =#' \
+ -e 's#^;*[ \t]*error_log =.*#error_log = syslog#' \
+ -e 's#^;*[ \t]*chdir =.*#;chdir = /srv/http#' \
+ -i "${file_conf}"
+ done
+
+ echo "[SED] php.ini-production"
+ sed -e 's#^;*[ \t]*extension_dir[\t ]*=.*/.*$#extension_dir = "___EXTENSIONDIR___"#' \
+ -e "s#___EXTENSIONDIR___#/usr/lib/${pkgbase}/modules#g" \
+ -e "s#^;*[ \t]*extension=#;extension=#g" \
+ -e "s#^;*[ \t]*session.save_path[\t ]*=.*#session.save_path=___SESSIONS___#g" \
+ -e "s#___SESSIONS___#/var/lib/${pkgbase}/sessions#g" \
+ -i php.ini-production
+
+ for patch_name in "${_patches[@]}"; do
+ echo "[PATCH] Applying source patch ${patch_name}";
+ patch -p1 -i "../${patch_name}"
+ done
+
+ if ((_phpbase <= 53)); then
+ PHP_AUTOCONF="/usr/bin/autoconf-2.13" ./buildconf --force
+ else
+ ./buildconf --force
+ fi
+ rm -f tests/output/stream_isatty_*.phpt
+ rm -f Zend/tests/arginfo_zpp_mismatch*.phpt
+ rm -f Zend/tests/bug79919.phpt
+ popd
+}
+
+_build_sapi() {
+ _sapi="${1}"
+ _commands="${2}"
+ if (( _sapi == "cli" )); then
+ if [[ ! -d "build-${_sapi}" ]]; then
+ mkdir "build-${_sapi}"
+ fi
+ pushd "build-${_sapi}"
+ if [[ -L configure ]]; then
+ rm configure
+ fi
+ ln -s "../php-${pkgver}/configure"
+ popd
+ else
+ cp -Ta "build-cli" "build-${_sapi}"
+ fi
+
+ pushd "build-${_sapi}"
+ ./configure ${_phpconfig} ${_commands}
+ patch -p1 -i "${srcdir}/make-tests.patch"
+
+ if (($_sapi != "cli")); then
+ make clean
+ 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
+ make
+ popd
}
+################################################################################
+# BUILD them all
+################################################################################
build() {
- local _phpconfig="--srcdir=../${_pkgbase}-${pkgver} \
- --prefix=/usr \
- --sysconfdir=/etc/${pkgbase} \
- --localstatedir=/var \
- --libdir=/usr/lib/${pkgbase} \
- --datadir=/usr/share/${pkgbase} \
- --program-suffix=${pkgbase#php} \
- --with-layout=GNU \
- --with-config-file-path=/etc/${pkgbase} \
- --with-config-file-scan-dir=/etc/${pkgbase}/conf.d \
- --enable-inline-optimization \
- --disable-debug \
- --disable-rpath \
- --disable-static \
- --enable-shared \
- --mandir=/usr/share/man \
- --without-pear \
- "
-
- local _phpextensions="--enable-bcmath=shared \
- --enable-calendar=shared \
- --enable-dba=shared \
- --enable-exif=shared \
- --enable-ftp=shared \
- --enable-gd-native-ttf \
- --enable-intl=shared \
- --enable-json=shared \
- --enable-mbregex \
- --enable-mbstring \
- --enable-pdo \
- --enable-phar=shared \
- --enable-posix=shared \
- --enable-session \
- --enable-shmop=shared \
- --enable-soap=shared \
- --enable-sockets=shared \
- --enable-sqlite-utf8 \
- --enable-sysvmsg=shared \
- --enable-sysvsem=shared \
- --enable-sysvshm=shared \
- --enable-xml \
- --enable-zip=shared \
- --with-bz2=shared \
- --with-curl=shared \
- --with-enchant=shared,/usr \
- --with-freetype-dir=shared,/usr \
- --with-gd=shared \
- --with-gdbm=shared \
- --with-gettext=shared \
- --with-gmp=shared \
- --with-iconv=shared \
- --with-icu-dir=/usr \
- --with-imap-ssl=shared,/usr \
- --with-imap=shared,/usr \
- --with-kerberos=/usr \
- --with-jpeg-dir=shared,/usr \
- --with-ldap=shared \
- --with-ldap-sasl \
- --with-mcrypt=shared \
- --with-mhash \
- --with-mssql=shared \
- --with-mysql-sock=/run/mysqld/mysqld.sock \
- --with-mysql=shared,mysqlnd \
- --with-mysqli=shared,mysqlnd \
- --with-openssl=shared \
- --with-pcre-regex=/usr \
- --with-pdo-dblib=shared,/usr \
- --with-pdo-mysql=shared,mysqlnd \
- --with-pdo-odbc=shared,unixODBC,/usr \
- --with-pdo-pgsql=shared \
- --with-pdo-sqlite=shared,/usr \
- --with-pgsql=shared \
- --with-png-dir=shared,/usr \
- --with-pspell=shared \
- --with-regex=php \
- --with-snmp=shared \
- --with-sqlite3=shared,/usr \
- --with-sqlite=shared \
- --with-tidy=shared \
- --with-unixODBC=shared,/usr \
- --with-xmlrpc=shared \
- --with-xsl=shared \
- --with-zlib \
- --without-db2 \
- --without-db3 \
- "
-
- export EXTENSION_DIR=/usr/lib/${pkgbase}/modules
- export PEAR_INSTALLDIR=/usr/share/${pkgbase}/pear
- export PKG_CONFIG_PATH=/usr/lib/openssl-1.0/pkgconfig
-
- cd ${srcdir}/${_pkgbase}-${pkgver}
-
- # -D_FORTIFY_SOURCE=2 will generate a warning, which will fail the configure script
- unset CPPFLAGS
- # To workaround c-client linking problem
- export IMAP_SHARED_LIBADD="-lssl"
-
- # php
- mkdir -p ${srcdir}/build-php
- cd ${srcdir}/build-php
- ln -sf ../${_pkgbase}-${pkgver}/configure
- ./configure ${_phpconfig} \
- --disable-cgi \
- --with-readline \
- --enable-pcntl \
- ${_phpextensions}
- sed -i '/^IMAP_SHARED_LIBADD =/ s#-lssl -lcrypto#-Wl,/usr/lib/libssl.so -Wl,/usr/lib/libcrypto.so#' Makefile
- make
-
- # cgi and fcgi
- # reuse the previous run; this will save us a lot of time
- cp -Ta ${srcdir}/build-php ${srcdir}/build-cgi
- cd ${srcdir}/build-cgi
- ./configure ${_phpconfig} \
- --disable-cli \
- --enable-cgi \
- ${_phpextensions}
- make
-
- # apache
- cp -Ta ${srcdir}/build-php ${srcdir}/build-apache
- cd ${srcdir}/build-apache
- ./configure ${_phpconfig} \
- --disable-cli \
- --with-apxs2 \
- ${_phpextensions}
- make
-
- # fpm
- cp -Ta ${srcdir}/build-php ${srcdir}/build-fpm
- cd ${srcdir}/build-fpm
- ./configure ${_phpconfig} \
- --disable-cli \
- --enable-fpm \
- --with-fpm-user=http \
- --with-fpm-group=http \
- ${_phpextensions}
- make
-
- # embed
- cp -Ta ${srcdir}/build-php ${srcdir}/build-embed
- cd ${srcdir}/build-embed
- ./configure ${_phpconfig} \
- --disable-cli \
- --enable-embed=shared \
- ${_phpextensions}
- make
-
- # pear
- sed -i 's#@$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -d#@$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -p $(bindir)/php$(program_suffix) -d#' ${srcdir}/php-${pkgver}/pear/Makefile.frag
- cp -Ta ${srcdir}/build-php ${srcdir}/build-pear
- cd ${srcdir}/build-pear
- ./configure ${_phpconfig} \
- --disable-cgi \
- --with-readline \
- --enable-pcntl \
- --with-pear \
- ${_phpextensions}
- make
+ 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
+ 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
+
+ # 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
+ _build_sapi "cli" "\
+ --sysconfdir=/${_build_sapi_ini_cli} \
+ --with-config-file-path=/${_build_sapi_ini_cli} \
+ --enable-cli \
+ ${_phpextensions} \
+ ${_cli_addons} \
+ --disable-fpm \
+ --disable-embed \
+ --disable-phpdbg \
+ "
+
+ # phpdbg
+ if ((_build_phpdbg)); then
+ _sapi="phpdbg"
+ _build_sapi "phpdbg" "\
+ --sysconfdir=/${_build_sapi_ini_phpdbg} \
+ --with-config-file-path=/${_build_sapi_ini_phpdbg} \
+ --disable-all \
+ --enable-phpdbg \
+ --disable-cgi \
+ --disable-cli \
+ --disable-fpm \
+ --disable-embed \
+ "
+ fi
+
+ # embed
+ _build_sapi "embed" "\
+ --sysconfdir=/${_build_sapi_ini_embed} \
+ --with-config-file-path=/${_build_sapi_ini_embed} \
+ --disable-all \
+ --enable-embed=shared \
+ --disable-cgi \
+ --disable-cli \
+ --disable-fpm \
+ --disable-phpdbg \
+ "
+
+ # cgi
+ _build_sapi "cgi" "\
+ --sysconfdir=/${_build_sapi_ini_cgi} \
+ --with-config-file-path=/${_build_sapi_ini_cgi} \
+ --disable-all \
+ --enable-cgi \
+ --disable-cli \
+ --disable-fpm \
+ --disable-embed \
+ --disable-phpdbg \
+ "
+
+ # litespeed
+ _cflags="${CFLAGS}"
+ export CFLAGS="${CFLAGS} -Wno-error=format-security"
+ _build_sapi "litespeed" "\
+ --sysconfdir=/${_build_sapi_ini_litespeed} \
+ --with-config-file-path=/${_build_sapi_ini_litespeed} \
+ --disable-all \
+ --disable-cgi \
+ --disable-cli \
+ --disable-fpm \
+ --disable-embed \
+ --disable-phpdbg \
+ ${_build_sapi_litespeed} \
+ "
+ export CFLAGS="${_cflags}"
+
+ # fpm
+ _build_sapi "fpm" "\
+ --sysconfdir=/${_build_sapi_ini_fpm} \
+ --with-config-file-path=/${_build_sapi_ini_fpm} \
+ --disable-all \
+ --enable-fpm \
+ ${_phpextensions_fpm} \
+ --disable-cli \
+ --disable-cgi \
+ --disable-embed \
+ --disable-phpdbg \
+ "
+ else
+
+ # CLI
+ if ((_build_phpdbg)); then
+ _cli_addons+=" --enable-phpdbg "
+ fi
+ _build_sapi "cli" "\
+ --sysconfdir=/${_build_sapi_ini_cli} \
+ --with-config-file-path=/${_build_sapi_ini_cli} \
+ --enable-cli \
+ ${_phpextensions} \
+ ${_cli_addons} \
+ --enable-fpm \
+ --enable-cgi \
+ --enable-embed=shared \
+ --enable-fpm \
+ ${_phpextensions_fpm} \
+ ${_build_sapi_litespeed} \
+ "
+ fi
+
+ # apache
+ _build_sapi "apache" "\
+ --disable-all \
+ --disable-cli \
+ --disable-cgi \
+ --disable-fpm \
+ --disable-embed \
+ --disable-phpdbg \
+ --with-apxs2 \
+ --sysconfdir=/${_build_sapi_ini_apache} \
+ --with-config-file-path=/${_build_sapi_ini_apache} \
+ "
+
+}
+
+check() {
+ pushd "build-cli"
+ # Check if sendmail was configured correctly (FS#47600)
+ export REPORT_EXIT_STATUS=1
+ export NO_INTERACTION=1
+ export SKIP_ONLINE_TESTS=1
+ export SKIP_SLOW_TESTS=1
+ export TESTS='tests Zend'
+ if ((_phpbase > 73)); then
+ export TEST_PHP_ARGS="-j$(nproc)"
+ fi
+ # Patch tests to run PHP modules in needed order
+ sapi/cli/php -n ../php-makefile-patcher.php Makefile
+ make test
+ popd
+}
+
+################################################################################
+# Custom code
+################################################################################
+_install_module_ini() {
+ local extension=$(echo "${1}" | sed 's/\.so//')
+ local priority="${_priority_default}"
+ case "${extension}" in
+ "json")
+ priority="${_priority_json}"
+ ;;
+ "xml")
+ priority="${_priority_xml}"
+ ;;
+ "openssl")
+ priority="${_priority_openssl}"
+ ;;
+ "mysqlnd")
+ priority="${_priority_mysqlnd}"
+ ;;
+ "pdo")
+ priority="${_priority_pdo}"
+ ;;
+ "opcache")
+ priority="${_priority_opcache}"
+ ;;
+ "dom")
+ priority="${_priority_dom}"
+ ;;
+ esac
+ local extension_type="extension"
+ case "${extension}" in
+ "opcache" | "xdebug")
+ extension_type="zend_extension"
+ ;;
+ "recode")
+ extension_type=";extension"
+ ;;
+ esac
+
+ if [[ ! -d "${pkgdir}/${_build_conf_d}" ]]; then
+ mkdir -p "${pkgdir}/${_build_conf_d}"
+ fi
+ echo "${extension_type}=${extension}.so" > "${pkgdir}/${_build_conf_d}/${priority}-${extension}.ini"
+ chmod 0644 "$pkgdir/${_build_conf_d}/${priority}-${extension}.ini"
+ _last_priority=${priority}
+ _last_extension=${extension}
}
+_install_module() {
+ if [[ -f "build-cli/modules/${1}.so" ]]; then
+ install -D -m755 "build-cli/modules/${1}.so" "${pkgdir}/usr/lib/${pkgbase}/modules/${1}.so";
+ _install_module_ini "${1}"
+ else
+ echo "[DEBUG]: Install_module can't find ${1}.so, skipped"
+ fi
+}
+
+###############################################################################
+# PHP: SAPI's
+###############################################################################
+
+# Main package
package_php53() {
- pkgdesc='An HTML-embedded scripting language - Legacy 5.3 version'
- depends=('pcre' 'libxml2' 'curl' 'libzip' 'openssl-1.0')
- backup=("etc/${pkgbase}/php.ini")
- provides=("${_pkgbase}=$pkgver")
+ # 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"
+
+ # conf.d dir with shared modules
+ install -d -m755 "${pkgdir}/${_build_conf_d}/"
+
+ pushd "build-cli"
+ make -j1 INSTALL_ROOT=${pkgdir} install-{modules,build,headers,programs}
+ # Cleanup for CGI"
+ rm -rf "${pkgdir}/usr/bin/${pkgbase}-cgi"
+ popd
+
+ pushd "${pkgdir}/usr/lib/${pkgbase}/modules/"
+ # remove static modules
+ rm -f *.a
+ # remove modules provided by subpackages
+ rm -f {enchant,imap,intl,pspell,snmp,tidy,curl,ldap,bz2,bcmath,soap,zip,gmp,dba,opcache,json,gd,mcrypt,sodium,recode}.so
+ rm -f {pdo_dblib,mssql}.so
+ rm -f {dom,simplexml,xml,xmlreader,xmlwriter,xsl,wddx,xmlrpc}.so
+ rm -f {pgsql,pdo_pgsql}.so
+ rm -f {odbc,pdo_odbc}.so
+ rm -f {pdo_sqlite,sqlite3}.so
+ rm -f {pdo_firebird.so,interbase.so}
+ rm -f {mysqli,pdo_mysql,mysqlnd,mysql}.so
+ rm -f {openssl,ffi,pcntl,ftp,calendar,ctype,fileinfo,iconv,mbstring,exif,pdo,phar,posix,shmop}.so
+ rm -f {sockets,tokenizer,gettext,sysvmsg,sysvsem,sysvshm}.so
+ popd
+ pushd build-cli
+ if (( ! _build_ini_per_sapi )); then
+ backup=("${_build_sapi_ini_cli}/php.ini")
+ install -d -m755 "${pkgdir}/${_build_sapi_ini_cli}"
+ install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cli}/php.ini"
+ fi
+ popd
+}
- cd ${srcdir}/build-php
- make -j1 INSTALL_ROOT=${pkgdir} install
+# Cli + phar
+package_php53-cli() {
+ _sapi="cli"
+ pkgdesc="cli (command-line executable) version for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ depends+=("${_sapi_depends[@]}")
+ pushd "build-${_sapi}"
+ make -j1 INSTALL_ROOT="${pkgdir}" install-cli
+ make -j1 INSTALL_ROOT="${pkgdir}" install-pharcmd
+ if ((_build_ini_per_sapi)); then
+ backup=("${_build_sapi_ini_cli}/php.ini")
+ install -d -m755 "${pkgdir}/${_build_sapi_ini_cli}"
+ install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cli}/php.ini"
+ fi
+ # Cleanup for CGI
+ rm -rf "${pkgdir}/usr/bin/${pkgbase}-cgi"
+ popd
+}
+# End cli
- # install php.ini
- install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/${pkgbase}/php.ini
- install -d -m755 ${pkgdir}/etc/${pkgbase}/conf.d/
+# CGI
+package_php53-cgi() {
+ _sapi="cgi"
+ pkgdesc="CGI and FCGI SAPI for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ depends+=("${_sapi_depends[@]}")
+ if ((_build_ini_per_sapi || _build_per_sapi)); then
+ pushd "build-${_sapi}"
+ else
+ pushd "build-cli"
+ fi
+ if ((_build_ini_per_sapi)); then
+ 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
+ popd
+}
+# CGI end
- # remove static modules
- rm -f ${pkgdir}/usr/lib/${pkgbase}/modules/*.a
- # remove modules provided by sub packages
- rm -f ${pkgdir}/usr/lib/${pkgbase}/modules/{enchant,gd,imap,intl,ldap,mcrypt,mssql,odbc,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl,pdo_dblib}.so
+# Apache
+package_php53-apache() {
+ _sapi="apache"
+ _build_mod_php_so="libphp${_suffix_so}.so"
+ _build_mod_php_module="php_module${_suffix_so}"
+ _build_build_php_script_name="php${_suffix_so}-script"
+ _apache_module_conf="${pkgbase}-module.conf"
+ pkgdesc="Apache SAPI for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'apache')
+ depends+=("${_sapi_depends[@]}")
+ depends+=('libxcrypt');
+ depends+=('ncurses');
+ backup=("${_build_apache_cfg}/${_apache_module_conf}")
+ echo "# End of LoadModule in httpd.conf - see ArchWiki Apache HTTP Server"
+ echo "LoadModule ${_build_mod_php_module} modules/lib${pkgbase}.so"
+ echo "AddHandler ${_build_php_script_name} .php"
+ echo "# End of Include List"
+ echo "Include conf/extra/${_apache_module_conf}"
+
+ pushd "build-${_sapi}"
+ if ((_build_ini_per_sapi)); then
+ backup+=("${_build_sapi_ini_apache}/php.ini")
+ install -d -m755 "${pkgdir}/${_build_sapi_ini_apache}"
+ install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_apache}/php.ini"
+ fi
+ install -D -m755 "libs/${_build_mod_php_so}" "${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so"
+ patchelf --set-soname \
+ "lib${pkgbase}.so" \
+ "${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so"
+ popd
+
+ install -D -m644 "php-apache.conf" "${pkgdir}/${_build_apache_cfg}/${_apache_module_conf}"
+ echo "[SED] ${pkgdir}/${_build_apache_cfg}/${_apache_module_conf}"
+ sed -e "s#@MODULE@#${_build_mod_php_module}#" \
+ -i "${pkgdir}/${_build_apache_cfg}/${_apache_module_conf}"
+}
+# Apache end
- # remove empty directory
- rmdir ${pkgdir}/usr/include/php/include
+# FPM
+package_php53-fpm() {
+ _sapi="fpm"
+ install="php-fpm.install"
+ pkgdesc="FastCGI Process Manager for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'systemd-libs' 'acl')
+ depends+=("${_sapi_depends[@]}")
+ backup=("${_build_sapi_ini_fpm}/php-fpm.conf")
+ if ((_phpbase >= 70)); then
+ backup+=("${_build_sapi_ini_fpm}/php-fpm.d/www.conf")
+ fi
+ options=('!emptydirs')
+ if ((_build_ini_per_sapi || _build_per_sapi)); then
+ pushd "build-${_sapi}"
+ else
+ pushd "build-cli"
+ fi
+ if ((_build_ini_per_sapi)); then
+ backup+=("${_build_sapi_ini_fpm}/php.ini")
+ install -d -m755 "${pkgdir}/${_build_sapi_ini_fpm}/"
+ install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_fpm}/php.ini"
+ fi
+ make -j1 INSTALL_ROOT="${pkgdir}" install-fpm
+ install -D -m644 "sapi/fpm/php-fpm.service" "${pkgdir}/usr/lib/systemd/system/${_build_fpm_service_name}.service"
+ echo "d /run/${_build_fpm_service_name} 755 root root" > php-fpm.tmpfiles
+ install -D -m644 "php-fpm.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${_build_fpm_service_name}.conf"
+ popd
+}
+# FPM end
- # move include directory
- mv ${pkgdir}/usr/include/php ${pkgdir}/usr/include/${pkgbase}
+# embed sapi
+package_php53-embed() {
+ _sapi="embed"
+ pkgdesc="Embedded PHP SAPI library for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'ncurses' 'systemd-libs' 'libxcrypt' 'acl' 'ncurses')
+ depends+=("${_sapi_depends[@]}")
+ options=('!emptydirs')
+ if ((_build_ini_per_sapi || _build_per_sapi)); then
+ pushd "build-${_sapi}"
+ else
+ pushd "build-cli"
+ fi
+ install -d -m755 "${pkgdir}/${_build_sapi_ini_embed}"
+ if ((_build_ini_per_sapi)); then
+ install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_embed}/php.ini"
+ 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"
+ popd
+ patchelf --set-soname "lib${pkgbase}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
+}
+# embed sapi end
+
+# phpdbg sapi
+package_php53-phpdbg() {
+ _sapi="phpdbg"
+ options=('!emptydirs')
+ pkgdesc="Interactive PHP debugger for ${pkgbase} ($_sapi)"
+ depends=("${pkgbase}=${pkgver}")
+ depends+=("${_sapi_depends[@]}")
+ if ((_build_ini_per_sapi || _build_per_sapi)); then
+ pushd "build-${_sapi}"
+ else
+ pushd "build-cli"
+ fi
+ if ((_build_ini_per_sapi)); then
+ backup=("${_build_sapi_ini_phpdbg}/php.ini")
+ install -d -m755 "${pkgdir}/${_build_sapi_ini_phpdbg}"
+ install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_phpdbg}/php.ini"
+ fi
+ make -j1 INSTALL_ROOT="${pkgdir}" "install-${_sapi}"
+ popd
+}
+# phpdbg sapi end
+
+# litespeed sapi
+package_php53-litespeed() {
+ _sapi="litespeed"
+ pkgdesc="LiteSpeed SAPI for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ depends+=("${_sapi_depends[@]}")
+ if ((_build_ini_per_sapi || _build_per_sapi)); then
+ pushd "build-${_sapi}"
+ else
+ pushd "build-cli"
+ fi
+ if ((_build_ini_per_sapi)); then
+ 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
+ *)
+ install -D -m755 sapi/litespeed/php "${pkgdir}/usr/bin/ls${pkgbase}"
+ ;;
+ esac
+ popd
+}
+# litespeed sapi end
- # fix phar symlink
- rm ${pkgdir}/usr/bin/phar
- ln -sf phar.${pkgbase/php/phar} ${pkgdir}/usr/bin/${pkgbase/php/phar}
+###############################################################################
+# PEAR + PECL
+###############################################################################
- # rename executables
- mv ${pkgdir}/usr/bin/phar.{phar,${pkgbase/php/phar}}
+# PEAR
+package_php53-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_php53-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}"
+}
+# PECL end
- # fix paths in executables
- sed -i "/^includedir=/c \includedir=/usr/include/${pkgbase}" ${pkgdir}/usr/bin/${pkgbase/php/phpize}
- sed -i "/^include_dir=/c \include_dir=/usr/include/${pkgbase}" ${pkgdir}/usr/bin/${pkgbase/php/php-config}
+###############################################################################
+# PHP Modules: First need
+###############################################################################
- # make phpize use php-config53
- sed -i "/^\[ --with-php-config=/c \[ --with-php-config=PATH Path to php-config [${pkgbase/php/php-config}]], ${pkgbase/php/php-config}, no)" ${pkgdir}/usr/lib/${pkgbase}/build/phpize.m4
+# OpenSSL
+package_php53-openssl() {
+ pkgdesc="OpenSSL module for ${pkgbase}"
+ depends=("${_ext_depends_openssl[@]}")
+ _install_module openssl
}
-package_php53-cgi() {
- pkgdesc='CGI and FCGI SAPI for PHP'
- depends=("${pkgbase}")
- provides=("${_pkgbase}-cgi=$pkgver")
+# Json
+package_php53-json() {
+ pkgdesc="json module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module json
+}
- install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/${pkgbase}-cgi
+# pdo
+package_php53-pdo() {
+ pkgdesc="pdo module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module pdo
}
-package_php53-apache() {
- pkgdesc='Apache SAPI for PHP'
- depends=("${pkgbase}" 'apache')
- provides=("${_pkgbase}-apache=$pkgver")
- backup=("etc/httpd/conf/extra/${pkgbase}_module.conf")
- install='php-apache.install'
- install -D -m755 ${srcdir}/build-apache/libs/libphp5.so ${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so
- install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/${pkgbase}_module.conf
+# mbstring
+package_php53-mbstring() {
+ pkgdesc="mbstring module for ${pkgbase}"
+ depends=("${_ext_depends_mbstring[@]}")
+ _install_module mbstring
}
-package_php53-fpm() {
- pkgdesc='FastCGI Process Manager for PHP'
- depends=("${pkgbase}" 'systemd')
- provides=("${_pkgbase}-fpm=$pkgver")
- backup=("etc/${pkgbase}/php-fpm.conf")
- install='php-fpm.install'
- install -d -m755 ${pkgdir}/usr/bin
- install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/bin/${pkgbase}-fpm
+# phar
+package_php53-phar() {
+ pkgdesc="phar module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module phar
+}
- install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.8 ${pkgdir}/usr/share/man/man8/${pkgbase}-fpm.8
- install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.conf ${pkgdir}/etc/${pkgbase}/php-fpm.conf
- install -d -m755 ${pkgdir}/etc/${pkgbase}/fpm.d
- install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/${pkgbase}-fpm.conf
- install -D -m644 ${srcdir}/php-fpm.service ${pkgdir}/usr/lib/systemd/system/${pkgbase}-fpm.service
+###############################################################################
+# PHP modules: XML
+###############################################################################
- install -d -m755 ${pkgdir}/etc/logrotate.d
- install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/${pkgbase}-fpm
+# XML modules combined package
+package_php53-xml() {
+ pkgdesc="xml modules for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libxml2')
+ _install_module xml
}
-package_php53-embed() {
- pkgdesc='Embedded PHP SAPI library'
- depends=("${pkgbase}")
- provides=("${_pkgbase}-embed=$pkgver")
+package_php53-wddx() {
+ pkgdesc="wddx module for ${pkgbase}"
+ depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
+ _install_module wddx
+}
- install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp53.so
- install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/${pkgbase}/sapi/embed/php_embed.h
+package_php53-simplexml() {
+ pkgdesc="simplexml module for ${pkgbase}"
+ depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
+ _install_module simplexml
}
-package_php53-dblib() {
- pkgdesc='dblib module for PHP'
- depends=("${pkgbase}")
- provides=("${_pkgbase}-dblib=$pkgver")
+package_php53-dom() {
+ pkgdesc="dom module for ${pkgbase}"
+ depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
+ _install_module dom
+}
- install -D -m755 ${srcdir}/build-php/modules/pdo_dblib.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_dblib.so
+package_php53-xmlreader() {
+ pkgdesc="xmlreader module for ${pkgbase}"
+ depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
+ _install_module xmlreader
}
-package_php53-pear() {
- pkgdesc='PHP Extension and Application Repository'
- depends=("${pkgbase}")
- provides=("${_pkgbase}-pear=$pkgver")
- backup=("etc/${pkgbase}/pear.conf")
+package_php53-xmlwriter() {
+ pkgdesc="xmlwriter module for ${pkgbase}"
+ depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
+ _install_module xmlwriter
+}
- cd ${srcdir}/build-pear
- make -j1 install-pear INSTALL_ROOT=${pkgdir}
- rm -rf ${pkgdir}{/usr/share/${pkgbase}/pear,}/.{channels,depdb,depdblock,filemap,lock,registry}
+# Tidy
+package_php53-tidy() {
+ pkgdesc="tidy module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'tidy')
+ _install_module tidy
+}
- mv ${pkgdir}/usr/bin/{pear,${pkgbase/php/pear}}
- mv ${pkgdir}/usr/bin/{peardev,${pkgbase/php/peardev}}
- mv ${pkgdir}/usr/bin/{pecl,${pkgbase/php/pecl}}
+# XSL
+package_php53-xsl() {
+ pkgdesc="xsl module for ${pkgbase}"
+ depends=("php${_phpbase}-xml${_suffix}=${pkgver}" "php${_phpbase}-dom${_suffix}=${pkgver}")
+ depends+=('libxslt')
+ _install_module xsl
}
-package_php53-enchant() {
- pkgdesc='enchant module for PHP'
- depends=("${pkgbase}" 'enchant')
- provides=("${_pkgbase}-enchant=$pkgver")
+###############################################################################
+# PHP modules: Databases
+###############################################################################
+
+# MySQL
+package_php53-mysql() {
+ pkgdesc="MySQL modules for ${pkgbase}"
+ depends=("${_ext_depends_mysql[@]}")
+ _install_module mysqlnd
+ _install_module mysql
+ _install_module mysqli
+ _install_module pdo_mysql
+}
- install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/${pkgbase}/modules/enchant.so
+# pdo_sqlite + sqlite3
+package_php53-sqlite() {
+ pkgdesc="sqlite module for ${pkgbase}"
+ depends=("${_ext_depends_sqlite[@]}")
+ _install_module sqlite3
+ _install_module pdo_sqlite
}
-package_php53-gd() {
- pkgdesc='gd module for PHP'
- depends=("${pkgbase}" 'libpng' 'libjpeg' 'freetype2')
- provides=("${_pkgbase}-gd=$pkgver")
+# ODBC
+package_php53-odbc() {
+ pkgdesc="ODBC modules for ${pkgbase}"
+ depends=("${_ext_depends_odbc[@]}")
+ _install_module odbc
+ _install_module pdo_odbc
+}
- install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/${pkgbase}/modules/gd.so
+# PostgreSQL
+package_php53-pgsql() {
+ pkgdesc="PostgreSQL modules for ${pkgbase}"
+ depends=("${_ext_depends_pgsql[@]}")
+ _install_module pgsql
+ _install_module pdo_pgsql
}
-package_php53-imap() {
- pkgdesc='imap module for PHP'
- depends=("${pkgbase}" 'c-client')
- provides=("${_pkgbase}-imap=$pkgver")
+# interbase
+package_php53-interbase() {
+ pkgdesc="interbase module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" "libfbclient")
+ _install_module interbase
+}
+
+# firebird
+package_php53-firebird() {
+ pkgdesc="pdo_firebird module for ${pkgbase}"
+ depends=("${_ext_depends_firebird[@]}")
+ _install_module pdo_firebird
+}
- install -D -m755 ${srcdir}/build-php/modules/imap.so ${pkgdir}/usr/lib/${pkgbase}/modules/imap.so
+# pdo_dblib
+package_php53-dblib() {
+ depends=("${pkgbase}=${pkgver}" 'freetds')
+ pkgdesc="pdo_dblib module for ${pkgbase}"
+ _install_module pdo_dblib
}
+# mssql
+package_php53-mssql() {
+ depends=("${pkgbase}=${pkgver}" 'freetds')
+ pkgdesc="mssql module for ${pkgbase}"
+ _install_module mssql
+}
+
+# Dba
+package_php53-dba() {
+ pkgdesc="dba module for ${pkgbase}"
+ depends=("${_ext_depends_dba[@]}")
+ _install_module dba
+}
+
+###############################################################################
+# PHP Modules: internationalization, text, datetime
+###############################################################################
+
+# Intl
package_php53-intl() {
- pkgdesc='intl module for PHP'
- depends=("${pkgbase}" 'icu')
- provides=("${_pkgbase}-intl=$pkgver")
+ pkgdesc="intl module for ${pkgbase}"
+ 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
+}
- install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/${pkgbase}/modules/intl.so
+# Recode
+package_php53-recode() {
+ pkgdesc="recode module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'recode')
+ _install_module recode
}
-package_php53-ldap() {
- pkgdesc='ldap module for PHP'
- depends=("${pkgbase}" 'libldap')
- provides=("${pkgbase}-ldap=$pkgver")
+# gettext
+package_php53-gettext() {
+ pkgdesc="gettext module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module gettext
+}
- install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/${pkgbase}/modules/ldap.so
+# iconv
+package_php53-iconv() {
+ pkgdesc="iconv module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module iconv
}
-package_php53-mcrypt() {
- pkgdesc='mcrypt module for PHP'
- depends=("${pkgbase}" 'libmcrypt' 'libltdl')
- provides=("${_pkgbase}-mcrypt=$pkgver")
+# calendar
+package_php53-calendar() {
+ pkgdesc="calendar module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module calendar
+}
+
+
+###############################################################################
+# PHP Modules: multimedia
+###############################################################################
- install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/${pkgbase}/modules/mcrypt.so
+# GD
+package_php53-gd() {
+ pkgdesc="gd module for ${pkgbase}"
+ depends=("${_ext_depends_gd[@]}")
+ _install_module gd
}
-package_php53-mssql() {
- pkgdesc='mssql module for PHP'
- depends=("${pkgbase}" 'freetds')
- provides=("${_pkgbase}-mssql=$pkgver")
+# exif
+package_php53-exif() {
+ pkgdesc="exif module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module exif
+}
- install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/${pkgbase}/modules/mssql.so
+# fileinfo
+package_php53-fileinfo() {
+ pkgdesc="fileinfo module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module fileinfo
}
-package_php53-odbc() {
- pkgdesc='ODBC modules for PHP'
- depends=("${pkgbase}" 'unixodbc')
- provides=("${_pkgbase}-odbc=$pkgver")
- install -D -m755 ${srcdir}/build-php/modules/odbc.so ${pkgdir}/usr/lib/${pkgbase}/modules/odbc.so
- install -D -m755 ${srcdir}/build-php/modules/pdo_odbc.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_odbc.so
+###############################################################################
+# PHP modules: math
+###############################################################################
+
+# bcmath
+package_php53-bcmath() {
+ pkgdesc="bcmath module for ${pkgbase}"
+ depends=("${pkgbase}")
+ _install_module bcmath
}
-package_php53-pgsql() {
- pkgdesc='PostgreSQL modules for PHP'
- depends=("${pkgbase}" 'postgresql-libs')
- provides=("${_pkgbase}-pgsql=$pkgver")
+# gmp
+package_php53-gmp() {
+ pkgdesc="gmp module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'gmp')
+ _install_module gmp
+}
+
+###############################################################################
+# PHP modules: spell checking
+###############################################################################
- install -D -m755 ${srcdir}/build-php/modules/pgsql.so ${pkgdir}/usr/lib/${pkgbase}/modules/pgsql.so
- install -D -m755 ${srcdir}/build-php/modules/pdo_pgsql.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_pgsql.so
+# Enchant
+package_php53-enchant() {
+ pkgdesc="enchant module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'enchant' 'libvoikko' 'hspell' 'hunspell' 'nuspell' 'aspell')
+ _install_module enchant
}
+# Pspell
package_php53-pspell() {
- pkgdesc='pspell module for PHP'
- depends=("${pkgbase}" 'aspell')
- provides=("${_pkgbase}-pspell=$pkgver")
+ pkgdesc="pspell module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'aspell')
+ _install_module pspell
+}
- install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/${pkgbase}/modules/pspell.so
+###############################################################################
+# PHP modules: compression
+###############################################################################
+
+# bz2
+package_php53-bz2() {
+ pkgdesc="bz2 module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'bzip2')
+ _install_module bz2
}
+# Zip
+package_php53-zip() {
+ pkgdesc="zip module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libzip')
+ _install_module zip
+}
+
+###############################################################################
+# PHP modules: network client/servers
+###############################################################################
+
+# curl
+package_php53-curl() {
+ pkgdesc="curl module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" "curl")
+ _install_module curl
+}
+
+# SOAP
+package_php53-soap() {
+ pkgdesc="soap module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libxml2')
+ _install_module soap
+}
+
+# FTP
+package_php53-ftp() {
+ pkgdesc="FTP module for ${pkgbase}"
+ depends=("${_ext_depends_ftp[@]}")
+ _install_module ftp
+}
+
+# ldap
+package_php53-ldap() {
+ pkgdesc="ldap module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libldap' 'libsasl')
+ _install_module ldap
+}
+
+# SNMP
package_php53-snmp() {
- pkgdesc='snmp module for PHP'
- depends=("${pkgbase}" 'net-snmp')
- provides=("${_pkgbase}-snmp=$pkgver")
+ pkgdesc="snmp module for ${pkgbase}"
+ depends=("${_ext_depends_snmp[@]}")
+ _install_module snmp
+}
- install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/${pkgbase}/modules/snmp.so
+# XML-RPC
+package_php53-xmlrpc() {
+ pkgdesc="xmlrpc module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libxml2')
+ _install_module xmlrpc
}
-package_php53-sqlite() {
- pkgdesc='sqlite module for PHP'
- depends=("${pkgbase}" 'sqlite')
- provides=("${_pkgbase}-sqlite=$pkgver")
+# Imap
+package_php53-imap() {
+ pkgdesc="imap module for ${pkgbase}"
+ depends=("${_ext_depends_imap[@]}")
+ _install_module imap
+}
- install -D -m755 ${srcdir}/build-php/modules/sqlite3.so ${pkgdir}/usr/lib/${pkgbase}/modules/sqlite3.so
- install -D -m755 ${srcdir}/build-php/modules/pdo_sqlite.so ${pkgdir}/usr/lib/${pkgbase}/modules/pdo_sqlite.so
+# sockets
+package_php53-sockets() {
+ pkgdesc="sockets module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module sockets
}
-package_php53-tidy() {
- pkgdesc='tidy module for PHP'
- depends=("${pkgbase}" 'tidyhtml')
- provides=("${_pkgbase}-tidy=$pkgver")
+###############################################################################
+# PHP Modules: cryptography
+###############################################################################
- install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/${pkgbase}/modules/tidy.so
+# Sodium
+package_php53-sodium() {
+ pkgdesc="sodium (libsodium) module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" "libsodium")
+ _install_module sodium
}
-package_php53-xsl() {
- pkgdesc='xsl module for PHP'
- depends=("${pkgbase}" 'libxslt')
- provides=("${_pkgbase}-xsl=$pkgver")
+# Mcrypt
+package_php53-mcrypt() {
+ pkgdesc="mcrypt module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libmcrypt')
+ _install_module mcrypt
+}
+
+
+###############################################################################
+# PHP Zend modules: opcache/jit
+###############################################################################
+
+# Opcache
+package_php53-opcache() {
+ pkgdesc="opcache zend module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module opcache
+}
+
+###############################################################################
+# PHP posix, pcntl, shmop and System V modules
+###############################################################################
+
+# posix
+package_php53-posix() {
+ pkgdesc="posix module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module posix
+}
+
+# pcntl
+package_php53-pcntl() {
+ pkgdesc="pcntl module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module pcntl
+}
+
+# shmop
+package_php53-shmop() {
+ pkgdesc="shmop module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module shmop
+}
- install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/${pkgbase}/modules/xsl.so
+# sysvmsg
+package_php53-sysvmsg() {
+ pkgdesc="sysvmsg module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module sysvmsg
}
+
+# sysvsem
+package_php53-sysvsem() {
+ pkgdesc="sysvsem module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module sysvsem
+}
+
+# sysvshm
+package_php53-sysvshm() {
+ pkgdesc="sysvshm module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module sysvshm
+}
+
+###############################################################################
+# PHP Misc modules
+###############################################################################
+
+# Ffi
+package_php53-ffi() {
+ pkgdesc="ffi module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libffi')
+ _install_module ffi
+}
+
+# ctype
+package_php53-ctype() {
+ pkgdesc="ctype module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module ctype
+}
+
+# tokenizer
+package_php53-tokenizer() {
+ pkgdesc="tokenizer module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}")
+ _install_module tokenizer
+}
+
+# libedit/readline
+package_php53-readline() {
+ pkgdesc="readline (libedit version) module for ${pkgbase}"
+ depends=("${pkgbase}=${pkgver}" 'libedit')
+ _install_module readline
+}
+
+
+sha256sums=('e6b8530d747000eebb0089249ec70a3b14add7b501337046700544883f62b17b'
+ '0b7e98dca9c996ec10cb9b3f6296bb7547c68797fd5f35006fdfd3e97700672d'
+ 'ba72fc64f77822755a469314160d5889d5298f4eb5758dd7939dac9b811afe52'
+ '6d0ad9becb5470ce8e5929d7d45660b0f32579038978496317544c5310281a91'
+ 'c4e1cf6972b2a9c7f2777a18497d83bf713cdbecabb65d3ff62ba441aebb0091'
+ '92f1b7b9d51b396679c17f35a2112423361b8da3c1b9de00aa94fd768ae296e6'
+ '5cac358527fa9f6cb8b7f22e34b86ef98453d8d3b45a83e745683fecc0fcf9a3'
+ '8a5e1a2a563c38f237b0ed735918ecf82c30edd3f7beae5d99be041585901d27'
+ 'e49744c78d6413ab6e93e3786d70c2d1cbdbb62e5bcfdb85c05efcf16fecfb96'
+ 'aecd8dff7022e956718407a5b98dec19acdceef08b0a58e7266b483bc3845de6'
+ 'd2f6f8e71c99247c798451a56d5b3e0817d404dfc41175b2e9735e38ecfaa6d6'
+ '72a94ccc694657b3d52ce9da537e3f9d4ac7aee4970e916c88f6a8af2bc5cc0e'
+ 'de279c546cfe5de88ae3dc7b169be963b6f367361821ca1b415b9b04973781a5'
+ 'd175f0c14fdb22855090c93f76e18f04320d7bf15afc057ffde947f9bb361242'
+ 'f5ae925036744a5e88cea2698879aea0498e1e23aee7801923d90f16be383908'
+ '12f4e3aeab72e7d24221c07b64106c496c2e300518682bd301351dc9fa6ab3cf'
+ '52c5a93fb03fa8f3f99438eb803b3182766ee04e0e6b76f00b0bc848d03ff6a6'
+ '3049b76460c65a70017ba2aac8f8c45725df2bbea458a96ec7164db63639e87f'
+ 'c9f3b0dff07a7e9688f60b92a2a15817bd7cd59a8c5278cae629d856be66de5c'
+ 'c9b3c4153596b605a41456e8242d98e474be6391d6fb4b6ce70a21c4c23b5203'
+ '7e59ff3e1669d55f2a26ccdd748bfed6bbfd85d5d9206c1241cfd4443994f42c'
+ '616ec8aa12070fb058be511abdae703a62d1c99387dd6d2a7bb47cb1b5bbda5f'
+ '576d301ad50cf71782773f970b418ec9a569e8e4fccb2ae982895f3553309794'
+ '558e780e93dfa861a366c49b4d156d8fc43f17898f001ae6033ec63c33d5d41c')