2010-03-21 12:06:05 +01:00
|
|
|
# $NetBSD: ext.mk,v 1.21 2010/03/21 11:06:05 jdolecek Exp $
|
2004-11-06 19:24:40 +01:00
|
|
|
#
|
|
|
|
# PHP extension package framework, for both PECL and bundled PHP extensions.
|
|
|
|
#
|
|
|
|
# Just include this file, define MODNAME, define PKGREVISION if necessary,
|
|
|
|
# add dependencies, and add the appropriate --with-configure-arg, then include
|
|
|
|
# bsd.pkg.mk.
|
2004-10-31 20:30:29 +01:00
|
|
|
|
|
|
|
.if !defined(PHPEXT_MK)
|
|
|
|
PHPEXT_MK= defined
|
|
|
|
|
2007-09-20 11:32:15 +02:00
|
|
|
_VARGROUPS+= phpext
|
|
|
|
_USER_VARS.phpext= # none
|
2007-10-11 10:51:11 +02:00
|
|
|
_PKG_VARS.phpext= MODNAME PECL_VERSION PKGMODNAME MODULESDIR \
|
|
|
|
USE_PHP_EXT_PATCHES
|
2007-09-20 11:32:15 +02:00
|
|
|
_SYS_VARS.phpext= DISTINFO_FILE PATCHDIR
|
|
|
|
|
2005-10-04 18:50:50 +02:00
|
|
|
.if defined(PECL_VERSION)
|
|
|
|
HOMEPAGE?= http://pecl.php.net/package/${MODNAME}
|
|
|
|
.endif
|
|
|
|
|
2004-10-31 20:30:29 +01:00
|
|
|
.include "../../lang/php/phpversion.mk"
|
|
|
|
|
2004-11-06 19:24:40 +01:00
|
|
|
.include "${PHPPKGSRCDIR}/Makefile.common"
|
|
|
|
|
|
|
|
PKGMODNAME?= ${MODNAME:S/-/_/}
|
|
|
|
MODULESDIR?= ${WRKSRC}/modules
|
|
|
|
PLIST_SUBST+= MODNAME=${PKGMODNAME}
|
|
|
|
|
|
|
|
.if !defined(PECL_VERSION)
|
|
|
|
# bundled extension
|
2006-06-02 20:27:54 +02:00
|
|
|
PKGNAME?= ${PHP_PKG_PREFIX}-${MODNAME}-${PHP_BASE_VERS}
|
2004-11-06 19:24:40 +01:00
|
|
|
EXTRACT_ELEMENTS?= ${DISTNAME}/ext/${PKGMODNAME}
|
|
|
|
WRKSRC?= ${WRKDIR}/${EXTRACT_ELEMENTS}
|
2004-11-16 16:33:12 +01:00
|
|
|
DISTINFO_FILE= ${.CURDIR}/${PHPPKGSRCDIR}/distinfo
|
2004-11-06 19:24:40 +01:00
|
|
|
.else
|
|
|
|
# PECL extension
|
2006-06-02 20:27:54 +02:00
|
|
|
PKGNAME?= ${PHP_PKG_PREFIX}-${MODNAME}-${PHP_BASE_VERS}.${PECL_VERSION}
|
2005-06-12 17:29:48 +02:00
|
|
|
MASTER_SITES?= http://pecl.php.net/get/
|
2006-06-01 19:44:21 +02:00
|
|
|
PECL_DISTNAME?= ${MODNAME}-${PECL_VERSION}
|
|
|
|
DISTNAME= ${PECL_DISTNAME}
|
2004-11-27 13:36:35 +01:00
|
|
|
DIST_SUBDIR= php-${MODNAME}
|
2005-06-12 17:29:48 +02:00
|
|
|
EXTRACT_SUFX?= .tgz
|
2004-11-06 19:24:40 +01:00
|
|
|
.endif
|
|
|
|
|
|
|
|
PHPIZE?= ${BUILDLINK_PREFIX.php}/bin/phpize
|
|
|
|
PHP_CONFIG?= ${BUILDLINK_PREFIX.php}/bin/php-config
|
|
|
|
|
|
|
|
GNU_CONFIGURE= YES
|
|
|
|
CONFIGURE_ARGS+= --with-php-config=${PHP_CONFIG}
|
|
|
|
|
|
|
|
USE_CONFIG_WRAPPER= YES
|
|
|
|
USE_LIBTOOL= YES
|
2010-03-21 12:06:05 +01:00
|
|
|
LIBTOOL_OVERRIDE= YES
|
2005-06-01 22:07:59 +02:00
|
|
|
USE_TOOLS+= automake
|
2004-11-06 19:24:40 +01:00
|
|
|
|
|
|
|
# Ensure we export symbols in the linked shared object.
|
|
|
|
LDFLAGS+= ${EXPORT_SYMBOLS_LDFLAGS}
|
|
|
|
MAKE_ENV+= EXPORT_SYMBOLS_LDFLAGS="${EXPORT_SYMBOLS_LDFLAGS}"
|
|
|
|
|
2004-12-12 10:13:56 +01:00
|
|
|
PLIST_SRC+= ${.CURDIR}/../../lang/php/PLIST.module
|
2004-11-06 19:24:40 +01:00
|
|
|
MESSAGE_SRC= ${.CURDIR}/../../lang/php/MESSAGE.module
|
|
|
|
MESSAGE_SUBST+= MODNAME=${PKGMODNAME}
|
|
|
|
MESSAGE_SUBST+= PHP_EXTENSION_DIR=${PHP_EXTENSION_DIR}
|
|
|
|
|
2005-12-03 19:52:54 +01:00
|
|
|
# Also include extension-specific message
|
|
|
|
.if exists(${.CURDIR}/MESSAGE)
|
|
|
|
MESSAGE_SRC+= ${.CURDIR}/MESSAGE
|
|
|
|
.endif
|
|
|
|
|
2007-09-07 15:26:20 +02:00
|
|
|
.if ${OBJECT_FMT} == "SOM"
|
|
|
|
SHLIB_SUFFIX= sl
|
|
|
|
.else
|
|
|
|
SHLIB_SUFFIX= so
|
|
|
|
.endif
|
|
|
|
|
2004-11-06 19:24:40 +01:00
|
|
|
pre-configure: phpize-module
|
|
|
|
|
|
|
|
phpize-module:
|
|
|
|
@cookie=${WRKDIR}/.phpize_module_done; \
|
|
|
|
if [ ! -f $${cookie} ]; then \
|
|
|
|
cd ${WRKSRC} && \
|
2005-06-01 22:07:59 +02:00
|
|
|
${SETENV} \
|
|
|
|
AUTOCONF=${TOOLS_DIR:Q}/bin/autoconf \
|
|
|
|
AUTOHEADER=${TOOLS_DIR:Q}/bin/autoheader \
|
|
|
|
ACLOCAL=${TOOLS_DIR:Q}/bin/aclocal \
|
|
|
|
LIBTOOLIZE=${LOCALBASE:Q}/bin/libtoolize \
|
2004-11-06 19:24:40 +01:00
|
|
|
${PHPIZE} && \
|
|
|
|
${TOUCH} ${TOUCH_FLAGS} $${cookie}; \
|
|
|
|
fi
|
|
|
|
|
|
|
|
do-install: do-module-install
|
|
|
|
|
|
|
|
do-module-install:
|
2007-06-11 19:59:23 +02:00
|
|
|
${INSTALL_DATA_DIR} ${DESTDIR:Q}${PREFIX:Q}/${PHP_EXTENSION_DIR}
|
2007-09-07 15:26:20 +02:00
|
|
|
${INSTALL_DATA} ${MODULESDIR}/${PKGMODNAME}.${SHLIB_SUFFIX} \
|
2007-06-11 19:59:23 +02:00
|
|
|
${DESTDIR:Q}${PREFIX:Q}/${PHP_EXTENSION_DIR}
|
2004-11-06 19:24:40 +01:00
|
|
|
|
|
|
|
.if defined(USE_PHP_EXT_PATCHES)
|
|
|
|
PATCHDIR= ${.CURDIR}/${PHPPKGSRCDIR}/patches
|
|
|
|
do-patch:
|
2005-12-03 14:32:42 +01:00
|
|
|
${_PKG_SILENT}${_PKG_DEBUG} \
|
2005-12-03 14:16:36 +01:00
|
|
|
cd ${WRKSRC}; \
|
2004-11-06 19:24:40 +01:00
|
|
|
for p in `${EGREP} -l '^\+\+\+ ext/${MODNAME}/' ${PATCHDIR}/patch-*`;do\
|
2005-12-03 14:16:36 +01:00
|
|
|
${SED} -e 's,^+++ ext/${MODNAME}/,+++ ,' $$p | ${PATCH} ${PATCH_ARGS}; \
|
2006-07-10 22:53:43 +02:00
|
|
|
done || ${TRUE}
|
2004-10-31 20:30:29 +01:00
|
|
|
.endif
|
|
|
|
|
2004-11-06 19:24:40 +01:00
|
|
|
.include "${PHPPKGSRCDIR}/buildlink3.mk"
|
|
|
|
|
2004-10-31 20:30:29 +01:00
|
|
|
.endif # PHPEXT_MK
|