diff options
Diffstat (limited to 'testing/php')
-rw-r--r-- | testing/php/APKBUILD | 234 | ||||
-rw-r--r-- | testing/php/gd-info-segfault.patch | 26 | ||||
-rw-r--r-- | testing/php/php.post-upgrade | 11 |
3 files changed, 271 insertions, 0 deletions
diff --git a/testing/php/APKBUILD b/testing/php/APKBUILD new file mode 100644 index 0000000000..6d9724953f --- /dev/null +++ b/testing/php/APKBUILD @@ -0,0 +1,234 @@ +# Contributor: Carlo Landmeter <clandmeter at gmail> +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +pkgname=php +pkgver=5.3.0 +_suhosinver=${pkgver}-0.9.8-BETA-1 +pkgrel=2 +pkgdesc="The PHP language runtime engine" +url="http://www.php.net/" +license="PHP-3" +depends= +install="$pkgname.post-upgrade" +makedepends="pcre-dev libxml2-dev libiconv-dev openssl-dev zlib-dev bzip2-dev + curl-dev libpng-dev jpeg-dev freetype-dev libmcrypt-dev mysql-dev + sqlite-dev libtool libltdl postgresql-dev db-dev unixodbc-dev icu-dev + gd-dev gmp-dev gettext-dev imap-dev aspell-dev + net-snmp-dev libxslt-dev cyrus-sasl-dev openldap-dev pkgconfig + libgcrypt-dev" +subpackages="$pkgname-dev $pkgname-doc + $pkgname-bcmath + $pkgname-bz2 + $pkgname-calendar + $pkgname-curl + $pkgname-dba + $pkgname-exif + $pkgname-ftp + $pkgname-gd + $pkgname-gettext + $pkgname-gmp + $pkgname-iconv + $pkgname-imap + $pkgname-intl + $pkgname-json + $pkgname-ldap + $pkgname-mcrypt + $pkgname-mysql + $pkgname-mysqli + $pkgname-odbc + $pkgname-openssl + $pkgname-pdo + $pkgname-pdo_mysql + $pkgname-pdo_odbc + $pkgname-pdo_pgsql + $pkgname-pdo_sqlite + $pkgname-pgsql + $pkgname-phar + $pkgname-posix + $pkgname-pspell + $pkgname-shmop + $pkgname-snmp + $pkgname-soap + $pkgname-sockets + $pkgname-sqlite + $pkgname-sqlite3 + $pkgname-sysvmsg + $pkgname-sysvsem + $pkgname-sysvshm + $pkgname-xml + $pkgname-xmlrpc + $pkgname-xsl + $pkgname-zip + $pkgname-zlib + " + +source="http://www.php.net/distributions/${pkgname}-${pkgver}.tar.bz2 + http://download.suhosin.org/suhosin-patch-${_suhosinver}.patch.gz + gd-info-segfault.patch + " + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # apply suhosin patch + gunzip -c ${srcdir}/suhosin-patch-${_suhosinver}.patch.gz \ + | patch -p1 || return 1 + + # fix gd segfault; http://bugs.php.net/bug.php?id=49193 + patch -p0 -i ${srcdir}/gd-info-segfault.patch || return 1 + + 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=shared \ + --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=shared \ + --enable-zip=shared \ + --with-bz2=shared \ + --with-curl=shared \ + --with-db4=shared \ + --with-freetype-dir=shared,/usr \ + --with-gd=shared,/usr \ + --with-gettext=shared \ + --with-gmp=shared \ + --with-iconv=shared \ + --with-icu-dir=/usr \ + --with-imap-ssl=shared \ + --with-imap=shared \ + --with-jpeg-dir=shared,/usr \ + --with-ldap=shared \ + --with-mcrypt=shared \ + --with-mysql-sock=/tmp/mysql.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=shared,/usr \ + --with-pspell=shared \ + --with-regex=php \ + --with-snmp=shared \ + --with-sqlite3=shared,/usr \ + --with-sqlite=shared \ + --with-unixODBC=shared,/usr \ + --with-xmlrpc=shared \ + --with-xsl=shared \ + --with-zlib=shared \ + --without-db1 \ + --without-db2 \ + --without-db3 \ + --without-qdbm \ + " +# --with-enchant=shared,/usr \ +# --with-tidy=shared \ + ./configure --build=${CHOST:-i486-alpine-linux-uclibc} \ + --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 \ + --enable-fastcgi \ + --enable-cgi \ + --disable-cli \ + --enable-discard-path \ + --enable-force-cgi-redirect \ + --with-pic \ + $phpextensions + + make || return 1 + make -j1 INSTALL_ROOT="$pkgdir" install || return 1 + install -D -m644 php.ini-production "$pkgdir"/etc/php/php.ini +} + +_mv_mod() { + pkgdesc="$1 php extension" + local d=usr/lib/php/20090626 + mkdir -p "$subpkgdir/$d" + mv "$pkgdir/$d/${1}.so" "$subpkgdir/$d/" || return 1 + install -d "$subpkgdir"/etc/php/conf.d + echo "extension=${1}.so" > "$subpkgdir"/etc/php/conf.d/${1}.ini + return 0 +} + +bcmath() { _mv_mod bcmath; } +bz2() { _mv_mod bz2; } +calendar() { _mv_mod calendar; } +curl() { _mv_mod curl; } +dba() { _mv_mod dba; } +#enchant() { _mv_mod enchant; } +exif() { _mv_mod exif; } +ftp() { _mv_mod ftp; } +gd() { _mv_mod gd; } +gettext() { _mv_mod gettext; } +gmp() { _mv_mod gmp; } +iconv() { _mv_mod iconv; } +imap() { _mv_mod imap; } +intl() { _mv_mod intl; } +json() { _mv_mod json; } +ldap() { _mv_mod ldap; } +mcrypt() { _mv_mod mcrypt; } +mysql() { _mv_mod mysql; } +mysqli() { _mv_mod mysqli; } +odbc() { _mv_mod odbc; } +openssl() { _mv_mod openssl; } +pdo() { _mv_mod pdo; } +pdo_mysql() { _mv_mod pdo_mysql; } +pdo_odbc() { _mv_mod pdo_odbc; } +pdo_pgsql() { _mv_mod pdo_pgsql; } +pdo_sqlite() { _mv_mod pdo_sqlite; } +phar() { _mv_mod phar; } +posix() { _mv_mod posix; } +pgsql() { _mv_mod pgsql; } +pspell() { _mv_mod pspell; } +#session() { _mv_mod session; } +shmop() { _mv_mod shmop; } +snmp() { _mv_mod snmp; } +soap() { _mv_mod soap; } +sockets() { _mv_mod sockets; } +sqlite() { _mv_mod sqlite; } +sqlite3() { _mv_mod sqlite3; } +sysvmsg() { _mv_mod sysvmsg; } +sysvsem() { _mv_mod sysvsem; } +sysvshm() { _mv_mod sysvshm; } +xml() { _mv_mod xml; } +xmlrpc() { _mv_mod xmlrpc; } +xsl() { _mv_mod xsl; } +zip() { _mv_mod zip; } +zlib() { _mv_mod zlib; } + +# devleoper package +dev() { + default_dev + mkdir -p "$subpkgdir"/usr/lib/php/ "$subpkgdir"/usr/bin/ + mv "$pkgdir"/usr/lib/php/build "$subpkgdir"/usr/lib/php/ + mv "$pkgdir"/usr/bin/phpize "$subpkgdir"/usr/bin/ +} + +md5sums="846760cd655c98dfd86d6d97c3d964b0 php-5.3.0.tar.bz2 +62dc36545b86bf86e44ada1fccc17d0a suhosin-patch-5.3.0-0.9.8-BETA-1.patch.gz +1c1a50aae7207b12d27bdecd8967e7ce gd-info-segfault.patch" diff --git a/testing/php/gd-info-segfault.patch b/testing/php/gd-info-segfault.patch new file mode 100644 index 0000000000..846a19ef74 --- /dev/null +++ b/testing/php/gd-info-segfault.patch @@ -0,0 +1,26 @@ +Index: ext/gd/libgd/gd_compat.c +=================================================================== +--- ext/gd/libgd/gd_compat.c (Revision 286947) ++++ ext/gd/libgd/gd_compat.c (Revision 286948) +@@ -14,7 +14,7 @@ + return JPEG_LIB_VERSION; + } + +-int gdJpegGetVersionString() ++const char * gdJpegGetVersionString() + { + switch(JPEG_LIB_VERSION) { + case 62: +Index: ext/gd/libgd/gd_compat.h +=================================================================== +--- ext/gd/libgd/gd_compat.h (Revision 286947) ++++ ext/gd/libgd/gd_compat.h (Revision 286948) +@@ -8,7 +8,7 @@ + #endif + + const char * gdPngGetVersionString(); +-int gdJpegGetVersionString(); ++const char * gdJpegGetVersionString(); + int gdJpegGetVersionInt(); + int overflow2(int a, int b); + diff --git a/testing/php/php.post-upgrade b/testing/php/php.post-upgrade new file mode 100644 index 0000000000..98c959958c --- /dev/null +++ b/testing/php/php.post-upgrade @@ -0,0 +1,11 @@ +#!/bin/sh + +new=$1 +old=$2 + +if [ "$(apk version -t $old 5.3)" = "<" ]; then + echo "*" + echo "* Please see migration notes here: http://php.net/migration53" + echo "*" +fi + |