summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Lamskoy2021-12-04 21:00:58 +0200
committerEugene Lamskoy2021-12-04 21:00:58 +0200
commit1981dce19c230eaa136db1f228a16d381de871b3 (patch)
tree7f1ace4b63cb77d38d96c09a3bcf81781c2c3715
parent2c49391eb015e787219a9780cf2eeb1f18697f45 (diff)
downloadaur-1981dce19c230eaa136db1f228a16d381de871b3.tar.gz
Fixed issues for php-fpm
-rw-r--r--.SRCINFO25
-rw-r--r--PKGBUILD420
-rw-r--r--apache.conf4
-rw-r--r--enchant-2.patch0
-rwxr-xr-xgenerate_patches66
-rw-r--r--php.ini.patch2
6 files changed, 184 insertions, 333 deletions
diff --git a/.SRCINFO b/.SRCINFO
index e36ddce32944..e3fe101ef313 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,7 @@
pkgbase = php81
+ pkgdesc = php 8.1.0 compiled as to not conflict with mainline php
pkgver = 8.1.0
- pkgrel = 2
+ pkgrel = 3
url = https://www.php.net/
arch = x86_64
arch = i686
@@ -39,10 +40,10 @@ pkgbase = php81
source = php.ini.patch
sha256sums = a1317eff0723a2b3d3122bbfe107a1158570ea2822dc35a5fb360086db0f6bbc
sha256sums = 702b163c66c65af92dcad8d79f41bda84bcd5d863235fcf1497c33a86db9e4ca
- sha256sums = 52bdc4a5fae96e2aab1de707001414b6a5a9a17823e1e3a47f0f1e9a9788dc3e
+ sha256sums = 4a2add00d93fa991ccdf6356090264c1059c79935642afff6e8d4a2107fa037e
sha256sums = 96e0b05a5ec72ee0f907d29fbb9612414d9dfebeee1249cbf2f2318bacf2d37c
sha256sums = eb0c0aec5b5fb282df0bfefd4d5bbc229ee80a5c5da6760ecf52697a23cc7175
- sha256sums = 6f73b6ac4b425ebc4505c7f75ca48763605b2c774c30bfa20072adcfbb1030cd
+ sha256sums = cc17f28807c63c49c6047fbaf19384f348af51bb0e737b364b9780e7b3cd4050
pkgname = php81
pkgdesc = A general-purpose scripting language that is especially suited to web development
@@ -54,10 +55,6 @@ pkgname = php81
depends = libzip
depends = pcre2
depends = argon2
- provides = php81-ldap=8.1.0
- provides = php81
- conflicts = php81-ldap
- replaces = php81-ldap
backup = etc/php81/php.ini
pkgname = php81-cgi
@@ -68,7 +65,6 @@ pkgname = php81-apache
pkgdesc = Apache SAPI for PHP
depends = php81
depends = apache
- depends = libnsl
backup = etc/httpd/conf/extra/php81_module.conf
pkgname = php81-fpm
@@ -82,8 +78,7 @@ pkgname = php81-fpm
pkgname = php81-embed
pkgdesc = Embedded PHP SAPI library
depends = php81
- depends = systemd-libs
- depends = libnsl
+ depends = libsystemd
options = !emptydirs
pkgname = php81-phpdbg
@@ -116,11 +111,6 @@ pkgname = php81-intl
depends = php81
depends = icu
-pkgname = php81-sodium
- pkgdesc = sodium module for PHP
- depends = php81
- depends = libsodium
-
pkgname = php81-odbc
pkgdesc = ODBC modules for PHP
depends = php81
@@ -155,3 +145,8 @@ pkgname = php81-xsl
pkgdesc = xsl module for PHP
depends = php81
depends = libxslt
+
+pkgname = php81-sodium
+ pkgdesc = sodium module for PHP
+ depends = php81
+ depends = libsodium
diff --git a/PKGBUILD b/PKGBUILD
index 4610604b4c31..cd873ea576c2 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,54 +1,79 @@
-_phpbase=81
-_suffix=
-pkgbase=php${_phpbase}${_suffix}
-_pkgbase=${pkgbase%$_phpbase$_suffix}
-if [ -z "${_suffix}" ]; then
- _realpkg=${pkgbase}
-else
- _realpkg=${pkgbase%$_suffix}
-fi
-pkgname=("${pkgbase}" "${_realpkg}-"{cgi,apache,fpm,embed,phpdbg,dblib,enchant,gd,imap,intl,sodium,odbc,pgsql,pspell,snmp,sqlite,tidy,xsl}"${_suffix}")
+# Build props
+phpbase=81
pkgver=8.1.0
-pkgrel=2
+pkgrel=3
+
+# Custom suffix
+suffix=
+
arch=('x86_64' 'i686')
license=('PHP')
url='https://www.php.net/'
+
+# Has php string
+_base="php"
+
+# Calculated
+program_suffix="${phpbase}${suffix}"
+pkgdesc="${_base} ${pkgver} compiled as to not conflict with mainline ${_base}"
+pkgbase="${_base}${program_suffix}"
+pkgname=("${pkgbase}" "${_base}${phpbase}-"{cgi,apache,fpm,embed,phpdbg,dblib,enchant,gd,imap,intl,odbc,pgsql,pspell,snmp,sqlite,tidy,xsl,sodium}${suffix})
+
makedepends=('apache' 'aspell' 'c-client' 'db' 'enchant' 'gd' 'gmp' 'icu' 'libsodium' 'libxslt' 'libzip' 'net-snmp'
'postgresql-libs' 'sqlite' 'systemd' 'tidy' 'unixodbc' 'curl' 'libtool' 'postfix' 'freetds' 'pcre2' 'libnsl'
'oniguruma' 'patchutils')
checkdepends=('procps-ng')
-source=("https://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz"
+
+source=("https://php.net/distributions/${_base}-${pkgver}.tar.xz"
'apache.patch' 'apache.conf' 'php-fpm.patch' 'php-fpm.tmpfiles' 'php.ini.patch')
+# Version specific"
+name_libapache_source="libphp.so"
+name_libembed_source="libphp.so"
+
+# Dirs
+dir_config="etc/${pkgbase}"
+dir_lib="usr/lib/${pkgbase}"
+
+# Binary names
+name_phpconfig="php-config${program_suffix}"
+name_phpize="phpize${program_suffix}"
+name_phar="phar${program_suffix}"
+
+# Conf names
+name_apache_module_conf="${pkgbase/-/_}_module.conf"
+
prepare() {
- cd ${srcdir}/${_pkgbase}-${pkgver}
+ cd "${_base}-${pkgver}"
patch -p0 -i ${srcdir}/apache.patch
patch -p0 -i ${srcdir}/php-fpm.patch
patch -p0 -i ${srcdir}/php.ini.patch
autoconf
rm tests/output/stream_isatty_*.phpt
+ rm Zend/tests/arginfo_zpp_mismatch*.phpt
}
build() {
# http://site.icu-project.org/download/61#TOC-Migration-Issues
- unset CPPFLAGS
+ #unset CPPFLAGS
CPPFLAGS+=' -DU_USING_ICU_NAMESPACE=1'
- local _phpconfig="--srcdir=../${_pkgbase}-${pkgver} \
+ local _phpconfig="--srcdir=../${_base}-${pkgver} \
--config-cache \
--prefix=/usr \
--sbindir=/usr/bin \
- --sysconfdir=/etc/${_realpkg} \
+ --sysconfdir=/${dir_config} \
--localstatedir=/var \
- --libdir=/usr/lib/${_realpkg} \
- --datarootdir=/usr/share/${_realpkg} \
- --datadir=/usr/share/${_realpkg} \
- --program-suffix=${_realpkg#php} \
+ --libdir=/${dir_lib} \
+ --datarootdir=/usr/share/${pkgbase} \
+ --datadir=/usr/share/${pkgbase} \
+ --program-suffix=${program_suffix} \
--with-layout=GNU \
- --with-config-file-path=/etc/${_realpkg} \
- --with-config-file-scan-dir=/etc/${_realpkg}/conf.d \
+ --with-config-file-path=/${dir_config} \
+ --with-config-file-scan-dir=/${dir_config}/conf.d \
--disable-rpath \
--mandir=/usr/share/man \
+ --without-pear \
"
local _phpextensions="\
@@ -106,12 +131,12 @@ build() {
--with-zip=shared \
"
- EXTENSION_DIR=/usr/lib/${_realpkg}/modules
+ EXTENSION_DIR="/${dir_lib}/modules"
export EXTENSION_DIR
- mkdir ${srcdir}/build
- cd ${srcdir}/build
- ln -s ../${_pkgbase}-${pkgver}/configure
+ mkdir "${srcdir}/build"
+ cd "${srcdir}/build"
+ ln -s ../${_base}-${pkgver}/configure
./configure ${_phpconfig} \
--enable-cgi \
--enable-fpm \
@@ -141,117 +166,67 @@ build() {
make
}
-#check() {
-#
-# unset CPPFLAGS
-# cd ${srcdir}/build
-
- # Check if sendmail was configured correctly (FS#47600)
-# sapi/cli/php -n -r 'echo ini_get("sendmail_path");' | grep -q '/usr/bin/sendmail'
-
-# export REPORT_EXIT_STATUS=1
-# export NO_INTERACTION=1
-# export SKIP_ONLINE_TESTS=1
-# export SKIP_SLOW_TESTS=1
-# export TEST_PHP_ARGS="-j$(nproc)"
-# export TESTS='tests Zend'
-#
-# make test
-#}
-
-if [ -z "${_suffix}" ]; then
-package_php81() {
-pkgdesc='A general-purpose scripting language that is especially suited to web development'
- depends=('libxml2' 'hspell' 'nuspell' 'libvoikko' 'curl' 'libzip' 'pcre2' 'argon2')
- replaces=("${_realpkg}-ldap")
- conflicts=("${_realpkg}-ldap")
- provides=("${_realpkg}-ldap=${pkgver}" "${_realpkg}")
- backup=("etc/${_realpkg}/php.ini")
-
+check() {
+ #unset CPPFLAGS
cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} install-{modules,cli,build,headers,programs,pharcmd}
- install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/${_realpkg}/php.ini
- install -d -m755 ${pkgdir}/etc/${_realpkg}/conf.d/
-
- # remove static modules
- rm -f ${pkgdir}/usr/lib/${_realpkg}/modules/*.a
- # remove modules provided by sub packages
- rm -f ${pkgdir}/usr/lib/${_realpkg}/modules/{enchant,gd,imap,intl,sodium,odbc,pdo_dblib,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
- # remove empty directory
- rmdir ${pkgdir}/usr/include/php/include
-
- # move include directory
- mv ${pkgdir}/usr/include/php ${pkgdir}/usr/include/${_realpkg}
-
- # fix phar symlink
- #rm ${pkgdir}/usr/bin/phar
- ln -sf phar${_phpbase}.phar ${pkgdir}/usr/bin/phar${_phpbase}
-
- # rename executables
- #mv ${pkgdir}/usr/bin/phar.phar ${pkgdir}/usr/bin/phar.phar${_phpbase}
-
- # rename man pages
- #mv ${pkgdir}/usr/share/man/man1/{phar,phar80}.1
- #mv ${pkgdir}/usr/share/man/man1/phar.{phar,phar80}.1
- # fix paths in executables
- sed -i "/^includedir=/c \includedir=/usr/include/${_realpkg}" ${pkgdir}/usr/bin/phpize${_phpbase}
- sed -i "/^include_dir=/c \include_dir=/usr/include/${_realpkg}" ${pkgdir}/usr/bin/php-config${_phpbase}
+ # Check if sendmail was configured correctly (FS#47600)
+ sapi/cli/php -n -r 'echo ini_get("sendmail_path");' | grep -q '/usr/bin/sendmail'
- # make phpize use php-config
- _tmpsed="/^\[ --with-php-config=/c \[ --with-php-config=PATH Path to php-config [php-config${_phpbase}]], php-config${_phpbase}, no)"
- sed -i "${_tmpsed}" ${pkgdir}/usr/lib/${_realpkg}/build/phpize.m4
+ export REPORT_EXIT_STATUS=1
+ export NO_INTERACTION=1
+ export SKIP_ONLINE_TESTS=1
+ export SKIP_SLOW_TESTS=1
+ export TEST_PHP_ARGS="-j$(nproc)"
+ export TESTS='tests Zend'
+ make test
}
-else
-package_php81-el() {
-pkgdesc='A general-purpose scripting language that is especially suited to web development'
+
+package_php81() {
+ pkgdesc='A general-purpose scripting language that is especially suited to web development'
depends=('libxml2' 'hspell' 'nuspell' 'libvoikko' 'curl' 'libzip' 'pcre2' 'argon2')
- replaces=("${_realpkg}-ldap")
- conflicts=("${_realpkg}-ldap")
- provides=("${_realpkg}-ldap=${pkgver}" "${_realpkg}")
- backup=("etc/${_realpkg}/php.ini")
+ backup=("${dir_config}/php.ini")
+ #provides=("${pkgbase}=${pkgver}")
cd ${srcdir}/build
make -j1 INSTALL_ROOT=${pkgdir} install-{modules,cli,build,headers,programs,pharcmd}
- install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/${_realpkg}/php.ini
- install -d -m755 ${pkgdir}/etc/${_realpkg}/conf.d/
+ install -D -m644 ${srcdir}/${_base}-${pkgver}/php.ini-production ${pkgdir}/${dir_config}/php.ini
+ install -d -m755 ${pkgdir}/${dir_config}/conf.d/
# remove static modules
- rm -f ${pkgdir}/usr/lib/${_realpkg}/modules/*.a
+ rm -f ${pkgdir}/${dir_lib}/modules/*.a
# remove modules provided by sub packages
- rm -f ${pkgdir}/usr/lib/${_realpkg}/modules/{enchant,gd,imap,intl,sodium,odbc,pdo_dblib,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
+ rm -f ${pkgdir}/${dir_lib}/modules/{enchant,gd,imap,intl,sodium,odbc,pdo_dblib,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
# remove empty directory
rmdir ${pkgdir}/usr/include/php/include
# move include directory
- mv ${pkgdir}/usr/include/php ${pkgdir}/usr/include/${_realpkg}
+ mv ${pkgdir}/usr/include/php ${pkgdir}/usr/include/${pkgbase}
# fix phar symlink
- #rm ${pkgdir}/usr/bin/phar
- ln -sf phar${_phpbase}.phar ${pkgdir}/usr/bin/phar${_phpbase}
+ #rm ${pkgdir}/usr/bin/phar
+ ln -sf ${name_phar}.phar ${pkgdir}/usr/bin/${name_phar}
# rename executables
- #mv ${pkgdir}/usr/bin/phar.phar ${pkgdir}/usr/bin/phar.phar${_phpbase}
+ #mv ${pkgdir}/usr/bin/phar.phar ${pkgdir}/usr/bin/${name_phar}.phar
+
# rename man pages
- #mv ${pkgdir}/usr/share/man/man1/{phar,phar80}.1
- #mv ${pkgdir}/usr/share/man/man1/phar.{phar,phar80}.1
+ #mv ${pkgdir}/usr/share/man/man1/{phar,${name_phar}}.1
+ #mv ${pkgdir}/usr/share/man/man1/phar.{phar,${name_phar}}.1
# fix paths in executables
- sed -i "/^includedir=/c \includedir=/usr/include/${_realpkg}" ${pkgdir}/usr/bin/phpize${_phpbase}
- sed -i "/^include_dir=/c \include_dir=/usr/include/${_realpkg}" ${pkgdir}/usr/bin/php-config${_phpbase}
+ sed -i "/^includedir=/c \includedir=/usr/include/${pkgbase}" ${pkgdir}/usr/bin/${name_phpize}
+ sed -i "/^include_dir=/c \include_dir=/usr/include/${pkgbase}" ${pkgdir}/usr/bin/${name_phpconfig}
- # make phpize use php-config
- _tmpsed="/^\[ --with-php-config=/c \[ --with-php-config=PATH Path to php-config [php-config${_phpbase}]], php-config${_phpbase}, no)"
- sed -i "${_tmpsed}" ${pkgdir}/usr/lib/${_realpkg}/build/phpize.m4
+ # make phpize use php-config${phpbase}
+ sed -i "/^\[ --with-php-config=/c \[ --with-php-config=PATH Path to php-config [${name_phpconfig}]], ${name_phpconfig}, no)" ${pkgdir}/${dir_lib}/build/phpize.m4
}
-fi
-
-if [ -z "${_suffix}" ]; then
package_php81-cgi() {
pkgdesc='CGI and FCGI SAPI for PHP'
depends=("${pkgbase}")
+ #provides=("${pkgbase}-cgi=${pkgver}")
cd ${srcdir}/build
make -j1 INSTALL_ROOT=${pkgdir} install-cgi
@@ -259,39 +234,47 @@ package_php81-cgi() {
package_php81-apache() {
pkgdesc='Apache SAPI for PHP'
- depends=("${pkgbase}" 'apache' 'libnsl')
- backup=("etc/httpd/conf/extra/${_realpkg}_module.conf")
-
- install -D -m755 ${srcdir}/build-apache/libs/libphp.so ${pkgdir}/usr/lib/httpd/modules/lib${_realpkg}.so
- install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/${_realpkg}_module.conf
+ depends=("${pkgbase}" 'apache')
+ backup=("etc/httpd/conf/extra/${name_apache_module_conf}")
+ #provides=("${pkgbase}-apache=${pkgver}")
+ echo "# End of LoadModule in httpd.conf - see ArchWiki Apache HTTP Server"
+ echo "LoadModule php7_module modules/lib${pkgbase}.so"
+ echo "AddHandler php7-script .php"
+ echo "# End of Include List"
+ echo "Include conf/extra/${name_apache_module_conf}"
+ install -D -m755 ${srcdir}/build-apache/libs/${name_libapache_source} ${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so
+ install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/${name_apache_module_conf}
}
package_php81-fpm() {
pkgdesc='FastCGI Process Manager for PHP'
depends=("${pkgbase}" 'systemd')
- backup=("etc/${_realpkg}/php-fpm.conf" "etc/${_realpkg}/php-fpm.d/www.conf")
+ backup=("${dir_config}/php-fpm.conf" "${dir_config}/php-fpm.d/www.conf")
options=('!emptydirs')
+ #provides=("${pkgbase}-fpm=${pkgver}")
cd ${srcdir}/build
make -j1 INSTALL_ROOT=${pkgdir} install-fpm
- install -D -m644 sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/${_realpkg}-fpm.service
- install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/${_realpkg}-fpm.conf
+ install -D -m644 sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/${pkgbase}-fpm.service
+ install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/${pkgbase}-fpm.conf
}
package_php81-embed() {
pkgdesc='Embedded PHP SAPI library'
- depends=("${pkgbase}" 'systemd-libs' 'libnsl')
+ depends=("${pkgbase}" 'libsystemd')
options=('!emptydirs')
+ #provides=("${pkgbase}-embed=${pkgver}")
cd ${srcdir}/build
make -j1 INSTALL_ROOT=${pkgdir} PHP_SAPI=embed install-sapi
- mv ${pkgdir}/usr/lib/libphp.so ${pkgdir}/usr/lib/libphp-${_phpbase}.so
+ mv ${pkgdir}/usr/lib/${name_libembed_source} ${pkgdir}/usr/lib/libphp${program_suffix}.so
}
package_php81-phpdbg() {
pkgdesc='Interactive PHP debugger'
depends=("${pkgbase}")
options=('!emptydirs')
+ #provides=("${pkgbase}-phpdbg=${pkgver}")
cd ${srcdir}/build-phpdbg
make -j1 INSTALL_ROOT=${pkgdir} install-phpdbg
@@ -300,247 +283,110 @@ package_php81-phpdbg() {
package_php81-dblib() {
pkgdesc='dblib module for PHP'
depends=("${pkgbase}" 'freetds')
+ #provides=("${pkgbase}-dblib=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/pdo_dblib.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_dblib.so
+ install -D -m755 ${srcdir}/build/modules/pdo_dblib.so ${pkgdir}/${dir_lib}/modules/pdo_dblib.so
}
package_php81-enchant() {
pkgdesc='enchant module for PHP'
depends=("${pkgbase}" 'enchant')
+ #provides=("${pkgbase}-enchant=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/enchant.so ${pkgdir}/usr/lib/${_realpkg}/modules/enchant.so
+ install -D -m755 ${srcdir}/build/modules/enchant.so ${pkgdir}/${dir_lib}/modules/enchant.so
}
package_php81-gd() {
pkgdesc='gd module for PHP'
depends=("${pkgbase}" 'gd')
+ #provides=("${pkgbase}-gd=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/gd.so ${pkgdir}/usr/lib/${_realpkg}/modules/gd.so
+ install -D -m755 ${srcdir}/build/modules/gd.so ${pkgdir}/${dir_lib}/modules/gd.so
}
package_php81-imap() {
pkgdesc='imap module for PHP'
depends=("${pkgbase}" 'c-client')
+ #provides=("${pkgbase}-imap=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/imap.so ${pkgdir}/usr/lib/${_realpkg}/modules/imap.so
+ install -D -m755 ${srcdir}/build/modules/imap.so ${pkgdir}/${dir_lib}/modules/imap.so
}
package_php81-intl() {
pkgdesc='intl module for PHP'
depends=("${pkgbase}" 'icu')
+ #provides=("${pkgbase}-intl=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/intl.so ${pkgdir}/usr/lib/${_realpkg}/modules/intl.so
-}
-
-package_php81-sodium() {
- pkgdesc='sodium module for PHP'
- depends=("${pkgbase}" 'libsodium')
-
- install -D -m755 ${srcdir}/build/modules/sodium.so ${pkgdir}/usr/lib/${_realpkg}/modules/sodium.so
+ install -D -m755 ${srcdir}/build/modules/intl.so ${pkgdir}/${dir_lib}/modules/intl.so
}
package_php81-odbc() {
pkgdesc='ODBC modules for PHP'
depends=("${pkgbase}" 'unixodbc')
+ #provides=("${pkgbase}-odbc=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/odbc.so ${pkgdir}/usr/lib/${_realpkg}/modules/odbc.so
- install -D -m755 ${srcdir}/build/modules/pdo_odbc.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_odbc.so
+ install -D -m755 ${srcdir}/build/modules/odbc.so ${pkgdir}/${dir_lib}/modules/odbc.so
+ install -D -m755 ${srcdir}/build/modules/pdo_odbc.so ${pkgdir}/${dir_lib}/modules/pdo_odbc.so
}
package_php81-pgsql() {
pkgdesc='PostgreSQL modules for PHP'
depends=("${pkgbase}" 'postgresql-libs')
+ #provides=("${pkgbase}-pgsql=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/pgsql.so ${pkgdir}/usr/lib/${_realpkg}/modules/pgsql.so
- install -D -m755 ${srcdir}/build/modules/pdo_pgsql.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_pgsql.so
+ install -D -m755 ${srcdir}/build/modules/pgsql.so ${pkgdir}/${dir_lib}/modules/pgsql.so
+ install -D -m755 ${srcdir}/build/modules/pdo_pgsql.so ${pkgdir}/${dir_lib}/modules/pdo_pgsql.so
}
package_php81-pspell() {
pkgdesc='pspell module for PHP'
depends=("${pkgbase}" 'aspell')
+ #provides=("${pkgbase}-pspell=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/pspell.so ${pkgdir}/usr/lib/${_realpkg}/modules/pspell.so
+ install -D -m755 ${srcdir}/build/modules/pspell.so ${pkgdir}/${dir_lib}/modules/pspell.so
}
package_php81-snmp() {
pkgdesc='snmp module for PHP'
depends=("${pkgbase}" 'net-snmp')
+ #provides=("${pkgbase}-snmp=${pkgver}")
- install -D -m755 ${srcdir}/build/modules/snmp.so ${pkgdir}/usr/lib/${_realpkg}/modules/snmp.so
+ install -D -m755 ${srcdir}/build/modules/snmp.so ${pkgdir}/${dir_lib}/modules/snmp.so
}
package_php81-sqlite() {
pkgdesc='sqlite module for PHP'
depends=("${pkgbase}" 'sqlite')
-
- install -D -m755 ${srcdir}/build/modules/sqlite3.so ${pkgdir}/usr/lib/${_realpkg}/modules/sqlite3.so
- install -D -m755 ${srcdir}/build/modules/pdo_sqlite.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_sqlite.so
+ #provides=("${pkgbase}-sqlite=${pkgver}")
+ install -D -m755 ${srcdir}/build/modules/sqlite3.so ${pkgdir}/${dir_lib}/modules/sqlite3.so
+ install -D -m755 ${srcdir}/build/modules/pdo_sqlite.so ${pkgdir}/${dir_lib}/modules/pdo_sqlite.so
}
package_php81-tidy() {
pkgdesc='tidy module for PHP'
depends=("${pkgbase}" 'tidy')
-
- install -D -m755 ${srcdir}/build/modules/tidy.so ${pkgdir}/usr/lib/${_realpkg}/modules/tidy.so
+ #provides=("${pkgbase}-tidy=${pkgver}")
+ install -D -m755 ${srcdir}/build/modules/tidy.so ${pkgdir}/${dir_lib}/modules/tidy.so
}
package_php81-xsl() {
pkgdesc='xsl module for PHP'
depends=("${pkgbase}" 'libxslt')
-
- install -D -m755 ${srcdir}/build/modules/xsl.so ${pkgdir}/usr/lib/${_realpkg}/modules/xsl.so
-}
-else
-
-
-
-
-package_php81-cgi-el() {
- pkgdesc='CGI and FCGI SAPI for PHP'
- depends=("${pkgbase}")
-
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} install-cgi
-}
-
-package_php81-apache-el() {
- pkgdesc='Apache SAPI for PHP'
- depends=("${pkgbase}" 'apache' 'libnsl')
- backup=("etc/httpd/conf/extra/${_realpkg}_module.conf")
-
- install -D -m755 ${srcdir}/build-apache/libs/libphp.so ${pkgdir}/usr/lib/httpd/modules/lib${_realpkg}.so
- install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/${_realpkg}_module.conf
-}
-
-package_php81-fpm-el() {
- pkgdesc='FastCGI Process Manager for PHP'
- depends=("${pkgbase}" 'systemd')
- backup=("etc/${_realpkg}/php-fpm.conf" "etc/${_realpkg}/php-fpm.d/www.conf")
- options=('!emptydirs')
-
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} install-fpm
- install -D -m644 sapi/fpm/php-fpm.service ${pkgdir}/usr/lib/systemd/system/${_realpkg}-fpm.service
- install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/${_realpkg}-fpm.conf
+ #provides=("${pkgbase}-xsl=${pkgver}")
+ install -D -m755 ${srcdir}/build/modules/xsl.so ${pkgdir}/${dir_lib}/modules/xsl.so
}
-package_php81-embed-el() {
- pkgdesc='Embedded PHP SAPI library'
- depends=("${pkgbase}" 'systemd-libs' 'libnsl')
- options=('!emptydirs')
-
- cd ${srcdir}/build
- make -j1 INSTALL_ROOT=${pkgdir} PHP_SAPI=embed install-sapi
- mv ${pkgdir}/usr/lib/libphp.so ${pkgdir}/usr/lib/libphp-${_phpbase}.so
-}
-
-package_php81-phpdbg-el() {
- pkgdesc='Interactive PHP debugger'
- depends=("${pkgbase}")
- options=('!emptydirs')
-
- cd ${srcdir}/build-phpdbg
- make -j1 INSTALL_ROOT=${pkgdir} install-phpdbg
-}
-
-package_php81-dblib-el() {
- pkgdesc='dblib module for PHP'
- depends=("${pkgbase}" 'freetds')
-
- install -D -m755 ${srcdir}/build/modules/pdo_dblib.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_dblib.so
-}
-
-package_php81-enchant-el() {
- pkgdesc='enchant module for PHP'
- depends=("${pkgbase}" 'enchant')
-
- install -D -m755 ${srcdir}/build/modules/enchant.so ${pkgdir}/usr/lib/${_realpkg}/modules/enchant.so
-}
-
-package_php81-gd-el() {
- pkgdesc='gd module for PHP'
- depends=("${pkgbase}" 'gd')
-
- install -D -m755 ${srcdir}/build/modules/gd.so ${pkgdir}/usr/lib/${_realpkg}/modules/gd.so
-}
-
-package_php81-imap-el() {
- pkgdesc='imap module for PHP'
- depends=("${pkgbase}" 'c-client')
-
- install -D -m755 ${srcdir}/build/modules/imap.so ${pkgdir}/usr/lib/${_realpkg}/modules/imap.so
-}
-
-package_php81-intl-el() {
- pkgdesc='intl module for PHP'
- depends=("${pkgbase}" 'icu')
-
- install -D -m755 ${srcdir}/build/modules/intl.so ${pkgdir}/usr/lib/${_realpkg}/modules/intl.so
-}
-
-package_php81-sodium-el() {
+package_php81-sodium() {
pkgdesc='sodium module for PHP'
depends=("${pkgbase}" 'libsodium')
-
- install -D -m755 ${srcdir}/build/modules/sodium.so ${pkgdir}/usr/lib/${_realpkg}/modules/sodium.so
-}
-
-package_php81-odbc-el() {
- pkgdesc='ODBC modules for PHP'
- depends=("${pkgbase}" 'unixodbc')
-
- install -D -m755 ${srcdir}/build/modules/odbc.so ${pkgdir}/usr/lib/${_realpkg}/modules/odbc.so
- install -D -m755 ${srcdir}/build/modules/pdo_odbc.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_odbc.so
-}
-
-package_php81-pgsql-el() {
- pkgdesc='PostgreSQL modules for PHP'
- depends=("${pkgbase}" 'postgresql-libs')
-
- install -D -m755 ${srcdir}/build/modules/pgsql.so ${pkgdir}/usr/lib/${_realpkg}/modules/pgsql.so
- install -D -m755 ${srcdir}/build/modules/pdo_pgsql.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_pgsql.so
+ #provides=("${pkgbase}-sodium=${pkgver}")
+ install -D -m755 ${srcdir}/build/modules/sodium.so ${pkgdir}/${dir_lib}/modules/sodium.so
}
-package_php81-pspell-el() {
- pkgdesc='pspell module for PHP'
- depends=("${pkgbase}" 'aspell')
-
- install -D -m755 ${srcdir}/build/modules/pspell.so ${pkgdir}/usr/lib/${_realpkg}/modules/pspell.so
-}
-
-package_php81-snmp-el() {
- pkgdesc='snmp module for PHP'
- depends=("${pkgbase}" 'net-snmp')
-
- install -D -m755 ${srcdir}/build/modules/snmp.so ${pkgdir}/usr/lib/${_realpkg}/modules/snmp.so
-}
-
-package_php81-sqlite-el() {
- pkgdesc='sqlite module for PHP'
- depends=("${pkgbase}" 'sqlite')
-
- install -D -m755 ${srcdir}/build/modules/sqlite3.so ${pkgdir}/usr/lib/${_realpkg}/modules/sqlite3.so
- install -D -m755 ${srcdir}/build/modules/pdo_sqlite.so ${pkgdir}/usr/lib/${_realpkg}/modules/pdo_sqlite.so
-}
-
-package_php81-tidy-el() {
- pkgdesc='tidy module for PHP'
- depends=("${pkgbase}" 'tidy')
-
- install -D -m755 ${srcdir}/build/modules/tidy.so ${pkgdir}/usr/lib/${_realpkg}/modules/tidy.so
-}
-
-package_php81-xsl-el() {
- pkgdesc='xsl module for PHP'
- depends=("${pkgbase}" 'libxslt')
-
- install -D -m755 ${srcdir}/build/modules/xsl.so ${pkgdir}/usr/lib/${_realpkg}/modules/xsl.so
-}
-fi
sha256sums=('a1317eff0723a2b3d3122bbfe107a1158570ea2822dc35a5fb360086db0f6bbc'
'702b163c66c65af92dcad8d79f41bda84bcd5d863235fcf1497c33a86db9e4ca'
- '52bdc4a5fae96e2aab1de707001414b6a5a9a17823e1e3a47f0f1e9a9788dc3e'
+ '4a2add00d93fa991ccdf6356090264c1059c79935642afff6e8d4a2107fa037e'
'96e0b05a5ec72ee0f907d29fbb9612414d9dfebeee1249cbf2f2318bacf2d37c'
'eb0c0aec5b5fb282df0bfefd4d5bbc229ee80a5c5da6760ecf52697a23cc7175'
- '6f73b6ac4b425ebc4505c7f75ca48763605b2c774c30bfa20072adcfbb1030cd')
+ 'cc17f28807c63c49c6047fbaf19384f348af51bb0e737b364b9780e7b3cd4050')
diff --git a/apache.conf b/apache.conf
index 1ff98e95061e..bc57ba73dbcd 100644
--- a/apache.conf
+++ b/apache.conf
@@ -1,7 +1,7 @@
-# Required modules: dir_module, php8_module
+# Required modules: dir_module, php_module
<IfModule dir_module>
- <IfModule php8_module>
+ <IfModule php_module>
DirectoryIndex index.php index.html
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
diff --git a/enchant-2.patch b/enchant-2.patch
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/enchant-2.patch
+++ /dev/null
diff --git a/generate_patches b/generate_patches
index d773305aba7f..7b51e2ee7a66 100755
--- a/generate_patches
+++ b/generate_patches
@@ -4,50 +4,58 @@
makepkg -o --nodeps --noprepare --skipinteg
-pushd src/${_pkgbase}-${pkgver}
+pushd src/php-${pkgver}
sed '/APACHE_THREADED_MPM=/d' -i.orig sapi/apache2handler/config.m4
sed 's/.conf.default/.conf/g' -i.orig sapi/fpm/Makefile.frag
sed \
- -e 's#run/php-fpm.pid#/run/php81-fpm/php-fpm.pid#' \
- -e 's#^;error_log =.*#error_log = syslog#' \
- -i.orig sapi/fpm/php-fpm.conf.in
+ -e "s#run/php-fpm.pid#/run/php${phpbase}${suffix}-fpm/php-fpm.pid#" \
+ -e 's#^;error_log =.*#error_log = syslog#' \
+ -i.orig sapi/fpm/php-fpm.conf.in
sed \
- -e 's#^listen =.*#listen = /run/php81-fpm/php-fpm.sock#' \
- -e 's#^;listen.owner =#listen.owner =#' \
- -e 's#^;listen.group =#listen.group =#' \
- -e 's#^;chdir =.*#;chdir = /srv/http#' \
- -i.orig sapi/fpm/www.conf.in
+ -e "s#^listen =.*#listen = /run/php${phpbase}${suffix}-fpm/php-fpm.sock#" \
+ -e 's#^;listen.owner =#listen.owner =#' \
+ -e 's#^;listen.group =#listen.group =#' \
+ -e 's#^;chdir =.*#;chdir = /srv/http#' \
+ -i.orig sapi/fpm/www.conf.in
sed \
- -e 's#^PIDFile=.*#PIDFile=/run/php81-fpm/php-fpm.pid#' \
- -e 's#^ExecStart=@EXPANDED_SBINDIR@/php-fpm --nodaemonize#ExecStart=@EXPANDED_SBINDIR@/php-fpm81 --nodaemonize#' \
- -i.orig sapi/fpm/php-fpm.service.in
+ -e "s#^PIDFile=.*#PIDFile=/run/php${phpbase}${suffix}-fpm/php-fpm.pid#" \
+ -e "s#^ExecStart=@EXPANDED_SBINDIR@/php-fpm --nodaemonize#ExecStart=@EXPANDED_SBINDIR@/php-fpm${phpbase}${suffix} --nodaemonize#" \
+ -i.orig sapi/fpm/php-fpm.service.in
extensions=";extension=bcmath\n;extension=bz2\n;extension=calendar\nextension=curl\n;extension=dba\n;extension=enchant\n;extension=exif\n;extension=ffi\n;extension=ftp\n;extension=gd\n;extension=gettext\n;extension=gmp\n;extension=iconv\n;extension=imap\n;extension=intl\n;extension=ldap\n;extension=mysqli\n;extension=odbc\n;zend_extension=opcache\n;extension=pdo_dblib\n;extension=pdo_mysql\n;extension=pdo_odbc\n;extension=pdo_pgsql\n;extension=pdo_sqlite\n;extension=pgsql\n;extension=pspell\n;extension=shmop\n;extension=snmp\n;extension=soap\n;extension=sockets\n;extension=sodium\n;extension=sqlite3\n;extension=sysvmsg\n;extension=sysvsem\n;extension=sysvshm\n;extension=tidy\n;extension=xmlrpc\n;extension=xsl\nextension=zip\n"
sed \
- -r ":a;N;\$!ba;s/; Notes for Windows environments :\n.+;?extension=\w+\n/${extensions}/g" \
- -i.orig php.ini-production
-sed \
- -e 's#^;extension_dir = "\./"$#extension_dir = "/usr/lib/php81/modules/"#g' \
- -i php.ini-production
+ -r ":a;N;\$!ba;s/; Notes for Windows environments :\n.+;?extension=\w+\n/${extensions}/g" \
+ -i.orig php.ini-production
sed \
- -r 's#PKG_CHECK_MODULES\(\[ENCHANT\], \[enchant\]\)#PKG_CHECK_MODULES([ENCHANT], [enchant-2])#g' \
- -i.orig ext/enchant/config.m4
-sed \
- -r 's#enchant_dict_free_suggestions\(pdict->pdict, suggs\)#enchant_dict_free_string_list(pdict->pdict, suggs)#g' \
- -i.orig ext/enchant/enchant.c
+ -e 's#^; extension_dir = "\./"$#extension_dir = "BIG_BAD_MODULES"#g' \
+ -i php.ini-production
+
sed \
- -r 's#enchant_dict_add_to_personal\(pdict->pdict, word, wordlen\)#enchant_dict_add(pdict->pdict, word, wordlen)#g' \
- -i ext/enchant/enchant.c
+ -e 's#^;extension_dir = "\./"$#extension_dir = "BIG_BAD_MODULES"#g' \
+ -i php.ini-production
+
sed \
- -r 's#enchant_dict_is_in_session\(pdict->pdict, word, wordlen\)#enchant_dict_is_added(pdict->pdict, word, wordlen)#g' \
- -i ext/enchant/enchant.c
+ -e "s#BIG_BAD_MODULES#/usr/lib/php${phpbase}${suffix}/modules#g" \
+ -i php.ini-production
+# sed \
+# -r 's#PKG_CHECK_MODULES\(\[ENCHANT\], \[enchant\]\)#PKG_CHECK_MODULES([ENCHANT], [enchant-2])#g' \
+# -i.orig ext/enchant/config.m4
+# sed \
+# -r 's#enchant_dict_free_suggestions\(pdict->pdict, suggs\)#enchant_dict_free_string_list(pdict->pdict, suggs)#g' \
+# -i.orig ext/enchant/enchant.c
+# sed \
+# -r 's#enchant_dict_add_to_personal\(pdict->pdict, word, wordlen\)#enchant_dict_add(pdict->pdict, word, wordlen)#g' \
+# -i ext/enchant/enchant.c
+# sed \
+# -r 's#enchant_dict_is_in_session\(pdict->pdict, word, wordlen\)#enchant_dict_is_added(pdict->pdict, word, wordlen)#g' \
+# -i ext/enchant/enchant.c
diff -u sapi/apache2handler/config.m4.orig sapi/apache2handler/config.m4 | filterdiff --clean --remove-timestamps > ../../apache.patch
@@ -58,7 +66,9 @@ diff -u sapi/fpm/php-fpm.service.in.orig sapi/fpm/php-fpm.service.in | filterdif
diff -u php.ini-production.orig php.ini-production | filterdiff --clean --remove-timestamps > ../../php.ini.patch
-diff -u ext/enchant/config.m4.orig ext/enchant/config.m4 | filterdiff --clean --remove-timestamps > ../../enchant-2.patch
-diff -u ext/enchant/enchant.c.orig ext/enchant/enchant.c | filterdiff --clean --remove-timestamps >> ../../enchant-2.patch
+# diff -u ext/enchant/config.m4.orig ext/enchant/config.m4 | filterdiff --clean --remove-timestamps > ../../enchant-2.patch
+# diff -u ext/enchant/enchant.c.orig ext/enchant/enchant.c | filterdiff --clean --remove-timestamps >> ../../enchant-2.patch
popd
+
+echo "d /run/php${phpbase}${suffix}-fpm 755 root root" > php-fpm.tmpfiles
diff --git a/php.ini.patch b/php.ini.patch
index 17536d60f0ff..92937b196338 100644
--- a/php.ini.patch
+++ b/php.ini.patch
@@ -5,7 +5,7 @@
; Directory in which the loadable extensions (modules) reside.
; https://php.net/extension-dir
-;extension_dir = "./"
-+extension_dir = "/usr/lib/php81/modules/"
++extension_dir = "/usr/lib/php81/modules"
; On windows:
;extension_dir = "ext"