diff options
author | ale <ale@FreeBSD.org> | 2013-06-24 22:32:11 +0800 |
---|---|---|
committer | ale <ale@FreeBSD.org> | 2013-06-24 22:32:11 +0800 |
commit | 48d5fb51023dbbe8f2a70121c289e1849e7e14eb (patch) | |
tree | fd816d2c8b34ef7db2d6bcabe7358eaa7fb2d04f /lang | |
parent | 19160cd533a64299fc9d3710c4d21307ce72df91 (diff) | |
download | freebsd-ports-gnome-48d5fb51023dbbe8f2a70121c289e1849e7e14eb.tar.gz freebsd-ports-gnome-48d5fb51023dbbe8f2a70121c289e1849e7e14eb.tar.zst freebsd-ports-gnome-48d5fb51023dbbe8f2a70121c289e1849e7e14eb.zip |
Welcome PHP 5.5!
Future steps:
- rename current php5 ports to php54
- make php55 the default one after an exp-run
Diffstat (limited to 'lang')
23 files changed, 1594 insertions, 0 deletions
diff --git a/lang/Makefile b/lang/Makefile index 01a3bb3b66e7..a10bf5ebbe28 100644 --- a/lang/Makefile +++ b/lang/Makefile @@ -253,6 +253,8 @@ SUBDIR += php52-extensions SUBDIR += php53 SUBDIR += php53-extensions + SUBDIR += php55 + SUBDIR += php55-extensions SUBDIR += php_doc SUBDIR += picoc SUBDIR += pike76 diff --git a/lang/php55-extensions/Makefile b/lang/php55-extensions/Makefile new file mode 100644 index 000000000000..b9cbe4cc733c --- /dev/null +++ b/lang/php55-extensions/Makefile @@ -0,0 +1,128 @@ +# Created by: Alex Dupre <ale@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= php55 +PORTVERSION= 1.7 +CATEGORIES= lang +MASTER_SITES= # none +PKGNAMESUFFIX= -extensions +DISTFILES= # none +EXTRACT_ONLY= # none + +MAINTAINER= ale@FreeBSD.org +COMMENT= A "meta-port" to install PHP extensions + +USE_PHP= yes +DEFAULT_PHP_VER=55 +IGNORE_WITH_PHP=52 53 54 5 +USE_PHP_BUILD= yes + +NO_BUILD= yes + +LATEST_LINK= ${PORTNAME}${PKGNAMESUFFIX} + +OPTIONS_DEFINE= BCMATH BZ2 CALENDAR CTYPE CURL DBA \ + DOM EXIF FILEINFO FILTER FTP GD GETTEXT \ + GMP HASH ICONV IMAP INTERBASE JSON LDAP MBSTRING MCRYPT \ + MSSQL MYSQL MYSQLI \ + ODBC OPENSSL PCNTL PDF PDO PDO_DBLIB PDO_FIREBIRD \ + PDO_MYSQL PDO_ODBC PDO_PGSQL PDO_SQLITE PGSQL PHAR POSIX \ + PSPELL READLINE RECODE SESSION SHMOP SIMPLEXML SNMP SOAP \ + SOCKETS SQLITE3 SYBASE_CT SYSVMSG SYSVSEM SYSVSHM \ + TIDY TOKENIZER WDDX XML XMLREADER XMLRPC XMLWRITER XSL \ + ZIP ZLIB + +BCMATH_DESC= bc style precision math functions +BZ2_DESC= bzip2 library support +CALENDAR_DESC= calendar conversion support +CTYPE_DESC= ctype functions +CURL_DESC= CURL support +DBA_DESC= dba support +DOM_DESC= DOM support +EXIF_DESC= EXIF support +FILEINFO_DESC= fileinfo support +FILTER_DESC= input filter support +FTP_DESC= FTP support +GD_DESC= GD library support +GETTEXT_DESC= gettext library support +GMP_DESC= GNU MP support +HASH_DESC= HASH Message Digest Framework +ICONV_DESC= iconv support +IMAP_DESC= IMAP support +INTERBASE_DESC= Interbase 6 database support (Firebird) +JSON_DESC= JavaScript Object Serialization support +LDAP_DESC= OpenLDAP support +MBSTRING_DESC= multibyte string support +MCRYPT_DESC= Encryption support +MSSQL_DESC= MS-SQL database support +MYSQL_DESC= MySQL database support +MYSQLI_DESC= MySQLi database support +ODBC_DESC= ODBC support +OPENSSL_DESC= OpenSSL support +PCNTL_DESC= pcntl support (CLI only) +PDF_DESC= PDFlib support (implies GD) +PDO_DESC= PHP Data Objects Interface (PDO) +PDO_DBLIB_DESC= PDO DBLIB-DB driver +PDO_FIREBIRD_DESC= PDO Firebird driver +PDO_MYSQL_DESC= PDO MySQL driver +PDO_ODBC_DESC= PDO ODBC driver +PDO_PGSQL_DESC= PDO PostgreSQL driver +PDO_SQLITE_DESC= PDO sqlite driver +PGSQL_DESC= PostgreSQL database support +PHAR_DESC= phar support +POSIX_DESC= POSIX-like functions +PSPELL_DESC= pspell support +READLINE_DESC= readline support (CLI only) +RECODE_DESC= recode support +SESSION_DESC= session support +SHMOP_DESC= shmop support +SIMPLEXML_DESC= simplexml support +SNMP_DESC= SNMP support +SOAP_DESC= SOAP support +SOCKETS_DESC= sockets support +SQLITE3_DESC= sqlite3 support +SYBASE_CT_DESC= Sybase database support +SYSVMSG_DESC= System V message support +SYSVSEM_DESC= System V semaphore support +SYSVSHM_DESC= System V shared memory support +TIDY_DESC= TIDY support +TOKENIZER_DESC= tokenizer support +WDDX_DESC= WDDX support (implies XML) +XML_DESC= XML support +XMLREADER_DESC= XMLReader support +XMLRPC_DESC= XMLRPC-EPI support +XMLWRITER_DESC= XMLWriter support +XSL_DESC= XSL support (Implies DOM) +ZIP_DESC= ZIP support +ZLIB_DESC= ZLIB support + +OPTIONS_DEFAULT= CTYPE \ + DOM \ + FILTER \ + HASH \ + ICONV \ + JSON \ + PDO \ + PDO_SQLITE \ + PHAR \ + POSIX \ + SESSION \ + SIMPLEXML \ + SQLITE3 \ + TOKENIZER \ + XML \ + XMLREADER \ + XMLWRITER + +.include <bsd.port.options.mk> + +.for opt in ${OPTIONS_DEFINE} +. if ${PORT_OPTIONS:M${opt}} +USE_PHP+= ${opt:L} +. endif +.endfor + +do-install: build + @${DO_NADA} + +.include <bsd.port.mk> diff --git a/lang/php55-extensions/pkg-descr b/lang/php55-extensions/pkg-descr new file mode 100644 index 000000000000..56c6df1fc300 --- /dev/null +++ b/lang/php55-extensions/pkg-descr @@ -0,0 +1,7 @@ +This is a "meta-port" to install the extensions for PHP 5.5. + +Defaults to: +ctype, dom, filter, hash, iconv, json, pdo, pdo_sqlite, phar, posix, +session, simplexml, sqlite3, tokenizer, xml, xmlreader and xmlwriter. + +WWW: http://www.php.net/ diff --git a/lang/php55/Makefile b/lang/php55/Makefile new file mode 100644 index 000000000000..b0ba10c50057 --- /dev/null +++ b/lang/php55/Makefile @@ -0,0 +1,207 @@ +# Created by: Alex Dupre <ale@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= php55 +PORTVERSION= 5.5.0 +PORTREVISION?= 0 +CATEGORIES?= lang devel www +MASTER_SITES= ${MASTER_SITE_PHP} +MASTER_SITE_SUBDIR= distributions +DISTNAME= php-${PORTVERSION} + +MAINTAINER= ale@FreeBSD.org +COMMENT= PHP Scripting Language + +LICENSE= PHP301 + +LATEST_LINK= ${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX} + +USE_BZIP2= yes +MAKE_JOBS_SAFE= yes +NO_OPTIONS_SORT=yes +.if !defined(PKGNAMESUFFIX) +USE_AUTOTOOLS= autoconf + +LIB_DEPENDS= pcre:${PORTSDIR}/devel/pcre + +CONFIGURE_ARGS= \ + --with-layout=GNU \ + --localstatedir=/var \ + --with-config-file-scan-dir=${PREFIX}/etc/php \ + --disable-all \ + --enable-libxml \ + --enable-mysqlnd \ + --with-libxml-dir=${LOCALBASE} \ + --with-pcre-regex=${LOCALBASE} \ + --with-zlib-dir=/usr \ + --program-prefix="" + +USE_GNOME= libxml2 + +OPTIONS_DEFINE= CLI CGI FPM APACHE AP2FILTER EMBED DEBUG DTRACE IPV6 MAILHEAD LINKTHR +OPTIONS_DEFAULT=CLI CGI IPV6 LINKTHR + +CLI_DESC= Build CLI version +CGI_DESC= Build CGI version +FPM_DESC= Build FPM version +APACHE_DESC= Build Apache module +AP2FILTER_DESC= Use Apache 2.x filter interface (experimental) +EMBED_DESC= Build embedded library +DEBUG_DESC= Enable debug +DTRACE_DESC= Enable DTrace support +IPV6_DESC= Enable ipv6 support +MAILHEAD_DESC= Enable mail header patch +LINKTHR_DESC= Link thread lib (for threaded extensions) + +CONFLICTS= php52-5* php53-5* php54-5* php5-5* + +MAN1= php-config.1 phpize.1 + +.include <bsd.port.pre.mk> + +PATCH_DIST_STRIP= -p1 + +PATCH_SITES+= ${MASTER_SITE_LOCAL} +PATCH_SITE_SUBDIR= ale + +.if ${PORT_OPTIONS:MMAILHEAD} +PATCHFILES+= php-5.5.x-mail-header.patch:mail +PATCH_SITES+= http://choon.net/opensource/php/:mail +.endif + +.if ${PORT_OPTIONS:MCLI} +PHP_SAPI+= cli +PLIST_SUB+= CLI="" +MAN1+= php.1 +.else +PLIST_SUB+= CLI="@comment " +CONFIGURE_ARGS+=--disable-cli +.endif + +.if ${PORT_OPTIONS:MCGI} +PHP_SAPI+= cgi +PLIST_SUB+= CGI="" +.else +PLIST_SUB+= CGI="@comment " +CONFIGURE_ARGS+=--disable-cgi +.endif + +.if ${PORT_OPTIONS:MFPM} +PHP_SAPI+= fpm +MAN8+= php-fpm.8 +USE_RC_SUBR+= php-fpm +CONFIGURE_ARGS+=--enable-fpm \ + --with-fpm-user=${WWWOWN} \ + --with-fpm-group=${WWWGRP} +PLIST_SUB+= FPM="" +.else +PLIST_SUB+= FPM="@comment " +.endif + +.if ${PORT_OPTIONS:MAPACHE} && ${PORT_OPTIONS:MEMBED} +IGNORE= cannot be built with multiple SAPI (apache and embedded) +.endif + +.if ${PORT_OPTIONS:MAPACHE} +PHP_SAPI+= mod +USE_APACHE= 22+ +.include "${PORTSDIR}/Mk/bsd.apache.mk" +.if ${PORT_OPTIONS:MAP2FILTER} +CONFIGURE_ARGS+=--with-apxs2filter=${APXS} +.else +CONFIGURE_ARGS+=--with-apxs2=${APXS} +.endif +PKGMESSAGE= ${PKGDIR}/pkg-message.mod +MODULENAME= libphp5 +SHORTMODNAME= php5 +PLIST_SUB+= APACHE="" +.else +PLIST_SUB+= APACHE="@comment " +.endif + +.if ${PORT_OPTIONS:MEMBED} +PHP_SAPI+= embed +CONFIGURE_ARGS+=--enable-embed +PLIST_SUB+= EMBED="" +.else +PLIST_SUB+= EMBED="@comment " +.endif + +.if !defined(WITH_REGEX_TYPE) || ${WITH_REGEX_TYPE} == "php" +CONFIGURE_ARGS+=--with-regex=php +.elif defined(WITH_REGEX_TYPE) && ${WITH_REGEX_TYPE} == "system" +CONFIGURE_ARGS+=--with-regex=system +.endif + +.if !defined(WITH_ZEND_VM) || ${WITH_ZEND_VM} == "CALL" +CONFIGURE_ARGS+=--with-zend-vm=CALL +.elif defined(WITH_ZEND_VM) && ${WITH_ZEND_VM} == "SWITCH" +CONFIGURE_ARGS+=--with-zend-vm=SWITCH +.elif defined(WITH_ZEND_VM) && ${WITH_ZEND_VM} == "GOTO" +CONFIGURE_ARGS+=--with-zend-vm=GOTO +.endif + +CONFIGURE_ENV+= ac_cv_pthreads_lib="" \ + ac_cv_pthreads_cflags="" \ + pthreads_working="yes" \ + lt_cv_path_SED="sed" + +.if ${PORT_OPTIONS:MLINKTHR} +CONFIGURE_ENV+= LIBS="${LIBS} ${PTHREAD_LIBS}" +.endif + +.if ${PORT_OPTIONS:MDEBUG} +CONFIGURE_ARGS+=--enable-debug +.endif + +.if ${PORT_OPTIONS:MDTRACE} +.if ${OSVERSION} < 900000 +IGNORE= cannot be built with DTrace support on FreeBSD < 9.x +.endif +CONFIGURE_ARGS+=--enable-dtrace +.endif + +.if empty(PORT_OPTIONS:MIPV6) +CONFIGURE_ARGS+=--disable-ipv6 +.endif + +post-patch: + @${TOUCH} ${WRKSRC}/ext/php_config.h + @${REINPLACE_CMD} "s|^\(extension_dir\)|; \1|" ${WRKSRC}/php.ini-* +.if ${PORT_OPTIONS:MFPM} + @${REINPLACE_CMD} -e "s|^;\(pid\)|\1|;s|^;\(pm\.[a-z_]*_servers\)|\1|" \ + ${WRKSRC}/sapi/fpm/php-fpm.conf.in +.endif + +# Work around issues with newer (>=2.64) autoconf +pre-configure: + @${REINPLACE_CMD} -E 's:^((m4_)?divert)[(]([0-9]*)[)]:\1(600\3):' \ + ${WRKSRC}/configure.in `${FIND} ${WRKSRC} -name '*.m4'` + @${RM} ${WRKSRC}/configure + @${CAT} ${WRKSRC}/acinclude.m4 ${WRKSRC}/build/libtool.m4 > ${WRKSRC}/aclocal.m4 + +post-build: + @${ECHO_CMD} "PHP_VER=55" > ${WRKDIR}/php.conf + @${ECHO_CMD} "PHP_VERSION=${PORTVERSION}" >> ${WRKDIR}/php.conf + @${ECHO_CMD} "PHP_SAPI=${PHP_SAPI}" >> ${WRKDIR}/php.conf + @${ECHO_CMD} "PHP_EXT_INC=pcre spl" >> ${WRKDIR}/php.conf + +test: build + @(cd ${WRKSRC} && ${MAKE} test) + +post-install: + @${INSTALL_DATA} ${WRKSRC}/php.ini-development ${PREFIX}/etc + @${INSTALL_DATA} ${WRKSRC}/php.ini-production ${PREFIX}/etc + @${INSTALL_DATA} ${WRKDIR}/php.conf ${PREFIX}/etc + @${TOUCH} ${PREFIX}/include/php/ext/php_config.h +.if ${PORT_OPTIONS:MFPM} + @${CP} -n ${PREFIX}/etc/php-fpm.conf.default ${PREFIX}/etc/php-fpm.conf || ${TRUE} +.endif +.if ${PORT_OPTIONS:MAPACHE} + @${CAT} ${PKGMESSAGE} +.endif + +.else +.include "${MASTERDIR}/Makefile.ext" +.endif +.include <bsd.port.post.mk> diff --git a/lang/php55/Makefile.ext b/lang/php55/Makefile.ext new file mode 100644 index 000000000000..daabaef48fcf --- /dev/null +++ b/lang/php55/Makefile.ext @@ -0,0 +1,612 @@ +COMMENT= The ${PHP_MODNAME} shared extension for php + +USE_PHP= yes +USE_PHPEXT= yes +PHP_MODNAME= ${PKGNAMESUFFIX:S/-//} +DEFAULT_PHP_VER=55 +IGNORE_WITH_PHP=52 53 54 5 + +EXTSUBDIR= ${DISTNAME}/ext/${PHP_MODNAME} +WRKSRC= ${WRKDIR}/${EXTSUBDIR} +PATCHDIR= ${.CURDIR}/files +PLIST= ${NONEXISTENT} + +EXTRACT_AFTER_ARGS?= ${EXTSUBDIR} + +.if ${PHP_MODNAME} == "bcmath" +CONFIGURE_ARGS+=--enable-bcmath + +PHP_HEADER_DIRS=libbcmath libbcmath/src +.endif + +.if ${PHP_MODNAME} == "bz2" +CONFIGURE_ARGS+=--with-bz2=/usr +.endif + +.if ${PHP_MODNAME} == "calendar" +CONFIGURE_ARGS+=--enable-calendar +.endif + +.if ${PHP_MODNAME} == "ctype" +CONFIGURE_ARGS+=--enable-ctype +.endif + +.if ${PHP_MODNAME} == "curl" +LIB_DEPENDS+= curl:${PORTSDIR}/ftp/curl + +CONFIGURE_ARGS+=--with-curl=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "dba" +CONFIGURE_ARGS+=--enable-dba + +OPTIONS_DEFINE= CDB DB4 GDBM QDBM TOKYO INIFILE FLATFILE +OPTIONS_DEFAULT=CDB INIFILE FLATFILE + +CDB_DESC= cdb database support +DB4_DESC= Berkeley DB4 support +GDBM_DESC= GDBM database support +QDBM_DESC= QDBM database support +TOKYO_DESC= Tokyo Cabinet database support +INIFILE_DESC= INI file support +FLATFILE_DESC= flatfile support + +PHP_HEADER_DIRS= libcdb libflatfile libinifile +.endif + +.if ${PHP_MODNAME} == "dom" +CONFIGURE_ARGS+=--enable-dom \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 +.endif + +.if ${PHP_MODNAME} == "exif" +CONFIGURE_ARGS+=--enable-exif +.endif + +.if ${PHP_MODNAME} == "fileinfo" +CONFIGURE_ARGS+=--enable-fileinfo \ + --with-pcre-dir=${LOCALBASE} + +PHP_HEADER_DIRS= libmagic +.endif + +.if ${PHP_MODNAME} == "filter" +CONFIGURE_ARGS+=--enable-filter \ + --with-pcre-dir=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "ftp" +CONFIGURE_ARGS+=--enable-ftp \ + --with-openssl-dir=${OPENSSLBASE} + +LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl +USE_OPENSSL= yes +.endif + +.if ${PHP_MODNAME} == "gd" +LIB_DEPENDS= freetype:${PORTSDIR}/print/freetype2 \ + png15:${PORTSDIR}/graphics/png \ + jpeg:${PORTSDIR}/graphics/jpeg + +CONFIGURE_ARGS+=--with-gd \ + --with-freetype-dir=${LOCALBASE} \ + --with-jpeg-dir=${LOCALBASE} \ + --with-png-dir=${LOCALBASE} \ + --with-zlib-dir=/usr + +OPTIONS_DEFINE= T1LIB TRUETYPE JIS X11 VPX +OPTIONS_DEFAULT=T1LIB TRUETYPE X11 + +T1LIB_DESC= Include T1lib support +TRUETYPE_DESC= Enable TrueType string function +JIS_DESC= Enable JIS-mapped Japanese font support +X11_DESC= Enable XPM support +VPX_DESC= Enable VP8 codec support + +PHP_HEADER_DIRS=libgd +.endif + +.if ${PHP_MODNAME} == "gettext" +CONFIGURE_ARGS+=--with-gettext=${LOCALBASE} + +USES+= gettext +.endif + +.if ${PHP_MODNAME} == "gmp" +LIB_DEPENDS+= gmp:${PORTSDIR}/math/gmp + +CONFIGURE_ARGS+=--with-gmp=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "hash" +CONFIGURE_ARGS+=--enable-hash \ + --with-mhash +.endif + +.if ${PHP_MODNAME} == "iconv" +CONFIGURE_ARGS+=--with-iconv=${LOCALBASE} + +USES+= iconv +.endif + +.if ${PHP_MODNAME} == "imap" +LIB_DEPENDS+= c-client4:${PORTSDIR}/mail/cclient + +CONFIGURE_ARGS+=--with-imap=${LOCALBASE} \ + --with-pcre-dir=${LOCALBASE} +.if !defined(WITHOUT_SSL) +CONFIGURE_ARGS+=--with-imap-ssl=${OPENSSLBASE} + +LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl +USE_OPENSSL= yes +.endif +.endif + +.if ${PHP_MODNAME} == "interbase" +CONFIGURE_ARGS+=--with-interbase=${LOCALBASE} + +USE_FIREBIRD= yes +.endif + +.if ${PHP_MODNAME} == "json" +CONFIGURE_ARGS+=--enable-json +.endif + +.if ${PHP_MODNAME} == "ldap" +CONFIGURE_ARGS+=--with-ldap=${LOCALBASE} + +USE_OPENLDAP= yes + +. ifdef(WANT_OPENLDAP_SASL) +CONFIGURE_ARGS+=--with-ldap-sasl +. endif +.endif + +.if ${PHP_MODNAME} == "mbstring" + +CONFIGURE_ARGS+=--enable-mbstring \ + --with-pcre-dir=${LOCALBASE} + +OPTIONS_DEFINE= REGEX +OPTIONS_DEFAULT=REGEX + +REGEX_DESC= Enable multibyte regex support + +PHP_HEADER_DIRS=libmbfl libmbfl/filters libmbfl/mbfl libmbfl/nls +.endif + +.if ${PHP_MODNAME} == "mcrypt" +LIB_DEPENDS+= mcrypt:${PORTSDIR}/security/libmcrypt + +CONFIGURE_ARGS+=--with-mcrypt=${LOCALBASE} + +USE_AUTOTOOLS= libltdl +.endif + +.if ${PHP_MODNAME} == "mssql" +LIB_DEPENDS+= sybdb:${PORTSDIR}/databases/freetds-msdblib + +CONFIGURE_ARGS+=--with-mssql=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "mysql" +OPTIONS_DEFINE= MYSQLND +OPTIONS_DEFAULT=MYSQLND + +MYSQLND_DESC= Use MySQL Native Driver +.endif + +.if ${PHP_MODNAME} == "mysqli" +OPTIONS_DEFINE= MYSQLND +OPTIONS_DEFAULT=MYSQLND + +MYSQLND_DESC= Use MySQL Native Driver +.endif + +.if ${PHP_MODNAME} == "odbc" +CONFIGURE_ARGS+=--enable-odbc + +OPTIONS_DEFINE= IODBC + +IODBC_DESC= Use the iODBC driver instead of unixODBC +.endif + +.if ${PHP_MODNAME} == "openssl" +CONFIGURE_ARGS+=--with-openssl=${OPENSSLBASE} + +LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl +USE_OPENSSL= yes +.endif + +.if ${PHP_MODNAME} == "pcntl" +CONFIGURE_ARGS+=--enable-pcntl +.endif + +.if ${PHP_MODNAME} == "pdo" +CONFIGURE_ARGS+=--enable-pdo +.endif + +.if ${PHP_MODNAME} == "pdo_dblib" +CONFIGURE_ARGS+=--with-pdo-dblib=${LOCALBASE} + +USE_PHP= pdo +USE_PHP_BUILD= yes + +OPTIONS_DEFINE= MSSQL + +MSSQL_DESC= Enable Microsoft SQL Server support +.endif + +.if ${PHP_MODNAME} == "pdo_firebird" +CONFIGURE_ARGS+=--with-pdo-firebird=${LOCALBASE} + +USE_PHP= pdo +USE_PHP_BUILD= yes + +USE_FIREBIRD= yes +.endif + +.if ${PHP_MODNAME} == "pdo_mysql" +OPTIONS_DEFINE= MYSQLND +OPTIONS_DEFAULT=MYSQLND + +MYSQLND_DESC= Use MySQL Native Driver + +USE_PHP= pdo +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "pdo_odbc" +OPTIONS_DEFINE= IODBC + +IODBC_DESC= Use the iODBC driver instead of unixODBC + +USE_PHP= pdo +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "pdo_pgsql" +USE_PGSQL= yes + +CONFIGURE_ARGS+=--with-pdo-pgsql=${LOCALBASE} + +USE_PHP= pdo +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "pdo_sqlite" +USE_SQLITE= yes +CONFIGURE_ARGS+=--with-pdo-sqlite=${LOCALBASE} + +USE_PHP= pdo +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "pgsql" +USE_PGSQL= yes + +CONFIGURE_ARGS+=--with-pgsql=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "phar" +CONFIGURE_ARGS+=--enable-phar \ + --with-pcre-dir=${LOCALBASE} + +USE_PHP= hash +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "posix" +CONFIGURE_ARGS+=--enable-posix +.endif + +.if ${PHP_MODNAME} == "pspell" +LIB_DEPENDS+= aspell:${PORTSDIR}/textproc/aspell + +CONFIGURE_ARGS+=--with-pspell=${LOCALBASE} + +# Ugly hack to load session before psell to avoid crashes +USE_PHP= session +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "readline" +CONFIGURE_ARGS+=--with-readline=/usr +.endif + +.if ${PHP_MODNAME} == "recode" +LIB_DEPENDS+= recode:${PORTSDIR}/converters/recode + +CONFIGURE_ARGS+=--with-recode=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "session" +CONFIGURE_ARGS+=--enable-session +.endif + +.if ${PHP_MODNAME} == "shmop" +CONFIGURE_ARGS+=--enable-shmop +.endif + +.if ${PHP_MODNAME} == "simplexml" +CONFIGURE_ARGS+=--enable-simplexml \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 +.endif + +.if ${PHP_MODNAME} == "snmp" +CONFIGURE_ARGS+=--with-snmp=${LOCALBASE} \ + --with-openssl-dir=${OPENSSLBASE} + +CONFIGURE_ENV+= ac_cv_buggy_snprint_value="no" + +LIB_DEPENDS+= netsnmp:${PORTSDIR}/net-mgmt/net-snmp +LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl +USE_OPENSSL= yes +.endif + +.if ${PHP_MODNAME} == "soap" +CONFIGURE_ARGS+=--enable-soap \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 + +USE_PHP= session +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "sockets" +CONFIGURE_ARGS+=--enable-sockets +.endif + +.if ${PHP_MODNAME} == "sqlite3" +USE_SQLITE= yes +CONFIGURE_ARGS+=--with-sqlite3=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "sybase_ct" +LIB_DEPENDS+= ct:${PORTSDIR}/databases/freetds + +CONFIGURE_ARGS+=--with-sybase-ct=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "sysvmsg" +CONFIGURE_ARGS+=--enable-sysvmsg +.endif + +.if ${PHP_MODNAME} == "sysvsem" +CONFIGURE_ARGS+=--enable-sysvsem +.endif + +.if ${PHP_MODNAME} == "sysvshm" +CONFIGURE_ARGS+=--enable-sysvshm +.endif + +.if ${PHP_MODNAME} == "tidy" +CONFIGURE_ARGS+=--with-tidy=${LOCALBASE} + +LIB_DEPENDS+= tidy-0.99:${PORTSDIR}/www/tidy-lib +.endif + +.if ${PHP_MODNAME} == "tokenizer" +CONFIGURE_ARGS+=--enable-tokenizer +.endif + +.if ${PHP_MODNAME} == "wddx" +CONFIGURE_ARGS+=--enable-wddx \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 + +USE_PHP= xml session +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "xml" +CONFIGURE_ARGS+=--enable-xml \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 +.endif + +.if ${PHP_MODNAME} == "xmlreader" +CONFIGURE_ARGS+=--enable-xmlreader \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 + +USE_PHP= dom +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "xmlrpc" +CONFIGURE_ARGS+=--with-xmlrpc \ + --with-libxml-dir=${LOCALBASE} \ + --with-iconv-dir=${LOCALBASE} + +USES+= iconv +USE_GNOME= libxml2 + +PHP_HEADER_DIRS=libxmlrpc + +USE_PHP= xml +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "xmlwriter" +CONFIGURE_ARGS+=--enable-xmlwriter \ + --with-libxml-dir=${LOCALBASE} + +USE_GNOME= libxml2 +.endif + +.if ${PHP_MODNAME} == "xsl" +CONFIGURE_ARGS+=--with-xsl=${LOCALBASE} + +USE_GNOME= libxslt +USE_PHP= dom xml +USE_PHP_BUILD= yes +.endif + +.if ${PHP_MODNAME} == "zip" +CONFIGURE_ARGS+=--enable-zip \ + --with-zlib-dir=/usr \ + --with-pcre-dir=${LOCALBASE} +.endif + +.if ${PHP_MODNAME} == "zlib" +CONFIGURE_ARGS+=--with-zlib=/usr +.endif + +.include <bsd.port.pre.mk> + +.if ${PHP_MODNAME} == "dba" +. if empty(PORT_OPTIONS:MCDB) +CONFIGURE_ARGS+=--without-cdb +. endif +. if ${PORT_OPTIONS:MDB4} +CONFIGURE_ARGS+=--with-db4=${LOCALBASE} + +USE_BDB= 40+ +WITH_BDB_HIGHEST= yes +. endif +. if ${PORT_OPTIONS:MGDBM} +LIB_DEPENDS+= gdbm:${PORTSDIR}/databases/gdbm + +CONFIGURE_ARGS+=--with-gdbm=${LOCALBASE} +. endif +. if ${PORT_OPTIONS:MQDBM} +LIB_DEPENDS+= qdbm:${PORTSDIR}/databases/qdbm + +CONFIGURE_ARGS+=--with-qdbm=${LOCALBASE} +. endif +. if ${PORT_OPTIONS:MTOKYO} +LIB_DEPENDS+= tokyocabinet:${PORTSDIR}/databases/tokyocabinet + +CONFIGURE_ARGS+=--with-tcadb=${LOCALBASE} +. endif +. if empty(PORT_OPTIONS:MINIFILE) +CONFIGURE_ARGS+=--disable-inifile +. endif +. if empty(PORT_OPTIONS:MFLATFILE) +CONFIGURE_ARGS+=--disable-flatfile +. endif +.endif + +.if ${PHP_MODNAME} == "gd" +. if ${PORT_OPTIONS:MT1LIB} +LIB_DEPENDS+= t1:${PORTSDIR}/devel/t1lib + +CONFIGURE_ARGS+=--with-t1lib=${LOCALBASE} +. endif +. if ${PORT_OPTIONS:MTRUETYPE} +CONFIGURE_ARGS+=--enable-gd-native-ttf +. endif +. if ${PORT_OPTIONS:MJIS} +CONFIGURE_ARGS+=--enable-gd-jis-conv +. endif +. if ${PORT_OPTIONS:MX11} +USE_XORG= xpm + +CONFIGURE_ARGS+=--with-xpm-dir=${LOCALBASE} +. endif +. if ${PORT_OPTIONS:MVPX} +LIB_DEPENDS+= vpx:${PORTSDIR}/multimedia/libvpx + +CONFIGURE_ARGS+=--with-vpx-dir=${LOCALBASE} +. endif +.endif + +.if ${PHP_MODNAME} == "mbstring" +. if ${PORT_OPTIONS:MREGEX} +LIB_DEPENDS+= onig:${PORTSDIR}/devel/oniguruma4 +CONFIGURE_ARGS+=--with-onig=${LOCALBASE} +. else +CONFIGURE_ARGS+=--disable-mbregex +. endif +.endif + +.if ${PHP_MODNAME} == "mysql" +. if ${PORT_OPTIONS:MMYSQLND} +CONFIGURE_ARGS+=--with-mysql=mysqlnd +. else +CONFIGURE_ARGS+=--with-mysql=${LOCALBASE} \ + --with-zlib-dir=/usr + +USE_MYSQL= yes +. endif +.endif + +.if ${PHP_MODNAME} == "mysqli" +. if ${PORT_OPTIONS:MMYSQLND} +CONFIGURE_ARGS+=--with-mysqli=mysqlnd +. else +CONFIGURE_ARGS+=--with-mysqli=${LOCALBASE}/bin/mysql_config + +USE_MYSQL= yes +. endif +.endif + +.if ${PHP_MODNAME} == "openssl" || ${PHP_MODNAME} == "sqlite3" +post-extract: + @${MV} ${WRKSRC}/config0.m4 ${WRKSRC}/config.m4 +.endif + +.if ${PHP_MODNAME} == "odbc" +. if ${PORT_OPTIONS:MIODBC} +LIB_DEPENDS+= iodbc:${PORTSDIR}/databases/libiodbc + +CONFIGURE_ARGS+=--with-iodbc=${LOCALBASE} +. else +LIB_DEPENDS+= odbc:${PORTSDIR}/databases/unixODBC + +CONFIGURE_ARGS+=--with-unixODBC=${LOCALBASE} +. endif +.endif + +.if ${PHP_MODNAME} == "pdo_dblib" +. if ${PORT_OPTIONS:MMSSQL} +LIB_DEPENDS+= sybdb:${PORTSDIR}/databases/freetds-msdblib +. else +LIB_DEPENDS+= ct:${PORTSDIR}/databases/freetds +. endif +.endif + +.if ${PHP_MODNAME} == "pdo_odbc" +. if ${PORT_OPTIONS:MIODBC} +LIB_DEPENDS+= iodbc:${PORTSDIR}/databases/libiodbc + +CONFIGURE_ARGS+=--with-pdo-odbc=iODBC,${LOCALBASE} +. else +LIB_DEPENDS+= odbc:${PORTSDIR}/databases/unixODBC + +CONFIGURE_ARGS+=--with-pdo-odbc=unixODBC,${LOCALBASE} +. endif +.endif + +.if ${PHP_MODNAME} == "pdo_mysql" +. if ${PORT_OPTIONS:MMYSQLND} +CONFIGURE_ARGS+=--with-pdo-mysql=mysqlnd + +USE_PHP+= mysql +. else +CONFIGURE_ARGS+=--with-pdo-mysql=${LOCALBASE} \ + --with-zlib-dir=/usr + +USE_MYSQL= yes +. endif +.endif + +.if ${PHP_MODNAME} == "xml" +post-extract: + @${MKDIR} ${WRKSRC}/ext/xml + @${CP} ${WRKSRC}/expat_compat.h ${WRKSRC}/ext/xml +.endif + +.if ${PHP_MODNAME} == "zlib" +post-extract: + @${MV} ${WRKSRC}/config0.m4 ${WRKSRC}/config.m4 +.endif diff --git a/lang/php55/distinfo b/lang/php55/distinfo new file mode 100644 index 000000000000..7447caa6d7df --- /dev/null +++ b/lang/php55/distinfo @@ -0,0 +1,4 @@ +SHA256 (php-5.5.0.tar.bz2) = 29bb5ea45256f3983fab95af1f18d76dcc045565b2f175f11817069cefcf6cd1 +SIZE (php-5.5.0.tar.bz2) = 12256814 +SHA256 (php-5.5.x-mail-header.patch) = b0b5a7c961b2052eb14d9528e76155cbeaa881fb9b4a49f452f9dab07b6fb1c4 +SIZE (php-5.5.x-mail-header.patch) = 3379 diff --git a/lang/php55/files/patch-TSRM_threads.m4 b/lang/php55/files/patch-TSRM_threads.m4 new file mode 100644 index 000000000000..227f6d26c9d5 --- /dev/null +++ b/lang/php55/files/patch-TSRM_threads.m4 @@ -0,0 +1,11 @@ +--- TSRM/threads.m4.orig 2005-04-27 15:22:18.000000000 +0200 ++++ TSRM/threads.m4 2009-09-22 10:01:37.000000000 +0200 +@@ -79,7 +79,7 @@ + pthread_mutexattr_t mattr; + int data = 1; + pthread_mutexattr_init(&mattr); +- return pthread_create(&thd, NULL, thread_routine, &data); ++ return 0; + } ], [ + pthreads_working=yes + ], [ diff --git a/lang/php55/files/patch-Zend::zend.h b/lang/php55/files/patch-Zend::zend.h new file mode 100644 index 000000000000..0fb2398f171d --- /dev/null +++ b/lang/php55/files/patch-Zend::zend.h @@ -0,0 +1,11 @@ +--- Zend/zend.h.orig 2008-08-15 21:47:23.000000000 +0200 ++++ Zend/zend.h 2008-09-25 22:52:50.000000000 +0200 +@@ -192,7 +192,7 @@ + # define ZEND_FASTCALL + #endif + +-#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && !(defined(ZTS) && defined(HPUX)) && !defined(DARWIN) ++#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && !(defined(ZTS) && defined(HPUX)) && !defined(DARWIN) && !(defined(ZTS) && defined(__FreeBSD__)) + # define ZEND_ALLOCA_MAX_SIZE (32 * 1024) + # define ALLOCA_FLAG(name) \ + zend_bool name; diff --git a/lang/php55/files/patch-Zend_zend_list.c b/lang/php55/files/patch-Zend_zend_list.c new file mode 100644 index 000000000000..f71b6f6ac0e2 --- /dev/null +++ b/lang/php55/files/patch-Zend_zend_list.c @@ -0,0 +1,38 @@ +--- Zend/zend_list.c.orig 2012-01-01 14:15:04.000000000 +0100 ++++ Zend/zend_list.c 2012-03-02 10:29:02.000000000 +0100 +@@ -47,7 +47,7 @@ + return index; + } + +-ZEND_API int _zend_list_delete(int id TSRMLS_DC) ++ZEND_API int _zend_list_delete(ulong id TSRMLS_DC) + { + zend_rsrc_list_entry *le; + +@@ -64,7 +64,7 @@ + } + + +-ZEND_API void *_zend_list_find(int id, int *type TSRMLS_DC) ++ZEND_API void *_zend_list_find(ulong id, int *type TSRMLS_DC) + { + zend_rsrc_list_entry *le; + +@@ -77,7 +77,7 @@ + } + } + +-ZEND_API int _zend_list_addref(int id TSRMLS_DC) ++ZEND_API int _zend_list_addref(ulong id TSRMLS_DC) + { + zend_rsrc_list_entry *le; + +@@ -348,7 +348,7 @@ + } + + +-const char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC) ++const char *zend_rsrc_list_get_rsrc_type(ulong resource TSRMLS_DC) + { + zend_rsrc_list_dtors_entry *lde; + int rsrc_type; diff --git a/lang/php55/files/patch-Zend_zend_list.h b/lang/php55/files/patch-Zend_zend_list.h new file mode 100644 index 000000000000..cbfedf6a8a62 --- /dev/null +++ b/lang/php55/files/patch-Zend_zend_list.h @@ -0,0 +1,24 @@ +--- Zend/zend_list.h.orig 2012-01-01 14:15:04.000000000 +0100 ++++ Zend/zend_list.h 2012-03-02 10:36:42.000000000 +0100 +@@ -71,9 +71,9 @@ + void zend_destroy_rsrc_list_dtors(void); + + ZEND_API int zend_list_insert(void *ptr, int type TSRMLS_DC); +-ZEND_API int _zend_list_addref(int id TSRMLS_DC); +-ZEND_API int _zend_list_delete(int id TSRMLS_DC); +-ZEND_API void *_zend_list_find(int id, int *type TSRMLS_DC); ++ZEND_API int _zend_list_addref(ulong id TSRMLS_DC); ++ZEND_API int _zend_list_delete(ulong id TSRMLS_DC); ++ZEND_API void *_zend_list_find(ulong id, int *type TSRMLS_DC); + + #define zend_list_addref(id) _zend_list_addref(id TSRMLS_CC) + #define zend_list_delete(id) _zend_list_delete(id TSRMLS_CC) +@@ -82,7 +82,7 @@ + ZEND_API int zend_register_resource(zval *rsrc_result, void *rsrc_pointer, int rsrc_type TSRMLS_DC); + ZEND_API void *zend_fetch_resource(zval **passed_id TSRMLS_DC, int default_id, const char *resource_type_name, int *found_resource_type, int num_resource_types, ...); + +-ZEND_API const char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC); ++ZEND_API const char *zend_rsrc_list_get_rsrc_type(ulong resource TSRMLS_DC); + ZEND_API int zend_fetch_list_dtor_id(char *type_name); + + extern ZEND_API int le_index_ptr; /* list entry type for index pointers */ diff --git a/lang/php55/files/patch-acinclude.m4 b/lang/php55/files/patch-acinclude.m4 new file mode 100644 index 000000000000..29bb5a5d78ca --- /dev/null +++ b/lang/php55/files/patch-acinclude.m4 @@ -0,0 +1,45 @@ +--- acinclude.m4.orig 2009-05-09 22:28:02.000000000 +0200 ++++ acinclude.m4 2009-06-25 08:08:05.000000000 +0200 +@@ -968,15 +968,9 @@ + if test "$3" != "shared" && test "$3" != "yes" && test "$4" = "cli"; then + dnl ---------------------------------------------- CLI static module + [PHP_]translit($1,a-z_-,A-Z__)[_SHARED]=no +- case "$PHP_SAPI" in +- cgi|embed[)] +- PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,) +- EXT_STATIC="$EXT_STATIC $1" +- ;; +- *[)] + PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cli) +- ;; +- esac ++ PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cgi) ++ PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,fpm) + EXT_CLI_STATIC="$EXT_CLI_STATIC $1" + fi + PHP_ADD_BUILD_DIR($ext_builddir) +@@ -1026,12 +1020,6 @@ + build to be successful. + ]) + fi +- if test "x$is_it_enabled" = "xno" && test "x$3" != "xtrue"; then +- AC_MSG_ERROR([ +-You've configured extension $1, which depends on extension $2, +-but you've either not enabled $2, or have disabled it. +-]) +- fi + dnl Some systems require that we link $2 to $1 when building + ]) + +@@ -2303,9 +2291,9 @@ + test -z "$PHP_IMAP_SSL" && PHP_IMAP_SSL=no + + dnl Fallbacks for different configure options +- if test "$PHP_OPENSSL" != "no"; then ++ if test -n "$PHP_OPENSSL" && test "$PHP_OPENSSL" != "no"; then + PHP_OPENSSL_DIR=$PHP_OPENSSL +- elif test "$PHP_IMAP_SSL" != "no"; then ++ elif test -n "$PHP_IMAP_SSL" && test "$PHP_IMAP_SSL" != "no"; then + PHP_OPENSSL_DIR=$PHP_IMAP_SSL + fi + diff --git a/lang/php55/files/patch-configure.in b/lang/php55/files/patch-configure.in new file mode 100644 index 000000000000..69c05a77124b --- /dev/null +++ b/lang/php55/files/patch-configure.in @@ -0,0 +1,45 @@ +--- configure.in.orig 2011-03-04 10:10:54.000000000 +0100 ++++ configure.in 2011-03-04 10:11:01.000000000 +0100 +@@ -302,7 +302,6 @@ + dnl . + dnl ------------------------------------------------------------------------- + +-PTHREADS_CHECK + PHP_HELP_SEPARATOR([SAPI modules:]) + PHP_SHLIB_SUFFIX_NAMES + PHP_SAPI=default +@@ -327,7 +326,6 @@ + + if test "$enable_maintainer_zts" = "yes"; then + PTHREADS_ASSIGN_VARS +- PTHREADS_FLAGS + fi + + divert(3) +@@ -612,7 +610,7 @@ + ) + + dnl Some systems (like OpenSolaris) do not have nanosleep in libc +-PHP_CHECK_FUNC_LIB(nanosleep, rt) ++PHP_CHECK_FUNC(nanosleep, rt) + + dnl Check for getaddrinfo, should be a better way, but... + dnl Also check for working getaddrinfo +@@ -1162,7 +1160,7 @@ + EXPANDED_DATADIR=$datadir + EXPANDED_PHP_CONFIG_FILE_PATH=`eval echo "$PHP_CONFIG_FILE_PATH"` + EXPANDED_PHP_CONFIG_FILE_SCAN_DIR=`eval echo "$PHP_CONFIG_FILE_SCAN_DIR"` +-INCLUDE_PATH=.:$EXPANDED_PEAR_INSTALLDIR ++INCLUDE_PATH=.:${prefix}/share/pear + + exec_prefix=$old_exec_prefix + libdir=$old_libdir +@@ -1373,7 +1371,7 @@ + PHP_SUBST(all_targets) + PHP_SUBST(install_targets) + +-PHP_INSTALL_HEADERS([Zend/ TSRM/ include/ main/ main/streams/]) ++PHP_INSTALL_HEADERS([Zend/ TSRM/ main/ main/streams/]) + + PHP_ADD_SOURCES(TSRM, TSRM.c tsrm_strtok_r.c tsrm_virtual_cwd.c) + diff --git a/lang/php55/files/patch-ext_standard_basic_functions.c b/lang/php55/files/patch-ext_standard_basic_functions.c new file mode 100644 index 000000000000..1907338d0298 --- /dev/null +++ b/lang/php55/files/patch-ext_standard_basic_functions.c @@ -0,0 +1,20 @@ +--- ext/standard/basic_functions.c.orig 2008-06-09 14:06:40.000000000 +0200 ++++ ext/standard/basic_functions.c 2008-06-09 14:08:28.000000000 +0200 +@@ -3859,7 +3860,7 @@ + SetEnvironmentVariable(pe->key, "bugbug"); + #endif + putenv(pe->previous_value); +-# if defined(PHP_WIN32) ++# if defined(PHP_WIN32) || __FreeBSD_version < 700050 + efree(pe->previous_value); + # endif + } else { +@@ -4461,7 +4462,7 @@ + pe.previous_value = NULL; + for (env = environ; env != NULL && *env != NULL; env++) { + if (!strncmp(*env, pe.key, pe.key_len) && (*env)[pe.key_len] == '=') { /* found it */ +-#if defined(PHP_WIN32) ++#if defined(PHP_WIN32) || __FreeBSD_version < 700050 + /* must copy previous value because MSVCRT's putenv can free the string without notice */ + pe.previous_value = estrdup(*env); + #else diff --git a/lang/php55/files/patch-ext_standard_image.c b/lang/php55/files/patch-ext_standard_image.c new file mode 100644 index 000000000000..be29b54b2650 --- /dev/null +++ b/lang/php55/files/patch-ext_standard_image.c @@ -0,0 +1,50 @@ +--- ext/standard/image.c.orig 2007-10-04 15:31:11.000000000 +0200 ++++ ext/standard/image.c 2007-11-13 22:47:04.000000000 +0100 +@@ -31,9 +31,7 @@ + #endif + #include "php_image.h" + +-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB) + #include "zlib.h" +-#endif + + /* file type markers */ + PHPAPI const char php_sig_gif[3] = {'G', 'I', 'F'}; +@@ -80,9 +78,7 @@ + REGISTER_LONG_CONSTANT("IMAGETYPE_JP2", IMAGE_FILETYPE_JP2, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IMAGETYPE_JPX", IMAGE_FILETYPE_JPX, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IMAGETYPE_JB2", IMAGE_FILETYPE_JB2, CONST_CS | CONST_PERSISTENT); +-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB) + REGISTER_LONG_CONSTANT("IMAGETYPE_SWC", IMAGE_FILETYPE_SWC, CONST_CS | CONST_PERSISTENT); +-#endif + REGISTER_LONG_CONSTANT("IMAGETYPE_IFF", IMAGE_FILETYPE_IFF, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IMAGETYPE_WBMP", IMAGE_FILETYPE_WBMP, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("IMAGETYPE_JPEG2000",IMAGE_FILETYPE_JPC, CONST_CS | CONST_PERSISTENT); /* keep alias */ +@@ -184,7 +180,6 @@ + } + /* }}} */ + +-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB) + /* {{{ php_handle_swc + */ + static struct gfxinfo *php_handle_swc(php_stream * stream TSRMLS_DC) +@@ -255,7 +250,6 @@ + return result; + } + /* }}} */ +-#endif + + /* {{{ php_handle_swf + */ +@@ -1314,11 +1308,7 @@ + result = php_handle_swf(stream TSRMLS_CC); + break; + case IMAGE_FILETYPE_SWC: +-#if HAVE_ZLIB && !defined(COMPILE_DL_ZLIB) + result = php_handle_swc(stream TSRMLS_CC); +-#else +- php_error_docref(NULL TSRMLS_CC, E_NOTICE, "The image is a compressed SWF file, but you do not have a static version of the zlib extension enabled"); +-#endif + break; + case IMAGE_FILETYPE_PSD: + result = php_handle_psd(stream TSRMLS_CC); diff --git a/lang/php55/files/patch-ext_zlib_config0.m4 b/lang/php55/files/patch-ext_zlib_config0.m4 new file mode 100644 index 000000000000..249c85b498d3 --- /dev/null +++ b/lang/php55/files/patch-ext_zlib_config0.m4 @@ -0,0 +1,11 @@ +--- ext/zlib/config0.m4.orig 2010-08-26 13:19:52.000000000 +0200 ++++ ext/zlib/config0.m4 2010-08-26 13:20:11.000000000 +0200 +@@ -8,7 +8,7 @@ + PHP_ARG_WITH(zlib-dir,if the location of ZLIB install directory is defined, + [ --with-zlib-dir=<DIR> Define the location of zlib install directory], no, no) + +-if test "$PHP_ZLIB" != "no" || test "$PHP_ZLIB_DIR" != "no"; then ++if test "$PHP_ZLIB" != "no"; then + PHP_NEW_EXTENSION(zlib, zlib.c zlib_fopen_wrapper.c zlib_filter.c, $ext_shared) + PHP_SUBST(ZLIB_SHARED_LIBADD) + diff --git a/lang/php55/files/patch-main::php_config.h.in b/lang/php55/files/patch-main::php_config.h.in new file mode 100644 index 000000000000..8e9938876421 --- /dev/null +++ b/lang/php55/files/patch-main::php_config.h.in @@ -0,0 +1,12 @@ +--- main/php_config.h.in.orig Wed Jan 11 15:25:52 2006 ++++ main/php_config.h.in Wed May 3 09:38:09 2006 +@@ -2760,6 +2760,9 @@ + /* Define if uint32_t type is present. */ + #undef HAVE_UINT32_T + ++/* Include external shared modules configurations */ ++#include "ext/php_config.h" ++ + /* Whether sprintf is broken */ + #undef ZEND_BROKEN_SPRINTF + diff --git a/lang/php55/files/patch-sapi_fpm_Makefile.frag b/lang/php55/files/patch-sapi_fpm_Makefile.frag new file mode 100644 index 000000000000..3d777795dd86 --- /dev/null +++ b/lang/php55/files/patch-sapi_fpm_Makefile.frag @@ -0,0 +1,12 @@ +--- sapi/fpm/Makefile.frag.orig 2011-10-08 23:04:10.000000000 +0200 ++++ sapi/fpm/Makefile.frag 2012-02-09 16:43:25.000000000 +0100 +@@ -27,6 +27,6 @@ + @$(mkinstalldirs) $(INSTALL_ROOT)$(mandir)/man8 + @$(INSTALL_DATA) sapi/fpm/php-fpm.8 $(INSTALL_ROOT)$(mandir)/man8/php-fpm$(program_suffix).8 + +- @echo "Installing PHP FPM status page: $(INSTALL_ROOT)$(datadir)/fpm/" +- @$(mkinstalldirs) $(INSTALL_ROOT)$(datadir)/fpm +- @$(INSTALL_DATA) sapi/fpm/status.html $(INSTALL_ROOT)$(datadir)/fpm/status.html ++ @echo "Installing PHP FPM status page: $(INSTALL_ROOT)$(datadir)/php/fpm/" ++ @$(mkinstalldirs) $(INSTALL_ROOT)$(datadir)/php/fpm ++ @$(INSTALL_DATA) sapi/fpm/status.html $(INSTALL_ROOT)$(datadir)/php/fpm/status.html diff --git a/lang/php55/files/patch-sapi_fpm_config.m4 b/lang/php55/files/patch-sapi_fpm_config.m4 new file mode 100644 index 000000000000..a9db5afbe0af --- /dev/null +++ b/lang/php55/files/patch-sapi_fpm_config.m4 @@ -0,0 +1,20 @@ +--- sapi/fpm/config.m4.orig 2011-06-26 17:48:11.000000000 +0200 ++++ sapi/fpm/config.m4 2011-11-18 11:05:21.000000000 +0100 +@@ -312,7 +312,7 @@ + + AC_MSG_CHECKING([for TCP_INFO]) + +- AC_TRY_COMPILE([ #include <netinet/tcp.h> ], [struct tcp_info ti; int x = TCP_INFO;], [ ++ AC_TRY_COMPILE([ #include <netinet/tcp.h> ], [struct tcp_info ti; ti.tcpi_sacked = 0; int x = TCP_INFO;], [ + have_lq=tcp_info + AC_MSG_RESULT([yes]) + ], [ +@@ -333,7 +333,7 @@ + AC_MSG_RESULT([no]) + ]) + +- if test "$have_lq" = "tcp_info"; then ++ if test "$have_lq" = "so_listenq"; then + AC_DEFINE([HAVE_LQ_SO_LISTENQ], 1, [do we have SO_LISTENQxxx?]) + fi + fi diff --git a/lang/php55/files/patch-sapi_fpm_php-fpm.conf.in b/lang/php55/files/patch-sapi_fpm_php-fpm.conf.in new file mode 100644 index 000000000000..315f2470a773 --- /dev/null +++ b/lang/php55/files/patch-sapi_fpm_php-fpm.conf.in @@ -0,0 +1,11 @@ +--- sapi/fpm/php-fpm.conf.in.orig 2012-02-08 15:50:42.000000000 +0100 ++++ sapi/fpm/php-fpm.conf.in 2012-02-08 15:50:54.000000000 +0100 +@@ -317,7 +317,7 @@ + ; last request memory: 0 + ; + ; Note: There is a real-time FPM status monitoring sample web page available +-; It's available in: @EXPANDED_DATADIR@/fpm/status.html ++; It's available in: @EXPANDED_DATADIR@/php/fpm/status.html + ; + ; Note: The value must start with a leading slash (/). The value can be + ; anything, but it may not be a good idea to use the .php extension or it diff --git a/lang/php55/files/php-fpm.in b/lang/php55/files/php-fpm.in new file mode 100644 index 000000000000..55e2ac992408 --- /dev/null +++ b/lang/php55/files/php-fpm.in @@ -0,0 +1,43 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: php-fpm +# REQUIRE: LOGIN +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable php-fpm: +# php_fpm_enable="YES" +# + +. /etc/rc.subr + +name="php_fpm" +rcvar=php_fpm_enable + +load_rc_config "$name" + +: ${php_fpm_enable="NO"} + +extra_commands="reload logrotate" + +command="%%PREFIX%%/sbin/php-fpm" +pidfile="/var/run/php-fpm.pid" +sig_stop="QUIT" +sig_reload="USR2" +logrotate_cmd="php_fpm_logrotate" + +required_files="%%PREFIX%%/etc/php-fpm.conf" + +php_fpm_logrotate() { + if [ -z "$rc_pid" ]; then + _run_rc_notrunning + return 1 + fi + echo "Rotating logs $name." + kill -USR1 $rc_pid +} + +run_rc_command "$1" diff --git a/lang/php55/pkg-descr b/lang/php55/pkg-descr new file mode 100644 index 000000000000..a53cdb1bde68 --- /dev/null +++ b/lang/php55/pkg-descr @@ -0,0 +1,8 @@ +PHP, which stands for "PHP: Hypertext Preprocessor" is a widely-used Open +Source general-purpose scripting language that is especially suited for +Web development and can be embedded into HTML. Its syntax draws upon C, +Java, and Perl, and is easy to learn. The main goal of the language is to +allow web developers to write dynamically generated webpages quickly, but +you can do much more with PHP. + +WWW: http://www.php.net/ diff --git a/lang/php55/pkg-message.mod b/lang/php55/pkg-message.mod new file mode 100644 index 000000000000..555f5b053ae8 --- /dev/null +++ b/lang/php55/pkg-message.mod @@ -0,0 +1,10 @@ +*************************************************************** + +Make sure index.php is part of your DirectoryIndex. + +You should add the following to your Apache configuration file: + +AddType application/x-httpd-php .php +AddType application/x-httpd-php-source .phps + +*************************************************************** diff --git a/lang/php55/pkg-plist b/lang/php55/pkg-plist new file mode 100644 index 000000000000..7d7e692008fd --- /dev/null +++ b/lang/php55/pkg-plist @@ -0,0 +1,263 @@ +%%CLI%%bin/php +%%CGI%%bin/php-cgi +bin/php-config +bin/phpize +%%FPM%%sbin/php-fpm +etc/php.conf +etc/php.ini-development +etc/php.ini-production +%%FPM%%@unexec if cmp -s %D/etc/php-fpm.conf %D/etc/php-fpm.conf.default; then rm -f %D/etc/php-fpm.conf; fi +%%FPM%%etc/php-fpm.conf.default +%%FPM%%@exec cp -n %D/%F %B/php-fpm.conf +include/php/TSRM/TSRM.h +include/php/TSRM/readdir.h +include/php/TSRM/tsrm_config.h +include/php/TSRM/tsrm_config.w32.h +include/php/TSRM/tsrm_config_common.h +include/php/TSRM/tsrm_nw.h +include/php/TSRM/tsrm_strtok_r.h +include/php/TSRM/tsrm_virtual_cwd.h +include/php/TSRM/tsrm_win32.h +include/php/Zend/zend.h +include/php/Zend/zend_API.h +include/php/Zend/zend_alloc.h +include/php/Zend/zend_build.h +include/php/Zend/zend_builtin_functions.h +include/php/Zend/zend_closures.h +include/php/Zend/zend_compile.h +include/php/Zend/zend_config.h +include/php/Zend/zend_config.nw.h +include/php/Zend/zend_config.w32.h +include/php/Zend/zend_constants.h +include/php/Zend/zend_dtrace.h +include/php/Zend/zend_dynamic_array.h +include/php/Zend/zend_errors.h +include/php/Zend/zend_exceptions.h +include/php/Zend/zend_execute.h +include/php/Zend/zend_extensions.h +include/php/Zend/zend_float.h +include/php/Zend/zend_gc.h +include/php/Zend/zend_generators.h +include/php/Zend/zend_globals.h +include/php/Zend/zend_globals_macros.h +include/php/Zend/zend_hash.h +include/php/Zend/zend_highlight.h +include/php/Zend/zend_indent.h +include/php/Zend/zend_ini.h +include/php/Zend/zend_ini_parser.h +include/php/Zend/zend_ini_scanner.h +include/php/Zend/zend_ini_scanner_defs.h +include/php/Zend/zend_interfaces.h +include/php/Zend/zend_istdiostream.h +include/php/Zend/zend_iterators.h +include/php/Zend/zend_language_parser.h +include/php/Zend/zend_language_scanner.h +include/php/Zend/zend_language_scanner_defs.h +include/php/Zend/zend_list.h +include/php/Zend/zend_llist.h +include/php/Zend/zend_modules.h +include/php/Zend/zend_multibyte.h +include/php/Zend/zend_multiply.h +include/php/Zend/zend_object_handlers.h +include/php/Zend/zend_objects.h +include/php/Zend/zend_objects_API.h +include/php/Zend/zend_operators.h +include/php/Zend/zend_ptr_stack.h +include/php/Zend/zend_qsort.h +include/php/Zend/zend_signal.h +include/php/Zend/zend_stack.h +include/php/Zend/zend_static_allocator.h +include/php/Zend/zend_stream.h +include/php/Zend/zend_string.h +include/php/Zend/zend_strtod.h +include/php/Zend/zend_ts_hash.h +include/php/Zend/zend_types.h +include/php/Zend/zend_variables.h +include/php/Zend/zend_vm.h +include/php/Zend/zend_vm_def.h +include/php/Zend/zend_vm_execute.h +include/php/Zend/zend_vm_opcodes.h +include/php/ext/date/lib/timelib.h +include/php/ext/date/lib/timelib_config.h +include/php/ext/date/lib/timelib_structs.h +include/php/ext/date/php_date.h +include/php/ext/ereg/php_ereg.h +include/php/ext/ereg/php_regex.h +include/php/ext/ereg/regex/cclass.h +include/php/ext/ereg/regex/cname.h +include/php/ext/ereg/regex/regex.h +include/php/ext/ereg/regex/regex2.h +include/php/ext/ereg/regex/utils.h +include/php/ext/libxml/php_libxml.h +include/php/ext/mysqlnd/config-win.h +include/php/ext/mysqlnd/mysqlnd.h +include/php/ext/mysqlnd/mysqlnd_alloc.h +include/php/ext/mysqlnd/mysqlnd_block_alloc.h +include/php/ext/mysqlnd/mysqlnd_charset.h +include/php/ext/mysqlnd/mysqlnd_debug.h +include/php/ext/mysqlnd/mysqlnd_enum_n_def.h +include/php/ext/mysqlnd/mysqlnd_ext_plugin.h +include/php/ext/mysqlnd/mysqlnd_libmysql_compat.h +include/php/ext/mysqlnd/mysqlnd_net.h +include/php/ext/mysqlnd/mysqlnd_portability.h +include/php/ext/mysqlnd/mysqlnd_priv.h +include/php/ext/mysqlnd/mysqlnd_result.h +include/php/ext/mysqlnd/mysqlnd_result_meta.h +include/php/ext/mysqlnd/mysqlnd_reverse_api.h +include/php/ext/mysqlnd/mysqlnd_statistics.h +include/php/ext/mysqlnd/mysqlnd_structs.h +include/php/ext/mysqlnd/mysqlnd_wireprotocol.h +include/php/ext/mysqlnd/php_mysqlnd.h +include/php/ext/mysqlnd/php_mysqlnd_config.h +include/php/ext/pcre/php_pcre.h +include/php/ext/spl/php_spl.h +include/php/ext/spl/spl_array.h +include/php/ext/spl/spl_directory.h +include/php/ext/spl/spl_dllist.h +include/php/ext/spl/spl_engine.h +include/php/ext/spl/spl_exceptions.h +include/php/ext/spl/spl_fixedarray.h +include/php/ext/spl/spl_functions.h +include/php/ext/spl/spl_heap.h +include/php/ext/spl/spl_iterators.h +include/php/ext/spl/spl_observer.h +include/php/ext/standard/base64.h +include/php/ext/standard/basic_functions.h +include/php/ext/standard/crc32.h +include/php/ext/standard/credits.h +include/php/ext/standard/credits_ext.h +include/php/ext/standard/credits_sapi.h +include/php/ext/standard/crypt_blowfish.h +include/php/ext/standard/crypt_freesec.h +include/php/ext/standard/css.h +include/php/ext/standard/cyr_convert.h +include/php/ext/standard/datetime.h +include/php/ext/standard/dl.h +include/php/ext/standard/exec.h +include/php/ext/standard/file.h +include/php/ext/standard/flock_compat.h +include/php/ext/standard/fsock.h +include/php/ext/standard/head.h +include/php/ext/standard/html.h +include/php/ext/standard/html_tables.h +include/php/ext/standard/info.h +include/php/ext/standard/md5.h +include/php/ext/standard/microtime.h +include/php/ext/standard/pack.h +include/php/ext/standard/pageinfo.h +include/php/ext/standard/php_array.h +include/php/ext/standard/php_assert.h +include/php/ext/standard/php_browscap.h +include/php/ext/standard/php_crypt.h +include/php/ext/standard/php_crypt_r.h +include/php/ext/standard/php_dir.h +include/php/ext/standard/php_dns.h +include/php/ext/standard/php_ext_syslog.h +include/php/ext/standard/php_filestat.h +include/php/ext/standard/php_fopen_wrappers.h +include/php/ext/standard/php_ftok.h +include/php/ext/standard/php_http.h +include/php/ext/standard/php_image.h +include/php/ext/standard/php_incomplete_class.h +include/php/ext/standard/php_iptc.h +include/php/ext/standard/php_lcg.h +include/php/ext/standard/php_link.h +include/php/ext/standard/php_mail.h +include/php/ext/standard/php_math.h +include/php/ext/standard/php_metaphone.h +include/php/ext/standard/php_password.h +include/php/ext/standard/php_rand.h +include/php/ext/standard/php_smart_str.h +include/php/ext/standard/php_smart_str_public.h +include/php/ext/standard/php_standard.h +include/php/ext/standard/php_string.h +include/php/ext/standard/php_type.h +include/php/ext/standard/php_uuencode.h +include/php/ext/standard/php_var.h +include/php/ext/standard/php_versioning.h +include/php/ext/standard/proc_open.h +include/php/ext/standard/quot_print.h +include/php/ext/standard/scanf.h +include/php/ext/standard/sha1.h +include/php/ext/standard/streamsfuncs.h +include/php/ext/standard/uniqid.h +include/php/ext/standard/url.h +include/php/ext/standard/url_scanner_ex.h +include/php/ext/standard/winver.h +@exec touch %D/include/php/ext/php_config.h +@unexec [ -s %D/include/php/ext/php_config.h ] || rm %D/include/php/ext/php_config.h +include/php/main/SAPI.h +include/php/main/build-defs.h +include/php/main/fopen_wrappers.h +include/php/main/php.h +include/php/main/php_compat.h +include/php/main/php_config.h +include/php/main/php_content_types.h +include/php/main/php_getopt.h +include/php/main/php_globals.h +include/php/main/php_ini.h +include/php/main/php_main.h +include/php/main/php_memory_streams.h +include/php/main/php_network.h +include/php/main/php_open_temporary_file.h +include/php/main/php_output.h +include/php/main/php_reentrancy.h +include/php/main/php_scandir.h +include/php/main/php_streams.h +include/php/main/php_syslog.h +include/php/main/php_ticks.h +include/php/main/php_variables.h +include/php/main/php_version.h +include/php/main/rfc1867.h +include/php/main/snprintf.h +include/php/main/spprintf.h +include/php/main/streams/php_stream_context.h +include/php/main/streams/php_stream_filter_api.h +include/php/main/streams/php_stream_glob_wrapper.h +include/php/main/streams/php_stream_mmap.h +include/php/main/streams/php_streams_int.h +include/php/main/streams/php_stream_transport.h +include/php/main/streams/php_stream_userspace.h +include/php/main/streams/php_stream_plain_wrapper.h +%%CLI%%include/php/sapi/cli/cli.h +%%EMBED%%include/php/sapi/embed/php_embed.h +include/php/main/win32_internal_function_disabled.h +include/php/main/win95nt.h +%%EMBED%%lib/libphp5.so +lib/php/build/Makefile.global +lib/php/build/acinclude.m4 +lib/php/build/config.guess +lib/php/build/config.sub +lib/php/build/libtool.m4 +lib/php/build/ltmain.sh +lib/php/build/mkdep.awk +lib/php/build/phpize.m4 +lib/php/build/run-tests.php +lib/php/build/scan_makefile_in.awk +lib/php/build/shtool +%%APACHE%%%%APACHEMODDIR%%/%%AP_MODULE%% +%%APACHE%%@exec %D/sbin/apxs -e -a -n %%AP_NAME%% %f +%%APACHE%%@unexec %D/sbin/apxs -e -A -n %%AP_NAME%% %f +%%FPM%%share/php/fpm/status.html +@dirrm include/php/TSRM +@dirrm include/php/Zend +@dirrm include/php/ext/date/lib +@dirrm include/php/ext/date +@dirrm include/php/ext/ereg/regex +@dirrm include/php/ext/ereg +@dirrm include/php/ext/libxml +@dirrm include/php/ext/mysqlnd +@dirrm include/php/ext/pcre +@dirrm include/php/ext/spl +@dirrm include/php/ext/standard +@dirrmtry include/php/ext +@dirrm include/php/main/streams +@dirrm include/php/main +@dirrm include/php/sapi/cli +%%EMBED%%@dirrm include/php/sapi/embed +@dirrm include/php/sapi +@dirrmtry include/php +@dirrm lib/php/build +@dirrmtry lib/php +%%FPM%%@dirrm share/php/fpm +%%FPM%%@dirrm share/php |