freebsd-ports/lang/php5/Makefile.ext
2008-12-07 11:54:36 +00:00

592 lines
12 KiB
Makefile

COMMENT= The ${PHP_MODNAME} shared extension for php
USE_PHP= yes
USE_PHPEXT= yes
PHP_MODNAME= ${PKGNAMESUFFIX:S/-//}
DEFAULT_PHP_VER=5
BROKEN_WITH_PHP=4
EXTSUBDIR= ${DISTNAME}/ext/${PHP_MODNAME}
WRKSRC= ${WRKDIR}/${EXTSUBDIR}
PATCHDIR= ${.CURDIR}/files
PLIST= ${NONEXISTENT}
EXTRACT_AFTER_ARGS?= | ${TAR} -xf - ${EXTSUBDIR}
.if ${PHP_MODNAME} == "bcmath"
CONFIGURE_ARGS+=--enable-bcmath
PHP_HEADER_DIRS=libbcmath libbcmath/src
.endif
.if ${PHP_MODNAME} == "bz2"
.if exists(/usr/bin/bzip2)
BZ2BASE= /usr
.else
BZ2BASE= ${LOCALBASE}
LIB_DEPENDS+= bz2.1:${PORTSDIR}/archivers/bzip2
.endif
CONFIGURE_ARGS+=--with-bz2=${BZ2BASE}
.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.4:${PORTSDIR}/ftp/curl
CONFIGURE_ARGS+=--with-curl=${LOCALBASE}
.endif
.if ${PHP_MODNAME} == "dba"
CONFIGURE_ARGS+=--enable-dba
OPTIONS= CDB "cdb database support" on \
DB4 "Berkeley DB4 support" off \
GDBM "GDBM database support" off \
QDBM "QDBM database support" off \
INIFILE "INI file support" on \
FLATFILE "flatfile support" on
PHP_HEADER_DIRS= libcdb libflatfile libinifile
.endif
.if ${PHP_MODNAME} == "dbase"
CONFIGURE_ARGS+=--enable-dbase
.endif
.if ${PHP_MODNAME} == "dom"
CONFIGURE_ARGS+=--enable-dom \
--with-libxml-dir=${LOCALBASE}
USE_GNOME= libxml2
USE_PHP= spl
USE_PHP_BUILD= yes
.endif
.if ${PHP_MODNAME} == "exif"
CONFIGURE_ARGS+=--enable-exif
.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 \
png.5:${PORTSDIR}/graphics/png \
jpeg.9:${PORTSDIR}/graphics/jpeg
. if !defined(WITHOUT_X11)
USE_XORG= xpm
. endif
CONFIGURE_ARGS+=--with-gd \
--with-freetype-dir=${LOCALBASE} \
--with-jpeg-dir=${LOCALBASE} \
--with-png-dir=${LOCALBASE} \
--with-zlib-dir=/usr
. if !defined(WITHOUT_X11)
CONFIGURE_ARGS+=--with-xpm-dir=${LOCALBASE}
. endif
OPTIONS= T1LIB "Include T1lib support" on \
TRUETYPE "Enable TrueType string function" on \
JIS "Enable JIS-mapped Japanese font support" off
PHP_HEADER_DIRS=libgd
.endif
.if ${PHP_MODNAME} == "gettext"
CONFIGURE_ARGS+=--with-gettext=${LOCALBASE}
USE_GETTEXT= yes
.endif
.if ${PHP_MODNAME} == "gmp"
LIB_DEPENDS+= gmp.7:${PORTSDIR}/math/libgmp4
CONFIGURE_ARGS+=--with-gmp=${LOCALBASE}
.endif
.if ${PHP_MODNAME} == "iconv"
CONFIGURE_ARGS+=--with-iconv=${LOCALBASE} \
--with-iconv-dir=${LOCALBASE}
USE_ICONV= yes
.endif
.if ${PHP_MODNAME} == "imap"
LIB_DEPENDS+= c-client4.9:${PORTSDIR}/mail/cclient
CONFIGURE_ARGS+=--with-imap=${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} == "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
OPTIONS= REGEX "Enable multibyte regex support" on
PHP_HEADER_DIRS=libmbfl libmbfl/filters libmbfl/mbfl libmbfl/nls oniguruma
.endif
.if ${PHP_MODNAME} == "mcrypt"
LIB_DEPENDS+= mcrypt.8:${PORTSDIR}/security/libmcrypt
CONFIGURE_ARGS+=--with-mcrypt=${LOCALBASE}
USE_AUTOTOOLS= libltdl:15
.endif
.if ${PHP_MODNAME} == "mhash"
LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash
CONFIGURE_ARGS+=--with-mhash=${LOCALBASE}
.endif
.if ${PHP_MODNAME} == "ming"
LIB_DEPENDS+= ming.4:${PORTSDIR}/graphics/ming
CONFIGURE_ARGS+=--with-ming=${LOCALBASE}
.endif
.if ${PHP_MODNAME} == "mssql"
LIB_DEPENDS+= sybdb.5:${PORTSDIR}/databases/freetds-msdblib
CONFIGURE_ARGS+=--with-mssql=${LOCALBASE}
.endif
.if ${PHP_MODNAME} == "mysql"
CONFIGURE_ARGS+=--with-mysql=${LOCALBASE} \
--with-zlib-dir=/usr
USE_MYSQL= yes
.endif
.if ${PHP_MODNAME} == "mysqli"
CONFIGURE_ARGS+=--with-mysqli=${LOCALBASE}/bin/mysql_config
USE_MYSQL= yes
BROKEN_WITH_MYSQL= 323 40
USE_PHP= spl
USE_PHP_BUILD= yes
.endif
.if ${PHP_MODNAME} == "ncurses"
CONFIGURE_ARGS+=--with-ncurses=/usr
.endif
.if ${PHP_MODNAME} == "oci8"
BUILD_DEPENDS+= ${LOCALBASE}/oracle8-client/lib/libclntsh.a:${PORTSDIR}/databases/oracle8-client
RUN_DEPENDS+= ${BUILD_DEPENDS}
CONFIGURE_ARGS+=--with-oci8=${LOCALBASE}/oracle8-client
.endif
.if ${PHP_MODNAME} == "odbc"
LIB_DEPENDS+= odbc.1:${PORTSDIR}/databases/unixODBC
CONFIGURE_ARGS+=--with-unixODBC=${LOCALBASE}
.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= MSSQL "Enable Microsoft SQL Server support" off
.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"
CONFIGURE_ARGS+=--with-pdo-mysql=${LOCALBASE} \
--with-zlib-dir=/usr
USE_MYSQL= yes
USE_PHP= pdo
USE_PHP_BUILD= yes
.endif
.if ${PHP_MODNAME} == "pdo_oci"
BUILD_DEPENDS+= ${LOCALBASE}/oracle8-client/lib/libclntsh.a:${PORTSDIR}/databases/oracle8-client
RUN_DEPENDS+= ${BUILD_DEPENDS}
CONFIGURE_ARGS+=--with-pdo-oci=${LOCALBASE}/oracle8-client
USE_PHP= pdo
USE_PHP_BUILD= yes
.endif
.if ${PHP_MODNAME} == "pdo_odbc"
LIB_DEPENDS+= odbc.1:${PORTSDIR}/databases/unixODBC
CONFIGURE_ARGS+=--with-pdo-odbc=unixODBC,${LOCALBASE}
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"
. if defined(WITH_SQLITE_PORT)
USE_SQLITE= yes
CONFIGURE_ARGS+=--with-pdo-sqlite=${LOCALBASE}
. else
CONFIGURE_ARGS+=--with-pdo-sqlite
. endif
USE_PHP= pdo
USE_PHP_BUILD= yes
PHP_HEADER_DIRS=sqlite/src
.endif
.if ${PHP_MODNAME} == "pgsql"
USE_PGSQL= yes
CONFIGURE_ARGS+=--with-pgsql=${LOCALBASE}
.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}
USE_GNOME= libxml2
.endif
.if ${PHP_MODNAME} == "snmp"
CONFIGURE_ARGS+=--with-snmp=${LOCALBASE} \
--with-openssl-dir=${OPENSSLBASE} \
--enable-ucd-snmp-hack
LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl
USE_OPENSSL= yes
OPTIONS= SNMP4 "Use old UCD SNMP instead of the new NET SNMP" off
.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} == "spl"
CONFIGURE_ARGS+=--enable-spl \
--with-libxml-dir=${LOCALBASE}
USE_GNOME= libxml2
USE_PHP= simplexml
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
USE_PHP= spl
USE_PHP_BUILD= yes
OPTIONS= UTF8 "Enable UTF-8 support" off
.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+=--with-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}
USE_ICONV= yes
USE_GNOME= libxml2
PHP_HEADER_DIRS=libxmlrpc
USE_PHP= xml
USE_PHP_BUILD= yes
.endif
.if ${PHP_MODNAME} == "xmlwriter"
CONFIGURE_ARGS+=--with-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} == "zlib"
CONFIGURE_ARGS+=--with-zlib=/usr
.endif
.include <bsd.port.pre.mk>
.if ${PHP_MODNAME} == "dba"
. if defined(WITHOUT_CDB)
CONFIGURE_ARGS+=--without-cdb
. endif
. if defined(WITH_DB4)
CONFIGURE_ARGS+=--with-db4=${LOCALBASE}
USE_BDB= yes
WITH_BDB_HIGHEST= yes
INVALID_BDB_VER= 2 3
. endif
. if defined(WITH_GDBM)
LIB_DEPENDS+= gdbm.3:${PORTSDIR}/databases/gdbm
CONFIGURE_ARGS+=--with-gdbm=${LOCALBASE}
. endif
. if defined(WITH_QDBM)
LIB_DEPENDS+= qdbm.14:${PORTSDIR}/databases/qdbm
CONFIGURE_ARGS+=--with-qdbm=${LOCALBASE}
. endif
. if defined(WITHOUT_INIFILE)
CONFIGURE_ARGS+=--without-inifile
. endif
. if defined(WITHOUT_FLATFILE)
CONFIGURE_ARGS+=--without-flatfile
. endif
.endif
.if ${PHP_MODNAME} == "gd"
. if !defined(WITHOUT_T1LIB)
LIB_DEPENDS+= t1.5:${PORTSDIR}/devel/t1lib
CONFIGURE_ARGS+=--with-t1lib=${LOCALBASE}
. endif
. if !defined(WITHOUT_TRUETYPE)
CONFIGURE_ARGS+=--enable-gd-native-ttf
. endif
. if defined(WITH_JIS)
CONFIGURE_ARGS+=--enable-gd-jis-conv
. endif
.endif
.if ${PHP_MODNAME} == "mbstring"
. if ${OSVERSION} < 600000 && ${ARCH} == "amd64"
BROKEN= Doesn't build on AMD64 with FreeBSD 5.x (varargs issue)
. endif
. if defined(WITHOUT_REGEX)
CONFIGURE_ARGS+=--disable-mbregex
. endif
.endif
.if ${PHP_MODNAME} == "openssl"
post-extract:
@${MV} ${WRKSRC}/config0.m4 ${WRKSRC}/config.m4
.endif
.if ${PHP_MODNAME} == "oci8" || ${PHP_MODNAME} == "pdo_oci"
pre-configure:
@cd ${WRKSRC}; \
for lib in ${LOCALBASE}/oracle8-client/lib/libclntsh /usr/lib/libpthread; do \
/usr/bin/ar x $${lib}.a; \
done; \
/usr/bin/ar rcs liboci8.a *.o
.endif
.if ${PHP_MODNAME} == "pdo_dblib"
.if defined(WITH_MSSQL)
LIB_DEPENDS+= sybdb.5:${PORTSDIR}/databases/freetds-msdblib
.else
LIB_DEPENDS+= ct.4:${PORTSDIR}/databases/freetds
.endif
.endif
.if ${PHP_MODNAME} == "snmp"
. if defined(WITH_SNMP4) || exists(${LOCALBASE}/lib/libsnmp.so.4)
LIB_DEPENDS+= snmp.4:${PORTSDIR}/net-mgmt/net-snmp4
. else
LIB_DEPENDS+= netsnmp.16:${PORTSDIR}/net-mgmt/net-snmp
. endif
.endif
.if ${PHP_MODNAME} == "sqlite"
. if defined(WITH_UTF8)
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