# New ports collection makefile for:	php5
# Date created:				Tue Feb 18 11:17:13 CET 2003
# Whom:					Alex Dupre <sysadmin@alexdupre.com>
#
# $FreeBSD: ports/lang/php5/Makefile,v 1.94 2006/01/31 08:36:02 ale Exp $
#

PORTNAME=	php5
PORTVERSION=	5.1.2
PORTREVISION?=	1
CATEGORIES?=	lang devel www
MASTER_SITES=	${MASTER_SITE_PHP:S,$,:release,} \
		http://downloads.php.net/ilia/:rc \
		http://downloads.php.net/jani/:rc
MASTER_SITE_SUBDIR=	distributions/:release
DISTNAME=	php-${PORTVERSION:S/.r/RC/}
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:release

MAINTAINER?=	ale@FreeBSD.org
COMMENT?=	PHP Scripting Language (Apache Module and CLI)

LATEST_LINK=	${PKGNAMEPREFIX}${PORTNAME}${PKGNAMESUFFIX}

USE_BZIP2=	yes
.if !defined(PKGNAMESUFFIX) || ${PKGNAMESUFFIX} == "-cgi" || ${PKGNAMESUFFIX} == "-cli"
GNU_CONFIGURE=	yes
USE_REINPLACE=	yes
USE_GETOPT_LONG=yes

CONFIGURE_ARGS=	--enable-versioning \
		--enable-memory-limit \
		--with-layout=GNU \
		--with-config-file-scan-dir=${PREFIX}/etc/php \
		--disable-all \
		--enable-libxml \
		--with-libxml-dir=${LOCALBASE} \
		--enable-reflection \
		--enable-spl

USE_GNOME=	libxml2

.if !defined(WITH_REGEX_TYPE) || ${WITH_REGEX_TYPE} == "php"
CONFIGURE_ARGS+=--with-regex=php
.else
.if ${WITH_REGEX_TYPE} == "system"
CONFIGURE_ARGS+=--with-regex=system
.else
.if ${WITH_REGEX_TYPE} == "apache"
CONFIGURE_ARGS+=--with-regex=apache
.endif
.endif
.endif

.if !defined(PKGNAMEPREFIX) && !defined(PKGNAMESUFFIX)
PHP_SAPI=	full
WITH_APACHE=	yes
.else
.if !defined(PKGNAMEPREFIX)
PHP_SAPI=	${PKGNAMESUFFIX:S/-//}
.else
PHP_SAPI=	${PKGNAMEPREFIX:S/_//}
WITH_APACHE=	yes
.endif
.endif

.if defined(WITH_APACHE)
PKGMESSAGE=	${PKGDIR}/pkg-message.mod
USE_APACHE=	1.3+
MODULENAME=	lib${PORTNAME}
SHORTMODNAME=	${PORTNAME}
.endif

.if ${PHP_SAPI} == "cgi"
OPTIONS=	REDIRECT "Enable force-cgi-redirect support" off \
		DISCARD "Enable discard-path support" off \
		FASTCGI "Enable fastcgi support" off \
		PATHINFO "Enable path-info-check support" on
.endif
OPTIONS+=	DEBUG "Enable debug" off \
		MULTIBYTE "Enable zend multibyte support" off \
		IPV6 "Enable ipv6 support" on

CONFLICTS?=	php5-cli-5* mod_php5-5* php5-cgi-5*
CONFLICTS+=	php4-4* php4-cli-4* mod_php4-4* php4-cgi-4*

.if ${PHP_SAPI} == "cgi" || ${PHP_SAPI} == "mod"
CONFIGURE_ARGS+=--disable-cli
.endif

MAN1=		php-config.1 phpize.1
.if ${PHP_SAPI} != "mod"
PLIST_SUB+=	CLICGI=""
.if ${PHP_SAPI} != "cgi"
MAN1+=		php.1
.endif
.else
PLIST_SUB+=	CLICGI="@comment "
.endif

.if defined(WITH_APACHE)
PLIST_SUB+=	APACHE=""
.else
PLIST_SUB+=	APACHE="@comment "
.endif

.if ${PHP_SAPI} == "cli"
CONFIGURE_ARGS+=--disable-cgi
.endif

.include <bsd.port.pre.mk>

CONFIGURE_ENV+=	ac_cv_pthreads_lib=${PTHREAD_LIBS} \
		ac_cv_pthreads_cflags=${PTHREAD_CFLAGS}

MAKE_ENV+=	LDFLAGS="${LDFLAGS}"

.if defined(WITH_APACHE)
.if ${APACHE_VERSION} > 13
CONFIGURE_ARGS+=--with-apxs2=${APXS}
.else
CONFIGURE_ARGS+=--with-apxs=${APXS}
.endif
.endif

.if defined(WITH_DEBUG)
CONFIGURE_ARGS+=--enable-debug
.endif

.if defined(WITH_MULTIBYTE)
CONFIGURE_ARGS+=--enable-zend-multibyte
.endif

.if ${OSVERSION} < 400014 || defined(WITHOUT_IPV6)
CONFIGURE_ARGS+=--disable-ipv6
.endif

.if ${PHP_SAPI} == "cgi"
.if defined(WITH_REDIRECT)
CONFIGURE_ARGS+=--enable-force-cgi-redirect
.endif
.if defined(WITH_DISCARD)
CONFIGURE_ARGS+=--enable-discard-path
.endif
.if defined(WITH_FASTCGI)
CONFIGURE_ARGS+=--enable-fastcgi
.endif
.if defined(WITHOUT_PATHINFO)
CONFIGURE_ARGS+=--disable-path-info-check
.endif
.endif

_PORTSDIR!=	${REALPATH} ${PORTSDIR}
PHP_PORT=	${.CURDIR:S|^${_PORTSDIR}||:S|^/||}

post-patch:
	@${TOUCH} ${WRKSRC}/ext/php_config.h
	@${REINPLACE_CMD} "s|^\(extension_dir\)|; \1|" ${WRKSRC}/php.ini-*

.if ${PHP_SAPI} == "full"
pre-configure:
	@${ECHO_CMD} ""
	@${ECHO_CMD} "You are building the Apache Module and the Command Line Interpreter of PHP."
	@${ECHO_CMD} ""
	@${ECHO_CMD} "Use port:"
	@${ECHO_CMD} "	lang/php5-cli		for Command Line Interpreter only"
	@${ECHO_CMD} "	www/php5-cgi		for Common Gateway Interface only"
	@${ECHO_CMD} "	www/mod_php5		for Apache Module only"
	@${ECHO_CMD} ""
.endif

post-build:
	@${ECHO_CMD} "PHP_VER=5" > ${WRKDIR}/php.conf
	@${ECHO_CMD} "PHP_VERSION=${PORTVERSION}" >> ${WRKDIR}/php.conf
	@${ECHO_CMD} "PHP_PORT=\$${PORTSDIR}/${PHP_PORT}" >> ${WRKDIR}/php.conf
	@${ECHO_CMD} "PHP_SAPI=${PHP_SAPI}" >> ${WRKDIR}/php.conf

post-install:
	@${INSTALL_DATA} ${WRKSRC}/php.ini-dist ${PREFIX}/etc
	@${INSTALL_DATA} ${WRKSRC}/php.ini-recommended ${PREFIX}/etc
	@${INSTALL_DATA} ${WRKDIR}/php.conf ${PREFIX}/etc
	@${TOUCH} ${PREFIX}/include/php/ext/php_config.h
.if defined(WITH_APACHE)
	@${CAT} ${PKGMESSAGE}
.endif

.else
.include "${MASTERDIR}/Makefile.ext"
.endif
.include <bsd.port.post.mk>
