summaryrefslogtreecommitdiffstats
path: root/abs/core/php/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/php/PKGBUILD')
-rw-r--r--abs/core/php/PKGBUILD474
1 files changed, 318 insertions, 156 deletions
diff --git a/abs/core/php/PKGBUILD b/abs/core/php/PKGBUILD
index 404edc0..b1b4cdc 100644
--- a/abs/core/php/PKGBUILD
+++ b/abs/core/php/PKGBUILD
@@ -1,187 +1,349 @@
+# $Id: PKGBUILD 169306 2012-10-19 05:27:26Z pierre $
+# Maintainer: Pierre Schmitz <pierre@archlinux.de>
+
pkgbase=php
-pkgname=('php' 'php-cgi' 'php-pear')
-pkgver=5.3.3
-pkgrel=9
-_suhosinver=${pkgver}-0.9.10
-pkgdesc='A high-level scripting language'
+pkgname=('php'
+ 'php-cgi'
+ 'php-apache'
+ 'php-fpm'
+ 'php-embed'
+ 'php-pear'
+ 'php-enchant'
+ 'php-gd'
+ 'php-intl'
+ 'php-ldap'
+ 'php-mcrypt'
+ 'php-mssql'
+ 'php-odbc'
+ 'php-pgsql'
+ 'php-pspell'
+ 'php-snmp'
+ 'php-sqlite'
+ 'php-tidy'
+ 'php-xsl')
+pkgver=5.4.8
+pkgrel=1
arch=('i686' 'x86_64')
license=('PHP')
url='http://www.php.net'
-backup=('etc/php/php.ini')
-install=php.install
-depends=('glibc' 'readline' 'ncurses' 'libxml2' 'pcre')
-#makedepends=('apache' 'imap' 'postgresql-libs' 'mysql' 'libldap' \
-# 'libpng' 'libjpeg' 'sqlite3' 'unixodbc' 'net-snmp' \
-# 'libmcrypt' 'tidyhtml' 'aspell' 'libtool' 'freetype2' 'libjpeg' \
-# 'curl' 'libxslt' 'pam' 'openssl' 'bzip2' 'gdbm' 'db>=4.7')
-
-makedepends=('mysql' 'libpng' 'libjpeg' 'sqlite3' 'libmcrypt' 'libtool' \
- 'freetype2' 'libjpeg' 'curl' 'libxslt' 'pam' 'openssl' 'bzip2' \
- 'gdbm' 'db>=4.8.26')
-options=('emptydirs')
-source=("http://museum.php.net/php5/${pkgname}-${pkgver}.tar.bz2" \
- "http://download.suhosin.org/suhosin-patch-${_suhosinver}.patch.gz" \
- 'php.ini' 'apache.conf')
+makedepends=('apache' 'imap' 'postgresql-libs' 'libldap' 'libvpx'
+ 'sqlite' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds'
+ 'libmcrypt' 'tidyhtml' 'aspell' 'libltdl' 'libpng' 'libjpeg' 'icu'
+ 'curl' 'libxslt' 'openssl' 'bzip2' 'db' 'gmp' 'freetype2')
+source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.bz2"
+ 'php.ini.patch' 'apache.conf' 'rc.d.php-fpm' 'php-fpm.conf.in.patch'
+ 'logrotate.d.php-fpm' 'php-fpm.service' 'php-fpm.tmpfiles')
build() {
- phpconfig="--srcdir=${srcdir}/${pkgbase}-${pkgver} \
- --prefix=/usr \
- --sysconfdir=/etc/php \
- --with-layout=GNU \
- --with-config-file-path=/etc/php \
- --with-config-file-scan-dir=/etc/php/conf.d \
- --enable-inline-optimization \
- --disable-debug \
- --disable-rpath \
- --disable-static \
- --enable-shared \
- --mandir=/usr/share/man \
- --without-pear \
- "
-
- phpextensions="--with-openssl=shared \
- --with-zlib=shared \
- --enable-bcmath=shared \
- --with-bz2=shared \
- --enable-calendar=shared \
- --with-curl=shared \
- --enable-dba=shared \
- --without-db2 \
- --without-db3 \
- --with-db4=shared \
- --with-gdbm=shared \
- --enable-exif=shared \
- --enable-ftp=shared \
- --with-gd=shared \
- --enable-gd-native-ttf \
- --with-jpeg-dir=shared,/usr \
- --with-png-dir=shared,/usr \
- --with-gettext=shared \
- --without-imap \
- --without-imap-ssl \
- --without-ldap \
- --enable-mbstring=shared \
- --with-mcrypt=shared \
- --with-mysql=shared \
- --with-mysql-sock=/tmp/mysql.sock \
- --with-mysql=shared \
- --with-mysqli=shared \
- --without-unixODBC \
- --enable-pdo=shared \
- --with-pdo-mysql=shared \
- --with-pdo-sqlite=shared \
- --without-pdo-odbc \
- --without-pdo-pgsql \
- --with-sqlite=shared \
- --without-pgsql \
- --enable-shmop=shared \
- --without-snmp \
- --enable-soap=shared \
- --enable-sqlite-utf8=shared \
- --enable-sysvmsg=shared \
- --enable-sysvsem=shared \
- --enable-sysvshm=shared \
- --without-tidy \
- --with-xsl=shared \
- --enable-zip=shared \
- --enable-posix=shared \
- --enable-sockets=shared \
- --enable-xml \
- --enable-session=shared \
- --with-regex=php \
- --with-pcre-regex=/usr \
- --enable-mbstring=all \
- --enable-mbregex \
- --enable-json=shared \
- --with-iconv=shared \
- --with-xmlrpc=shared \
- --without-pspell \
- --with-freetype-dir=shared,/usr \
- "
- EXTENSION_DIR=/usr/lib/php/modules
- export EXTENSION_DIR
- PEAR_INSTALLDIR=/usr/share/pear
- export PEAR_INSTALLDIR
+ phpconfig="--srcdir=../${pkgbase}-${pkgver} \
+ --config-cache \
+ --prefix=/usr \
+ --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 \
+ "
+
+ 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-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-freetype-dir=/usr \
+ --with-gd=shared \
+ --with-gdbm \
+ --with-gettext=shared \
+ --with-gmp=shared \
+ --with-iconv=shared \
+ --with-icu-dir=/usr \
+ --with-imap-ssl \
+ --with-imap=shared \
+ --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=/var/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}
- # apply suhosin patch
- patch -p1 -i ${srcdir}/suhosin-patch-${_suhosinver}.patch || return 1
+ # adjust paths
+
+ patch -p0 -i ${srcdir}/php.ini.patch
+ patch -p0 -i ${srcdir}/php-fpm.conf.in.patch
# php
- mkdir ${srcdir}/build-php
- cd ${srcdir}/build-php
- ln -s ../${pkgbase}-${pkgver}/configure
+ mkdir ${srcdir}/build-php
+ cd ${srcdir}/build-php
+ ln -s ../${pkgbase}-${pkgver}/configure
./configure ${phpconfig} \
--disable-cgi \
--with-readline \
--enable-pcntl \
- ${phpextensions} || return 1
- make || return 1
+ ${phpextensions}
+ make
# cgi and fcgi
- cp -a ${srcdir}/build-php ${srcdir}/build-cgi
- cd ${srcdir}/build-cgi
+ # 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 \
- --enable-cgi \
- ${phpextensions} || return 1
- make || return 1
-
- # 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 || return 1
+ --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
+
+ # 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}/build-php
+# make test
+# }
+
package_php() {
- pkgdesc='An HTML-embedded scripting language'
- depends=('pcre' 'libxml2' 'bzip2' 'openssl')
- replaces=('php')
- provides=('php')
- backup=('etc/php/php.ini')
+ pkgdesc='An HTML-embedded scripting language'
+ depends=('pcre' 'libxml2' 'bzip2' 'curl')
+ replaces=('php-fileinfo' 'php-gmp' 'php-curl')
+ provides=('php-fileinfo' 'php-gmp' 'php-curl')
+ conflicts=('php-fileinfo' 'php-gmp' 'php-curl')
+ backup=('etc/php/php.ini')
+ install='php.install'
cd ${srcdir}/build-php
- make INSTALL_ROOT=${pkgdir} install || return 1
- install -d -m755 ${pkgdir}/usr/share/pear
- # fix broken link
- ln -sf phar.phar $pkgdir/usr/bin/phar
- # install php.ini
- install -D -m644 ${srcdir}/php.ini ${pkgdir}/etc/php/php.ini
- install -d -m755 ${pkgdir}/etc/php/conf.d/
+ 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/{curl,enchant,gd,gmp,intl,ldap,mcrypt,mssql,odbc,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so
+ # 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,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
}
package_php-cgi() {
- pkgdesc='CGI and FCGI SAPI for PHP'
- depends=('php' 'pcre' 'libxml2')
+ pkgdesc='CGI and FCGI SAPI for PHP'
+ depends=('php')
- install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi
+ install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi
+}
+
+package_php-apache() {
+ pkgdesc='Apache SAPI for PHP'
+ depends=('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_php-fpm() {
+ pkgdesc='FastCGI Process Manager for PHP'
+ depends=('php')
+ backup=('etc/php/php-fpm.conf')
+ install='php-fpm.install'
+
+ install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/sbin/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 -m755 ${srcdir}/rc.d.php-fpm ${pkgdir}/etc/rc.d/php-fpm
+ 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_php-embed() {
+ pkgdesc='Embed SAPI for PHP'
+ depends=('php')
+
+ 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_php-pear() {
- pkgdesc='PHP Extension and Application Repository'
- depends=('php' 'bash')
- backup=('etc/php/pear.conf')
-
- cd ${srcdir}/build-pear
- make install-pear INSTALL_ROOT=${pkgdir} || return 1
- local i
- while read i; do
- [ ! -e "$i" ] || rm -rf "$i"
- done < <(find ${pkgdir} -name '.*')
-}
-md5sums=('21ceeeb232813c10283a5ca1b4c87b48'
- 'b66b27c43b1332400ef8982944c3b95b'
- 'b210db564281600c42f8eaa264eac3a5'
- '96ca078be6729b665be8a865535a97bf')
+ pkgdesc='PHP Extension and Application Repository'
+ depends=('php')
+ 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_php-enchant() {
+ depends=('php' 'enchant')
+ pkgdesc='enchant module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so
+}
+
+package_php-gd() {
+ depends=('php' 'libpng' 'libjpeg' 'freetype2' 'libvpx')
+ pkgdesc='gd module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so
+}
+
+package_php-intl() {
+ depends=('php' 'icu')
+ pkgdesc='intl module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so
+}
+
+package_php-ldap() {
+ depends=('php' 'libldap')
+ pkgdesc='ldap module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/php/modules/ldap.so
+}
+
+package_php-mcrypt() {
+ depends=('php' 'libmcrypt' 'libltdl')
+ pkgdesc='mcrypt module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/php/modules/mcrypt.so
+}
+
+package_php-mssql() {
+ depends=('php' 'freetds')
+ pkgdesc='mssql module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/php/modules/mssql.so
+}
+
+package_php-odbc() {
+ depends=('php' 'unixodbc')
+ pkgdesc='ODBC modules for PHP'
+ 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_php-pgsql() {
+ depends=('php' 'postgresql-libs')
+ pkgdesc='PostgreSQL modules for PHP'
+ 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_php-pspell() {
+ depends=('php' 'aspell')
+ pkgdesc='pspell module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so
+}
+
+package_php-snmp() {
+ depends=('php' 'net-snmp')
+ pkgdesc='snmp module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so
+}
+
+package_php-sqlite() {
+ depends=('php' 'sqlite')
+ pkgdesc='sqlite module for PHP'
+ 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_php-tidy() {
+ depends=('php' 'tidyhtml')
+ pkgdesc='tidy module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so
+}
+
+package_php-xsl() {
+ depends=('php' 'libxslt')
+ pkgdesc='xsl module for PHP'
+ install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so
+}
+md5sums=('bb8c816a9299be8995255ef70c63b800'
+ 'f62b49e6da4a09a6dd307f82c89e2a43'
+ 'dec2cbaad64e3abf4f0ec70e1de4e8e9'
+ '3cfde0cc4ed09b55f1ce531437a4eb88'
+ '5c1f4c967b66ce3eaf819b46951dcbf5'
+ 'f56b5bb7e93c802ae8519182fbea3387'
+ 'f8b206cb8fecb05cb1ded8bee45633ff'
+ 'c60343df74f8e1afb13b084d5c0e47ed')