freebsd-ports/lang/php53/Makefile.ext
John Marino 5511fddafd lang/php5*: Fix spl/simplexml modules (4 ports)
The simplexml module uses spl which uses pcre (php53,54,55).  For php52,
the fix is applied directly to spl.  In any case, the bundled PCRE is not
used, so it needs to be able to find the external pcre library and related
headers.  Unfortunately, there is no include for ${LOCALBASE}/include
directory.  This commit adds to fix simplexml (or spl) module build.

Approved by:	portmgr (bapt)
2013-09-13 21:31:47 +00:00

624 lines
12 KiB
Text

COMMENT= The ${PHP_MODNAME} shared extension for php
USE_PHP= yes
USE_PHPEXT= yes
PHP_MODNAME= ${PKGNAMESUFFIX:S/-//}
DEFAULT_PHP_VER=53
IGNORE_WITH_PHP=52 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 DBM INIFILE FLATFILE
OPTIONS_DEFAULT= CDB INIFILE FLATFILE
OPTIONS_SINGLE= DBM
OPTIONS_SINGLE_DBM= GDBM QDBM
CDB_DESC= cdb database support
DB4_DESC= Berkeley DB4 support
GDBM_DESC= GDBM database support
QDBM_DESC= QDBM 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.9:${PORTSDIR}/print/freetype2 \
png15:${PORTSDIR}/graphics/png \
jpeg.11:${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
OPTIONS_DEFAULT= T1LIB TRUETYPE X11
T1LIB_DESC= Include T1lib support
TRUETYPE_DESC= TrueType string function
JIS_DESC= JIS-mapped Japanese font 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.10:${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
USES+= iconv
.endif
.if ${PHP_MODNAME} == "imap"
OPTIONS_DEFINE= SSL
OPTIONS_DEFAULT= SSL
LIB_DEPENDS+= c-client4.9:${PORTSDIR}/mail/cclient
CONFIGURE_ARGS+=--with-imap=${LOCALBASE} \
--with-pcre-dir=${LOCALBASE}
USE_OPENSSL= yes
.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= multibyte regex support
PHP_HEADER_DIRS=libmbfl libmbfl/filters libmbfl/mbfl libmbfl/nls
.endif
.if ${PHP_MODNAME} == "mcrypt"
LIB_DEPENDS+= mcrypt.8:${PORTSDIR}/security/libmcrypt
CONFIGURE_ARGS+=--with-mcrypt=${LOCALBASE}
USE_AUTOTOOLS= libltdl
.endif
.if ${PHP_MODNAME} == "mssql"
LIB_DEPENDS+= sybdb.5:${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
.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= 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.16:${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.3:${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}
CFLAGS+= -I${LOCALBASE}/include
USES+= pkgconfig
USE_GNOME= libxml2
.endif
.if ${PHP_MODNAME} == "snmp"
CONFIGURE_ARGS+=--with-snmp=${LOCALBASE} \
--with-openssl-dir=${OPENSSLBASE} \
--enable-ucd-snmp-hack
LIB_DEPENDS+= netsnmp.30:${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} == "sqlite"
CONFIGURE_ARGS+=--with-sqlite
USE_PHP= session
USE_PHP_BUILD= yes
PHP_HEADER_DIRS=libsqlite/src
OPTIONS_DEFINE= UTF8
UTF8_DESC= UTF-8 support
.endif
.if ${PHP_MODNAME} == "sqlite3"
USE_SQLITE= yes
CONFIGURE_ARGS+=--with-sqlite3=${LOCALBASE}
.endif
.if ${PHP_MODNAME} == "sybase_ct"
LIB_DEPENDS+= ct.4:${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.0:${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}
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.4:${PORTSDIR}/databases/gdbm
CONFIGURE_ARGS+=--with-gdbm=${LOCALBASE}
. endif
. if ${PORT_OPTIONS:MQDBM}
LIB_DEPENDS+= qdbm.14:${PORTSDIR}/databases/qdbm
CONFIGURE_ARGS+=--with-qdbm=${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:MX11}
USE_XORG= xpm
. endif
. if ${PORT_OPTIONS:MX11}
CONFIGURE_ARGS+=--with-xpm-dir=${LOCALBASE}
. endif
. if ${PORT_OPTIONS:MT1LIB}
LIB_DEPENDS+= t1.5:${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
.endif
.if ${PHP_MODNAME} == "imap"
. if ${PORT_OPTIONS:MSSL}
CONFIGURE_ARGS+=--with-imap-ssl=${OPENSSLBASE}
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
. endif
.endif
.if ${PHP_MODNAME} == "mbstring"
. if ${PORT_OPTIONS:MREGEX}
LIB_DEPENDS+= onig.1:${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.3:${PORTSDIR}/databases/libiodbc
CONFIGURE_ARGS+=--with-iodbc=${LOCALBASE}
.else
LIB_DEPENDS+= odbc.2:${PORTSDIR}/databases/unixODBC
CONFIGURE_ARGS+=--with-unixODBC=${LOCALBASE}
.endif
.endif
.if ${PHP_MODNAME} == "pdo_dblib"
.if ${PORT_OPTIONS:MMSSQL}
LIB_DEPENDS+= sybdb.5:${PORTSDIR}/databases/freetds-msdblib
.else
LIB_DEPENDS+= ct.4:${PORTSDIR}/databases/freetds
.endif
.endif
.if ${PHP_MODNAME} == "pdo_odbc"
.if ${PORT_OPTIONS:MIODBC}
LIB_DEPENDS+= iodbc.3:${PORTSDIR}/databases/libiodbc
CONFIGURE_ARGS+=--with-pdo-odbc=iODBC,${LOCALBASE}
.else
LIB_DEPENDS+= odbc.2:${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} == "sqlite"
. if ${PORT_OPTIONS:MUTF8}
CONFIGURE_ARGS+=--enable-sqlite-utf8
. 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