diff options
author | Mickaël Thomas | 2016-01-03 22:24:55 +0100 |
---|---|---|
committer | Mickaël Thomas | 2016-01-03 22:27:43 +0100 |
commit | dc59ffcdf118e4884ef70599d3937839e5e5749e (patch) | |
tree | bb65886b14b4ab5b790c9b2eaf9fbc2bcefa936e /PKGBUILD | |
download | aur-dc59ffcdf118e4884ef70599d3937839e5e5749e.tar.gz |
Initial commmit
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 455 |
1 files changed, 455 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..10e4ffd277e0 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,455 @@ +# Maintainer: mickael9 <mickael9 at gmail.com> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=php56 +_pkgbase=${pkgbase%56} +pkgname=("${pkgbase}" + "${pkgbase}-cgi" + "${pkgbase}-apache" + "${pkgbase}-fpm" + "${pkgbase}-embed" + "${pkgbase}-phpdbg" + "${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.6.16 +pkgrel=1 +arch=('i686' 'x86_64') +license=('PHP') +url='http://www.php.net' +makedepends=('apache' 'c-client' 'postgresql-libs' 'libldap' 'postfix' + 'sqlite' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds' + 'libmcrypt' 'tidyhtml' 'aspell' 'libltdl' 'gd' 'icu' + 'curl' 'libxslt' 'openssl' 'db' 'gmp' 'systemd') +#checkdepends=('procps-ng') +source=("http://www.php.net/distributions/${_pkgbase}-${pkgver}.tar.xz" + "http://www.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=('3f1d999ed1f9cb5713c9a0161c557f2f' + 'SKIP' + '39eff6cc99dae4ec3b52125e6229de7e' + 'dec2cbaad64e3abf4f0ec70e1de4e8e9' + '16b5e2e4da59f15bea4c2db78a7bc8dc' + '25bc67ad828e8147a817410b68d8016c' + 'cc2940f5312ba42e7aa1ddfab74b84c4' + 'c60343df74f8e1afb13b084d5c0e47ed') +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 \ + --sbindir=/usr/bin \ + --sysconfdir=/etc/php \ + --localstatedir=/var \ + --with-layout=GNU \ + --with-config-file-path=/etc/php \ + --with-config-file-scan-dir=/etc/php/conf.d \ + --disable-rpath \ + --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-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-libzip \ + --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 \ + " + + EXTENSION_DIR=/usr/lib/php/modules + export EXTENSION_DIR + PEAR_INSTALLDIR=/usr/share/pear + export PEAR_INSTALLDIR + + cd ${srcdir}/${_pkgbase}-${pkgver} + + # php + mkdir ${srcdir}/build-php + cd ${srcdir}/build-php + ln -s ../${_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 -a ${srcdir}/build-php ${srcdir}/build-cgi + cd ${srcdir}/build-cgi + ./configure ${_phpconfig} \ + --disable-cli \ + --enable-cgi \ + ${_phpextensions} + make + + # apache + cp -a ${srcdir}/build-php ${srcdir}/build-apache + cd ${srcdir}/build-apache + ./configure ${_phpconfig} \ + --disable-cli \ + --with-apxs2 \ + ${_phpextensions} + make + + # fpm + cp -a ${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 -a ${srcdir}/build-php ${srcdir}/build-embed + cd ${srcdir}/build-embed + ./configure ${_phpconfig} \ + --disable-cli \ + --enable-embed=shared \ + ${_phpextensions} + make + + # phpdbg + cp -a ${srcdir}/build-php ${srcdir}/build-phpdbg + cd ${srcdir}/build-phpdbg + ./configure ${_phpconfig} \ + --disable-cli \ + --disable-cgi \ + --with-readline \ + --enable-phpdbg \ + ${_phpextensions} + make + + # pear + cp -a ${srcdir}/build-php ${srcdir}/build-pear + cd ${srcdir}/build-pear + ./configure ${_phpconfig} \ + --disable-cgi \ + --with-readline \ + --enable-pcntl \ + --with-pear \ + ${_phpextensions} + make +} + +#check() { +# cd ${srcdir}/${_pkgbase}-${pkgver} +# +# # tests on i686 fail +# [[ $CARCH == 'i686' ]] && return +# # a couple of tests fail in btrfs-backed chroots +# [[ $(stat -f -c %T .) == btrfs ]] && return +# +# export REPORT_EXIT_STATUS=1 +# export NO_INTERACTION=1 +# export SKIP_ONLINE_TESTS=1 +# export SKIP_SLOW_TESTS=1 +# +# ${srcdir}/build-php/sapi/cli/php -n \ +# run-tests.php -n -P \ +# {tests,Zend,ext/{spl,standard},sapi/cli} +#} + +package_php56() { + pkgdesc='An HTML-embedded scripting language' + depends=('pcre' 'libxml2' 'curl' 'libzip') + backup=('etc/php/php.ini') + + cd ${srcdir}/build-php + make -j1 INSTALL_ROOT=${pkgdir} install + install -d -m755 ${pkgdir}/usr/share/pear + # install php.ini + install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/php/php.ini + install -d -m755 ${pkgdir}/etc/php/conf.d/ + + # remove static modules + rm -f ${pkgdir}/usr/lib/php/modules/*.a + # remove modules provided by sub packages + rm -f ${pkgdir}/usr/lib/php/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 + # fix broken link + ln -sf phar.phar ${pkgdir}/usr/bin/phar +} + +package_php56-cgi() { + pkgdesc='CGI and FCGI SAPI for PHP' + depends=("${pkgbase}") + provides=('php-cgi') + conflicts=('php-cgi') + + install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi +} + +package_php56-apache() { + pkgdesc='Apache SAPI for PHP' + depends=("${pkgbase}" 'apache') + provides=('php-apache') + conflicts=('php-apache') + backup=('etc/httpd/conf/extra/php5_module.conf') + + install -D -m755 ${srcdir}/build-apache/libs/libphp5.so ${pkgdir}/usr/lib/httpd/modules/libphp5.so + install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/php5_module.conf +} + +package_php56-fpm() { + pkgdesc='FastCGI Process Manager for PHP' + depends=("${pkgbase}" 'systemd') + provides=('php-fpm') + conflicts=('php-fpm') + backup=('etc/php/php-fpm.conf') + install='php-fpm.install' + + install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/bin/php-fpm + install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.8 ${pkgdir}/usr/share/man/man8/php-fpm.8 + install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.conf ${pkgdir}/etc/php/php-fpm.conf + install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/php-fpm + install -d -m755 ${pkgdir}/etc/php/fpm.d + install -D -m644 ${srcdir}/php-fpm.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/php-fpm.conf + install -D -m644 ${srcdir}/php-fpm.service ${pkgdir}/usr/lib/systemd/system/php-fpm.service +} + +package_php56-embed() { + pkgdesc='Embedded PHP SAPI library' + depends=("${pkgbase}") + provides=('php-embed') + conflicts=('php-embed') + + install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp5.so + install -D -m644 ${srcdir}/${_pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/php/sapi/embed/php_embed.h +} + +package_php56-phpdbg() { + pkgdesc='Interactive PHP debugger' + depends=("${pkgbase}") + provides=('php-phpdbg') + conflicts=('php-phpdbg') + + install -D -m755 ${srcdir}/build-phpdbg/sapi/phpdbg/phpdbg ${pkgdir}/usr/bin/phpdbg +} + +package_php56-pear() { + pkgdesc='PHP Extension and Application Repository' + depends=("${pkgbase}") + provides=('php-pear') + conflicts=('php-pear') + backup=('etc/php/pear.conf') + + cd ${srcdir}/build-pear + make install-pear INSTALL_ROOT=${pkgdir} + rm -rf ${pkgdir}/usr/share/pear/.{channels,depdb,depdblock,filemap,lock,registry} +} + +package_php56-enchant() { + pkgdesc='enchant module for PHP' + depends=("${pkgbase}" 'enchant') + provides=('php-enchant') + conflicts=('php-enchant') + + install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so +} + +package_php56-gd() { + pkgdesc='gd module for PHP' + depends=("${pkgbase}" 'gd') + provides=('php-gd') + conflicts=('php-gd') + + install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so +} + +package_php56-imap() { + pkgdesc='imap module for PHP' + depends=("${pkgbase}" 'c-client') + provides=('php-imap') + conflicts=('php-imap') + + install -D -m755 ${srcdir}/build-php/modules/imap.so ${pkgdir}/usr/lib/php/modules/imap.so +} + +package_php56-intl() { + pkgdesc='intl module for PHP' + depends=("${pkgbase}" 'icu') + provides=('php-intl') + conflicts=('php-intl') + + install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so +} + +package_php56-ldap() { + pkgdesc='ldap module for PHP' + depends=("${pkgbase}" 'libldap') + provides=('php-ldap') + conflicts=('php-ldap') + + install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/php/modules/ldap.so +} + +package_php56-mcrypt() { + pkgdesc='mcrypt module for PHP' + depends=("${pkgbase}" 'libmcrypt' 'libltdl') + provides=('php-mcrypt') + conflicts=('php-mcrypt') + + install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/php/modules/mcrypt.so +} + +package_php56-mssql() { + pkgdesc='mssql module for PHP' + depends=("${pkgbase}" 'freetds') + provides=('php-mssql') + conflicts=('php-mssql') + + install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/php/modules/mssql.so +} + +package_php56-odbc() { + pkgdesc='ODBC modules for PHP' + depends=("${pkgbase}" 'unixodbc') + provides=('php-odbc') + conflicts=('php-odbc') + + install -D -m755 ${srcdir}/build-php/modules/odbc.so ${pkgdir}/usr/lib/php/modules/odbc.so + install -D -m755 ${srcdir}/build-php/modules/pdo_odbc.so ${pkgdir}/usr/lib/php/modules/pdo_odbc.so +} + +package_php56-pgsql() { + pkgdesc='PostgreSQL modules for PHP' + depends=("${pkgbase}" 'postgresql-libs') + provides=('php-pgsql') + conflicts=('php-pgsql') + + install -D -m755 ${srcdir}/build-php/modules/pgsql.so ${pkgdir}/usr/lib/php/modules/pgsql.so + install -D -m755 ${srcdir}/build-php/modules/pdo_pgsql.so ${pkgdir}/usr/lib/php/modules/pdo_pgsql.so +} + +package_php56-pspell() { + pkgdesc='pspell module for PHP' + depends=("${pkgbase}" 'aspell') + provides=('php-pspell') + conflicts=('php-pspell') + + install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so +} + +package_php56-snmp() { + pkgdesc='snmp module for PHP' + depends=("${pkgbase}" 'net-snmp') + provides=('php-snmp') + conflicts=('php-snmp') + + install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so +} + +package_php56-sqlite() { + pkgdesc='sqlite module for PHP' + depends=("${pkgbase}" 'sqlite') + provides=('php-sqlite') + conflicts=('php-sqlite') + + install -D -m755 ${srcdir}/build-php/modules/sqlite3.so ${pkgdir}/usr/lib/php/modules/sqlite3.so + install -D -m755 ${srcdir}/build-php/modules/pdo_sqlite.so ${pkgdir}/usr/lib/php/modules/pdo_sqlite.so +} + +package_php56-tidy() { + pkgdesc='tidy module for PHP' + depends=("${pkgbase}" 'tidyhtml') + provides=('php-tidy') + conflicts=('php-tidy') + + install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so +} + +package_php56-xsl() { + pkgdesc='xsl module for PHP' + depends=("${pkgbase}" 'libxslt') + provides=('php-xsl') + conflicts=('php-xsl') + + install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so +} |