diff options
author | Raphaël Doursenaud | 2016-03-10 17:16:56 +0100 |
---|---|---|
committer | Raphaël Doursenaud | 2016-03-10 17:19:05 +0100 |
commit | 4f7f61157312b7f549483a38a79624b0867eda36 (patch) | |
tree | 7da1178fbb1bb5032f849ca56d383a833ec24b97 | |
download | aur-4f7f61157312b7f549483a38a79624b0867eda36.tar.gz |
v5.5.33
Package adapted from php56
-rw-r--r-- | .SRCINFO | 177 | ||||
-rw-r--r-- | PKGBUILD | 435 | ||||
-rw-r--r-- | apache.conf | 13 | ||||
-rw-r--r-- | logrotate.d.php-fpm | 8 | ||||
-rw-r--r-- | php-apache.install | 11 | ||||
-rw-r--r-- | php-fpm.conf.in.patch | 52 | ||||
-rw-r--r-- | php-fpm.install | 9 | ||||
-rw-r--r-- | php-fpm.service | 13 | ||||
-rw-r--r-- | php-fpm.tmpfiles | 1 | ||||
-rw-r--r-- | php.ini.patch | 119 |
10 files changed, 838 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..64e9558f1078 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,177 @@ +# Generated by mksrcinfo v8 +# Thu Mar 10 16:19:03 UTC 2016 +pkgbase = php55 + pkgdesc = A general-purpose scripting language that is especially suited to web development + pkgver = 5.5.33 + pkgrel = 1 + url = http://php.net + arch = i686 + arch = x86_64 + license = PHP + makedepends = apache + makedepends = c-client + makedepends = postgresql-libs + makedepends = libldap + makedepends = smtp-forwarder + makedepends = sqlite + makedepends = unixodbc + makedepends = net-snmp + makedepends = libzip + makedepends = enchant + makedepends = file + makedepends = freetds + makedepends = libmcrypt + makedepends = tidyhtml + makedepends = aspell + makedepends = libltdl + makedepends = gd + makedepends = icu + makedepends = curl + makedepends = libxslt + makedepends = openssl + makedepends = db + makedepends = gmp + makedepends = systemd + source = http://php.net/distributions/php-5.5.33.tar.xz + source = http://php.net/distributions/php-5.5.33.tar.xz.asc + source = php.ini.patch + source = apache.conf + source = php-fpm.conf.in.patch + source = logrotate.d.php-fpm + source = php-fpm.service + source = php-fpm.tmpfiles + md5sums = c1b9e661a8e6e98bdd03aae7ac9534fe + md5sums = SKIP + md5sums = 7b61f3f94afbe598256fba61663f2822 + md5sums = dec2cbaad64e3abf4f0ec70e1de4e8e9 + md5sums = c8c7ce56789ba4ce3255da68a6bb1228 + md5sums = 26a26f832e760f7db048185818404796 + md5sums = aac9e1468ddebc732e40c555d4e9a378 + md5sums = 4e13de0606d14bbceeebf6fe818358c8 + +pkgname = php55 + pkgdesc = An HTML-embedded scripting language + depends = pcre + depends = libxml2 + depends = curl + depends = libzip + provides = php=5.5.33 + backup = etc/php55/php.ini + +pkgname = php55-cgi + pkgdesc = CGI and FCGI SAPI for PHP + depends = php55 + provides = php-cgi=5.5.33 + +pkgname = php55-apache + pkgdesc = Apache SAPI for PHP + install = php-apache.install + depends = php55 + depends = apache + provides = php-apache=5.5.33 + backup = etc/httpd/conf/extra/php55_module.conf + +pkgname = php55-fpm + pkgdesc = FastCGI Process Manager for PHP + install = php-fpm.install + depends = php55 + depends = systemd + provides = php-fpm=5.5.33 + backup = etc/php55/php-fpm.conf + +pkgname = php55-embed + pkgdesc = Embedded PHP SAPI library + depends = php55 + provides = php-embed=5.5.33 + +pkgname = php55-pear + pkgdesc = PHP Extension and Application Repository + depends = php55 + provides = php-pear=5.5.33 + backup = etc/php55/pear.conf + +pkgname = php55-enchant + pkgdesc = enchant module for PHP + depends = php55 + depends = enchant + provides = php-enchant=5.5.33 + +pkgname = php55-gd + pkgdesc = gd module for PHP + depends = php55 + depends = gd + provides = php-gd=5.5.33 + +pkgname = php55-imap + pkgdesc = imap module for PHP + depends = php55 + depends = c-client + provides = php-imap=5.5.33 + +pkgname = php55-intl + pkgdesc = intl module for PHP + depends = php55 + depends = icu + provides = php-intl=5.5.33 + +pkgname = php55-ldap + pkgdesc = ldap module for PHP + depends = php55 + depends = libldap + provides = php55-ldap=5.5.33 + +pkgname = php55-mcrypt + pkgdesc = mcrypt module for PHP + depends = php55 + depends = libmcrypt + depends = libltdl + provides = php-mcrypt=5.5.33 + +pkgname = php55-mssql + pkgdesc = mssql module for PHP + depends = php55 + depends = freetds + provides = php-mssql=5.5.33 + +pkgname = php55-odbc + pkgdesc = ODBC modules for PHP + depends = php55 + depends = unixodbc + provides = php-odbc=5.5.33 + +pkgname = php55-pgsql + pkgdesc = PostgreSQL modules for PHP + depends = php55 + depends = postgresql-libs + provides = php-pgsql=5.5.33 + +pkgname = php55-pspell + pkgdesc = pspell module for PHP + depends = php55 + depends = aspell + provides = php-pspell=5.5.33 + +pkgname = php55-snmp + pkgdesc = snmp module for PHP + depends = php55 + depends = net-snmp + provides = php-snmp=5.5.33 + +pkgname = php55-sqlite + pkgdesc = sqlite module for PHP + depends = php55 + depends = sqlite + provides = php-sqlite=5.5.33 + +pkgname = php55-tidy + pkgdesc = tidy module for PHP + depends = php55 + depends = tidyhtml + provides = php-tidy=5.5.33 + +pkgname = php55-xsl + pkgdesc = xsl module for PHP + depends = php55 + depends = libxslt + provides = php-xsl=5.5.33 + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..60213bb58829 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,435 @@ +# Maintainer: Raphaël Doursenaud <rdoursenaud@gpcsolutions.fr> +# Contributor: mickael9 <mickael9 at gmail.com> +# Contributor: Pierre Schmitz <pierre@archlinux.de> +# Contributor: Thore Bödecker <me@foxxx0.de> + +pkgbase=php55 +_pkgbase=${pkgbase%55} +pkgname=("${pkgbase}" + "${pkgbase}-cgi" + "${pkgbase}-apache" + "${pkgbase}-fpm" + "${pkgbase}-embed" + "${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.5.33 +pkgrel=1 +pkgdesc="A general-purpose scripting language that is especially suited to web development" +arch=('i686' 'x86_64') +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' 'gd' 'icu' 'curl' 'libxslt' + 'openssl' 'db' 'gmp' 'systemd') + +source=("http://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz" + "http://php.net/distributions/${_pkgbase}-${pkgver}.tar.xz.asc" + 'php.ini.patch' 'apache.conf' 'php-fpm.conf.in.patch' + 'logrotate.d.php-fpm' 'php-fpm.service' 'php-fpm.tmpfiles') +md5sums=('c1b9e661a8e6e98bdd03aae7ac9534fe' + 'SKIP' + '7b61f3f94afbe598256fba61663f2822' + 'dec2cbaad64e3abf4f0ec70e1de4e8e9' + 'c8c7ce56789ba4ce3255da68a6bb1228' + '26a26f832e760f7db048185818404796' + 'aac9e1468ddebc732e40c555d4e9a378' + '4e13de0606d14bbceeebf6fe818358c8') +validpgpkeys=('6E4F6AB321FDC07F2C332E3AC2BF0BC433CFC8B3' + '0BD78B5F97500D450838F95DFE857D9A90D90EC1') + +prepare() { + cd ${srcdir}/${_pkgbase}-${pkgver} + + 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 +} + +build() { + local _phpconfig="--srcdir=../${_pkgbase}-${pkgver} \ + --config-cache \ + --prefix=/usr \ + --sysconfdir=/etc/${pkgbase} \ + --localstatedir=/var \ + --libdir=/usr/lib/${pkgbase} \ + --datarootdir=/usr/share/${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 \ + --disable-rpath \ + --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-mbstring \ + --enable-opcache \ + --enable-phar=shared \ + --enable-posix=shared \ + --enable-shmop=shared \ + --enable-soap=shared \ + --enable-sockets=shared \ + --enable-sysvmsg=shared \ + --enable-sysvsem=shared \ + --enable-sysvshm=shared \ + --enable-zip=shared \ + --with-bz2=shared \ + --with-curl=shared \ + --with-db4=/usr \ + --with-enchant=shared,/usr \ + --with-fpm-systemd \ + --with-freetype-dir=/usr \ + --with-xpm-dir=/usr \ + --with-gd=shared,/usr \ + --with-gdbm \ + --with-gettext=shared \ + --with-gmp=shared \ + --with-iconv=shared \ + --with-icu-dir=/usr \ + --with-imap-ssl \ + --with-imap=shared \ + --with-kerberos=/usr \ + --with-jpeg-dir=/usr \ + --with-vpx-dir=/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-mysql=shared,mysqlnd \ + --with-pdo-odbc=shared,unixODBC,/usr \ + --with-pdo-pgsql=shared \ + --with-pdo-sqlite=shared,/usr \ + --with-pgsql=shared \ + --with-png-dir=/usr \ + --with-pspell=shared \ + --with-snmp=shared \ + --with-sqlite3=shared,/usr \ + --with-tidy=shared \ + --with-unixODBC=shared,/usr \ + --with-xmlrpc=shared \ + --with-xsl=shared \ + --with-zlib \ + " + + export EXTENSION_DIR=/usr/lib/${pkgbase}/modules + export PEAR_INSTALLDIR=/usr/share/${pkgbase}/pear + + cd ${srcdir}/${_pkgbase}-${pkgver} + + # php + mkdir -p ${srcdir}/build-php + cd ${srcdir}/build-php + ln -sf ../${_pkgbase}-${pkgver}/configure + ./configure ${_phpconfig} \ + --disable-cgi \ + --with-readline \ + --enable-pcntl \ + ${_phpextensions} + 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 + cp -Ta ${srcdir}/build-php ${srcdir}/build-pear + cd ${srcdir}/build-pear + ./configure ${_phpconfig} \ + --disable-cgi \ + --with-readline \ + --enable-pcntl \ + --with-pear \ + ${_phpextensions} + make +} + +package_php55() { + pkgdesc='An HTML-embedded scripting language' + depends=('pcre' 'libxml2' 'curl' 'libzip') + backup=("etc/${pkgbase}/php.ini") + provides=("${_pkgbase}=$pkgver") + + cd ${srcdir}/build-php + make -j1 INSTALL_ROOT=${pkgdir} install + + # 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/ + + # 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}.so + + # remove empty directory + rmdir ${pkgdir}/usr/include/php/include + + # move include directory + mv ${pkgdir}/usr/include/php ${pkgdir}/usr/include/${pkgbase} + + # fix phar symlink + rm ${pkgdir}/usr/bin/phar + ln -sf phar.${pkgbase/php/phar} ${pkgdir}/usr/bin/${pkgbase/php/phar} + + # rename executables + mv ${pkgdir}/usr/bin/phar.{phar,${pkgbase/php/phar}} + + # rename man pages + mv ${pkgdir}/usr/share/man/man1/{phar,${pkgbase/php/phar}}.1 + mv ${pkgdir}/usr/share/man/man1/phar.{phar,${pkgbase/php/phar}}.1 + + # 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} + + # make phpize use php-config55 + 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 +} + +package_php55-cgi() { + pkgdesc='CGI and FCGI SAPI for PHP' + depends=("${pkgbase}") + provides=("${_pkgbase}-cgi=$pkgver") + + install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/${pkgbase}-cgi +} + +package_php55-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 +} + +package_php55-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 + + 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 + + install -d -m755 ${pkgdir}/etc/logrotate.d + install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/${pkgbase}-fpm +} + +package_php55-embed() { + pkgdesc='Embedded PHP SAPI library' + depends=("${pkgbase}") + provides=("${_pkgbase}-embed=$pkgver") + + install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp55.so + install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/${pkgbase}/sapi/embed/php_embed.h +} + +package_php55-pear() { + pkgdesc='PHP Extension and Application Repository' + depends=("${pkgbase}") + provides=("${_pkgbase}-pear=$pkgver") + backup=("etc/${pkgbase}/pear.conf") + + cd ${srcdir}/build-pear + make install-pear INSTALL_ROOT=${pkgdir} + rm -rf ${pkgdir}/usr/share/${pkgbase}/pear/.{channels,depdb,depdblock,filemap,lock,registry} + + mv ${pkgdir}/usr/bin/{pear,${pkgbase/php/pear}} + mv ${pkgdir}/usr/bin/{peardev,${pkgbase/php/peardev}} + mv ${pkgdir}/usr/bin/{pecl,${pkgbase/php/pecl}} + + # fix hardcoded php paths in pear + sed -i 's|/usr/bin/php|/usr/bin/php55|g' "${pkgdir}/usr/bin/pear55" + sed -i 's|PHP=php|PHP=php55|g' "${pkgdir}/usr/bin/pear55" + sed -i 's|s:7:"php_bin";s:12:"/usr/bin/php"|s:7:"php_bin";s:14:"/usr/bin/php55"|' "${pkgdir}/etc/${pkgbase}/pear.conf" +} + +package_php55-enchant() { + pkgdesc='enchant module for PHP' + depends=("${pkgbase}" 'enchant') + provides=("${_pkgbase}-enchant=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/${pkgbase}/modules/enchant.so +} + +package_php55-gd() { + pkgdesc='gd module for PHP' + depends=("${pkgbase}" 'gd') + provides=("${_pkgbase}-gd=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/${pkgbase}/modules/gd.so +} + +package_php55-imap() { + pkgdesc='imap module for PHP' + depends=("${pkgbase}" 'c-client') + provides=("${_pkgbase}-imap=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/imap.so ${pkgdir}/usr/lib/${pkgbase}/modules/imap.so +} + +package_php55-intl() { + pkgdesc='intl module for PHP' + depends=("${pkgbase}" 'icu') + provides=("${_pkgbase}-intl=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/${pkgbase}/modules/intl.so +} + +package_php55-ldap() { + pkgdesc='ldap module for PHP' + depends=("${pkgbase}" 'libldap') + provides=("${pkgbase}-ldap=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/${pkgbase}/modules/ldap.so +} + +package_php55-mcrypt() { + pkgdesc='mcrypt module for PHP' + depends=("${pkgbase}" 'libmcrypt' 'libltdl') + provides=("${_pkgbase}-mcrypt=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/${pkgbase}/modules/mcrypt.so +} + +package_php55-mssql() { + pkgdesc='mssql module for PHP' + depends=("${pkgbase}" 'freetds') + provides=("${_pkgbase}-mssql=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/${pkgbase}/modules/mssql.so +} + +package_php55-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 +} + +package_php55-pgsql() { + pkgdesc='PostgreSQL modules for PHP' + depends=("${pkgbase}" 'postgresql-libs') + provides=("${_pkgbase}-pgsql=$pkgver") + + 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 +} + +package_php55-pspell() { + pkgdesc='pspell module for PHP' + depends=("${pkgbase}" 'aspell') + provides=("${_pkgbase}-pspell=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/${pkgbase}/modules/pspell.so +} + +package_php55-snmp() { + pkgdesc='snmp module for PHP' + depends=("${pkgbase}" 'net-snmp') + provides=("${_pkgbase}-snmp=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/${pkgbase}/modules/snmp.so +} + +package_php55-sqlite() { + pkgdesc='sqlite module for PHP' + depends=("${pkgbase}" 'sqlite') + provides=("${_pkgbase}-sqlite=$pkgver") + + 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 +} + +package_php55-tidy() { + pkgdesc='tidy module for PHP' + depends=("${pkgbase}" 'tidyhtml') + provides=("${_pkgbase}-tidy=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/${pkgbase}/modules/tidy.so +} + +package_php55-xsl() { + pkgdesc='xsl module for PHP' + depends=("${pkgbase}" 'libxslt') + provides=("${_pkgbase}-xsl=$pkgver") + + install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/${pkgbase}/modules/xsl.so +} diff --git a/apache.conf b/apache.conf new file mode 100644 index 000000000000..c3ca0aad509e --- /dev/null +++ b/apache.conf @@ -0,0 +1,13 @@ +# Required modules: dir_module, php5_module + +<IfModule dir_module> + <IfModule php5_module> + DirectoryIndex index.php index.html + <FilesMatch "\.php$"> + SetHandler application/x-httpd-php + </FilesMatch> + <FilesMatch "\.phps$"> + SetHandler application/x-httpd-php-source + </FilesMatch> + </IfModule> +</IfModule> diff --git a/logrotate.d.php-fpm b/logrotate.d.php-fpm new file mode 100644 index 000000000000..16cbe585a825 --- /dev/null +++ b/logrotate.d.php-fpm @@ -0,0 +1,8 @@ +/var/log/php55-fpm.log { + missingok + notifempty + delaycompress + postrotate + /bin/kill -SIGUSR1 `cat /run/php55-fpm/php-fpm.pid 2>/dev/null` 2>/dev/null || true + endscript +} diff --git a/php-apache.install b/php-apache.install new file mode 100644 index 000000000000..deeb37f85742 --- /dev/null +++ b/php-apache.install @@ -0,0 +1,11 @@ +post_install() { + echo "You will need to add the following line after the existing LoadModule instructions in /etc/httpd/conf/httpd.conf :" + echo "LoadModule php5_module modules/libphp55.so" + echo + echo "Additionally, include this line at the end of /etc/httpd/conf/httpd.conf if you want .php files to be handled by php 5.5 :" + echo "Include conf/extra/php55_module.conf" + echo + echo "Be aware that ONLY A SINGLE PHP MODULE can be loaded into an Apache instance." + echo "If you want php 5 and php 7 to cohabitate, you'll have to use another method such as php-fpm, fcgi or cgi for the other PHP version." +} + diff --git a/php-fpm.conf.in.patch b/php-fpm.conf.in.patch new file mode 100644 index 000000000000..665ca11708d3 --- /dev/null +++ b/php-fpm.conf.in.patch @@ -0,0 +1,52 @@ +--- sapi/fpm/php-fpm.conf.in 2015-01-21 01:40:37.000000000 +0100 ++++ sapi/fpm/php-fpm.conf.in 2015-01-22 16:22:09.076969777 +0100 +@@ -12,7 +12,7 @@ + ; Relative path can also be used. They will be prefixed by: + ; - the global prefix if it's been set (-p argument) + ; - @prefix@ otherwise +-;include=etc/fpm.d/*.conf ++;include=/etc/php56/fpm.d/*.conf + + ;;;;;;;;;;;;;;;;;; + ; Global Options ; +@@ -22,7 +22,7 @@ + ; Pid file + ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ + ; Default Value: none +-;pid = run/php-fpm.pid ++pid = /run/php56-fpm/php-fpm.pid + + ; Error log file + ; If it's set to "syslog", log is sent to syslogd instead of being written +@@ -161,7 +161,8 @@ + ; (IPv6 and IPv4-mapped) on a specific port; + ; '/path/to/unix/socket' - to listen on a unix socket. + ; Note: This value is mandatory. +-listen = 127.0.0.1:9000 ++;listen = 127.0.0.1:9001 ++listen = /run/php56-fpm/php-fpm.sock + + ; Set listen(2) backlog. + ; Default Value: 65535 (-1 on FreeBSD and OpenBSD) +@@ -172,9 +173,9 @@ + ; BSD-derived systems allow connections regardless of permissions. + ; Default Values: user and group are set as the running user + ; mode is set to 0660 +-;listen.owner = @php_fpm_user@ +-;listen.group = @php_fpm_group@ +-;listen.mode = 0660 ++listen.owner = @php_fpm_user@ ++listen.group = @php_fpm_group@ ++listen.mode = 0660 + + ; List of addresses (IPv4/IPv6) of FastCGI clients which are allowed to connect. + ; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original +@@ -471,7 +472,7 @@ + ; Chdir to this directory at the start. + ; Note: relative path can be used. + ; Default Value: current directory or / when chroot +-;chdir = /var/www ++;chdir = /srv/http + + ; Redirect worker stdout and stderr into main error log. If not set, stdout and + ; stderr will be redirected to /dev/null according to FastCGI specs. diff --git a/php-fpm.install b/php-fpm.install new file mode 100644 index 000000000000..a859c9d22c9e --- /dev/null +++ b/php-fpm.install @@ -0,0 +1,9 @@ +post_install() { + if [[ ! -d run/php55-fpm ]]; then + usr/bin/systemd-tmpfiles --create php55-fpm.conf + fi +} + +post_upgrade() { + post_install +} diff --git a/php-fpm.service b/php-fpm.service new file mode 100644 index 000000000000..20caefb16829 --- /dev/null +++ b/php-fpm.service @@ -0,0 +1,13 @@ +[Unit] +Description=The PHP 5.5 FastCGI Process Manager +After=syslog.target network.target + +[Service] +Type=notify +PIDFile=/run/php55-fpm/php-fpm.pid +PrivateTmp=true +ExecStart=/usr/bin/php55-fpm --nodaemonize --pid /run/php55-fpm/php-fpm.pid +ExecReload=/bin/kill -USR2 $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/php-fpm.tmpfiles b/php-fpm.tmpfiles new file mode 100644 index 000000000000..9b06a367c06c --- /dev/null +++ b/php-fpm.tmpfiles @@ -0,0 +1 @@ +d /run/php55-fpm 755 root root diff --git a/php.ini.patch b/php.ini.patch new file mode 100644 index 000000000000..0e404af8aada --- /dev/null +++ b/php.ini.patch @@ -0,0 +1,119 @@ +--- php.ini-production 2015-01-21 01:40:37.000000000 +0100 ++++ php.ini-production 2015-01-22 16:23:17.311890258 +0100 +@@ -295,7 +295,7 @@ + ; and below. This directive makes most sense if used in a per-directory + ; or per-virtualhost web server configuration file. + ; http://php.net/open-basedir +-;open_basedir = ++open_basedir = /srv/http/:/home/:/tmp/:/usr/share/php55/pear/:/usr/share/webapps/ + + ; This directive allows you to disable certain functions for security reasons. + ; It receives a comma-delimited list of function names. +@@ -690,7 +690,7 @@ + ;;;;;;;;;;;;;;;;;;;;;;;;; + + ; UNIX: "/path1:/path2" +-;include_path = ".:/php/includes" ++include_path = ".:/usr/share/php55/pear" + ; + ; Windows: "\path1;\path2" + ;include_path = ".;c:\php\includes" +@@ -713,7 +713,7 @@ + + ; Directory in which the loadable extensions (modules) reside. + ; http://php.net/extension-dir +-; extension_dir = "./" ++extension_dir = "/usr/lib/php55/modules/" + ; On windows: + ; extension_dir = "ext" + +@@ -851,50 +851,45 @@ + ; If you only provide the name of the extension, PHP will look for it in its + ; default extension directory. + ; +-; Windows Extensions +-; Note that ODBC support is built in, so no dll is needed for it. +-; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5) +-; extension folders as well as the separate PECL DLL download (PHP 5). +-; Be sure to appropriately set the extension_dir directive. +-; +-;extension=php_bz2.dll +-;extension=php_curl.dll +-;extension=php_fileinfo.dll +-;extension=php_gd2.dll +-;extension=php_gettext.dll +-;extension=php_gmp.dll +-;extension=php_intl.dll +-;extension=php_imap.dll +-;extension=php_interbase.dll +-;extension=php_ldap.dll +-;extension=php_mbstring.dll +-;extension=php_exif.dll ; Must be after mbstring as it depends on it +-;extension=php_mysql.dll +-;extension=php_mysqli.dll +-;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client +-;extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client +-;extension=php_openssl.dll +-;extension=php_pdo_firebird.dll +-;extension=php_pdo_mysql.dll +-;extension=php_pdo_oci.dll +-;extension=php_pdo_odbc.dll +-;extension=php_pdo_pgsql.dll +-;extension=php_pdo_sqlite.dll +-;extension=php_pgsql.dll +-;extension=php_pspell.dll +-;extension=php_shmop.dll +- +-; The MIBS data available in the PHP distribution must be installed. +-; See http://www.php.net/manual/en/snmp.installation.php +-;extension=php_snmp.dll +- +-;extension=php_soap.dll +-;extension=php_sockets.dll +-;extension=php_sqlite3.dll +-;extension=php_sybase_ct.dll +-;extension=php_tidy.dll +-;extension=php_xmlrpc.dll +-;extension=php_xsl.dll ++extension=curl.so ++;extension=dba.so ++;extension=enchant.so ++;extension=exif.so ++;extension=ftp.so ++;extension=gd.so ++extension=gettext.so ++;extension=gmp.so ++;extension=iconv.so ++;extension=imap.so ++;extension=intl.so ++;extension=ldap.so ++;extension=mcrypt.so ++;extension=mssql.so ++;extension=mysql.so ++;extension=mysqli.so ++;extension=odbc.so ++;zend_extension=opcache.so ++;extension=openssl.so ++;extension=pdo_mysql.so ++;extension=pdo_odbc.so ++;extension=pdo_pgsql.so ++;extension=pdo_sqlite.so ++;extension=pgsql.so ++;extension=phar.so ++;extension=posix.so ++;extension=pspell.so ++;extension=shmop.so ++;extension=snmp.so ++;extension=soap.so ++;extension=sockets.so ++;extension=sqlite3.so ++;extension=sysvmsg.so ++;extension=sysvsem.so ++;extension=sysvshm.so ++;extension=tidy.so ++;extension=xmlrpc.so ++;extension=xsl.so ++;extension=zip.so + + ;;;;;;;;;;;;;;;;;;; + ; Module Settings ; |