aboutsummaryrefslogblamecommitdiff
path: root/lang/php70/Makefile.ext
blob: 871e1ed1091b9c8b8fcf58c357eb2e784a4f7f4e (plain) (tree)

































                                                           
                                   




















































                                                        

                                                


























                                                       
                                  


































                                                                             
                                       





























                                                                

                                               











                                          
                                             









































                                                   


                                
                                             





                                                     









                                       



































                                              
                                            













                                                         
                                              


























                                                 
                                               























                                              
                                          


















                                             
                                       






























































                                                
                                          























                                              
                                         



                                        
                                         



                                        
                                                         












                                         
                                    














                                           
                                           






                                           
                                                     
            
                                              




                                 
                                           










                                                           



                   
                                 

                                        






                                               






                                                              
                                             
            
                                          


             









                                                         
COMMENT=	The ${PHP_MODNAME} shared extension for php

USE_PHP=	yes
USE_PHPEXT=	yes
PHP_MODNAME=	${PKGNAMESUFFIX:S/-//}
PHP_DEFAULT=	7.0
IGNORE_WITH_PHP=	55 56

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+=	libcurl.so: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=	libfreetype.so:print/freetype2 \
		libpng.so:graphics/png
USES+=		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+=	libgmp.so: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:translit
.endif

.if ${PHP_MODNAME} == "imap"
OPTIONS_DEFINE=	PANDA
PANDA_DESC=	Uses the forked panda-cclient instead of the original cclient

CONFIGURE_ARGS+=--with-imap=${LOCALBASE} \
		--with-pcre-dir=${LOCALBASE} \
		--with-imap-ssl=${OPENSSLBASE}

LDFLAGS+=	-L${OPENSSLLIB} -lcrypto -lssl
USE_OPENSSL=	yes
.endif

.if ${PHP_MODNAME} == "interbase"
CONFIGURE_ARGS+=--with-interbase=${LOCALBASE}

USES+=	firebird
.endif

.if ${PHP_MODNAME} == "intl"
CONFIGURE_ARGS+=--with-intl=${LOCALBASE}
LIB_DEPENDS=	libicui18n.so:devel/icu
.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=${LOCALBASE}
. 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+=	libltdl.so:devel/libltdl \
		libmcrypt.so:security/libmcrypt

CONFIGURE_ARGS+=--with-mcrypt=${LOCALBASE}
.endif

.if ${PHP_MODNAME} == "mysqli"
OPTIONS_DEFINE=	MYSQLND
OPTIONS_DEFAULT=MYSQLND

MYSQLND_DESC=	Use MySQL Native Driver
.endif

.if ${PHP_MODNAME} == "odbc"
LIB_DEPENDS+=	libodbc.so:databases/unixODBC

CONFIGURE_ARGS+=--enable-odbc \
		--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} == "opcache"
CONFIGURE_ARGS+=--enable-opcache
USES+=	localbase
.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}

USES+=	firebird
USE_PHP=	pdo
USE_PHP_BUILD=	yes
.endif

.if ${PHP_MODNAME} == "pdo_odbc"
LIB_DEPENDS+=	libodbc.so:databases/unixODBC
CONFIGURE_ARGS+=--with-pdo-odbc=unixODBC,${LOCALBASE}

USE_PHP=	pdo
USE_PHP_BUILD=	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_pgsql"
USES+=		pgsql

CONFIGURE_ARGS+=--with-pdo-pgsql=${LOCALBASE}

USE_PHP=	pdo
USE_PHP_BUILD=	yes
.endif

.if ${PHP_MODNAME} == "pdo_sqlite"
USES+=		sqlite
CONFIGURE_ARGS+=--with-pdo-sqlite=${LOCALBASE}

USE_PHP=	pdo
USE_PHP_BUILD=	yes
.endif

.if ${PHP_MODNAME} == "pgsql"
USES+=		pgsql

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+=	libaspell.so: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
USES+=		readline
.endif

.if ${PHP_MODNAME} == "recode"
LIB_DEPENDS+=	librecode.so: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-pcre-dir=${LOCALBASE} \
		--with-libxml-dir=${LOCALBASE}

USES+=		pkgconfig
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+=	libnetsnmp.so: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"
USES+=		sqlite
CONFIGURE_ARGS+=--with-sqlite3=${LOCALBASE}
.endif

.if ${PHP_MODNAME} == "sybase_ct"
LIB_DEPENDS+=	libct.so: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+=	libtidy.so: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:translit
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"
LIB_DEPENDS+=	libzip.so:archivers/libzip

CONFIGURE_ARGS+=--enable-zip \
		--with-zlib-dir=/usr \
		--with-pcre-dir=${LOCALBASE} \
		--with-libzip=${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+=	libgdbm.so:databases/gdbm

CONFIGURE_ARGS+=--with-gdbm=${LOCALBASE}
.	endif
.	if ${PORT_OPTIONS:MQDBM}
LIB_DEPENDS+=	libqdbm.so:databases/qdbm

CONFIGURE_ARGS+=--with-qdbm=${LOCALBASE}
.	endif
.	if ${PORT_OPTIONS:MTOKYO}
LIB_DEPENDS+=	libtokyocabinet.so: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+=	libt1.so: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+=	libvpx.so:multimedia/libvpx

CONFIGURE_ARGS+=--with-vpx-dir=${LOCALBASE}
.	endif
.endif

.if ${PHP_MODNAME} == "imap"
.	if ${PORT_OPTIONS:MPANDA}
LIB_DEPENDS+=	libc-client4.so.10:mail/panda-cclient
.	else
LIB_DEPENDS+=	libc-client4.so.9:mail/cclient
.	endif
.endif

.if ${PHP_MODNAME} == "mbstring"
.	if ${PORT_OPTIONS:MREGEX}
LIB_DEPENDS+=	libonig.so:devel/oniguruma5
CONFIGURE_ARGS+=--with-onig=${LOCALBASE}
.	else
CONFIGURE_ARGS+=--disable-mbregex
.	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} == "pdo_mysql"
.	if ${PORT_OPTIONS:MMYSQLND}
CONFIGURE_ARGS+=--with-pdo-mysql=mysqlnd
.	else
CONFIGURE_ARGS+=--with-pdo-mysql=${LOCALBASE} \
		--with-zlib-dir=/usr
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} == "pdo_dblib"
.	if ${PORT_OPTIONS:MMSSQL}
LIB_DEPENDS+=	libsybdb.so:databases/freetds
.	else
LIB_DEPENDS+=	libct.so:databases/freetds
.	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