summaryrefslogblamecommitdiff
path: root/lang/php5/Makefile.ext
blob: 0d70b753b2e8d2454f3c382a122f057fcfca441e (plain) (tree)
1
2
3
4
5
6
7
8
9
10




                                                           

                 
 

                                              


                                
                                                   
 
























                                                 
                                           









                                                  
                                                  









                                                     




                                              


                   





                             
                           




                                                 





                                                        


                                






                                                  
                                           



                                                               
                                                                 










                                           
                                              











                                             
                                                    

                                        





                                              


                                 
                                             
 
                   





                                        



                                






                                                         
                                                                          






                                                       
                          

      






                                                  
                                                



                                        
                             
                                                             














                                                           
                              


                   





                                   







                                                                                                






                                                     
                                             
 
                                              


                   



                              













                                                                 




                                                
                   


                                 

                                               




































                                                                                                



                                              
                                 
            






                          
                             
                   








                                         
                                                     

                                          



                                                         































                                                      
                                              














                                                                        





                                              
                         


                   










                                


                   


                                               
                                 
                                                  


























                                                    



                                              











                                              





                                              
                   

                   
 
                              
                               
                                                


                                             
                       

                         


                   

      






                                              



                                       
                       
                   












                                
                                       



                           





                                                 




                                                  



















                                            

      
                                



                                                               







                                                       

      
                                                           







                                                                                      



                                                             
                                                  


      



                                                                       
                                                        


















                                                         
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