Seems to make a previously segfaulting netbsd-8/i386's build not segfault. ap-php runs PHP's configure and builds some of its code, so it needs the same flag. Now we can stop requiring an arbitrary GCC version. The test case in the GCC bugzilla fails on all GCC versions I tested, but magically some versions of GCC manage to build a working PHP.
71 lines
2.1 KiB
Makefile
71 lines
2.1 KiB
Makefile
# $NetBSD: Makefile,v 1.16 2018/07/31 01:17:56 maya Exp $
|
|
|
|
#
|
|
# We can't omit PKGNAME here to handle PKG_OPTIONS.
|
|
#
|
|
PKGNAME= php-${PHP_VERSION:S/RC/rc/}
|
|
CATEGORIES= lang
|
|
|
|
HOMEPAGE= http://www.php.net/
|
|
COMMENT= PHP Hypertext Preprocessor version 7.1
|
|
LICENSE= php
|
|
|
|
TEST_TARGET= test
|
|
|
|
USE_TOOLS+= gmake lex pkg-config
|
|
LIBTOOL_OVERRIDE= # empty
|
|
PHP_CHECK_INSTALLED= No
|
|
|
|
PHP_VERSIONS_ACCEPTED= 71
|
|
|
|
.include "Makefile.php"
|
|
|
|
CGIDIR= ${PREFIX}/libexec/cgi-bin
|
|
EGDIR= ${PREFIX}/share/examples/php
|
|
MESSAGE_SUBST+= CGIDIR=${CGIDIR}
|
|
|
|
CONFIGURE_ENV+= lt_cv_path_SED=${SED:Q}
|
|
MAKE_ENV+= INSTALL_ROOT=${DESTDIR}
|
|
|
|
CONF_FILES= ${EGDIR}/php.ini-production ${PKG_SYSCONFDIR}/php.ini
|
|
PLIST_SUBST+= PHPEXTDIR="${PHP_EXTENSION_DIR}"
|
|
|
|
SUBST_CLASSES+= path
|
|
SUBST_MESSAGE.path= Fixing common paths.
|
|
SUBST_STAGE.path= pre-configure
|
|
SUBST_FILES.path= ext/phar/phar/phar.php
|
|
SUBST_FILES.path+= php.ini-development php.ini-production run-tests.php
|
|
SUBST_FILES.path+= sapi/cgi/Makefile.frag
|
|
SUBST_SED.path= -e 's,@CGIDIR@,${CGIDIR},g'
|
|
SUBST_SED.path+= -e 's,@PREFIX@,${PREFIX},g'
|
|
|
|
INSTALLATION_DIRS+= ${CGIDIR} ${PHP_EXTENSION_DIR} ${EGDIR} share/php
|
|
|
|
# segfault generating phar.phar for i386 & SPARC
|
|
# revisit this if builtin PCRE is updated beyond PCRE1 8.38
|
|
# https://bugs.php.net/bug.php?id=73880
|
|
.if ${MACHINE_ARCH} != "x86_64"
|
|
CONFIGURE_ARGS+= --without-pcre-jit
|
|
.endif
|
|
|
|
# Make sure modules can link correctly
|
|
.if ${OPSYS} == "Darwin"
|
|
INSTALL_UNSTRIPPED= yes
|
|
.endif
|
|
|
|
# Darwin < 9 (Mac OS X < 10.5 "Leopard") doesn't have gethostuuid(2)
|
|
# and lacks the zone memory allocator
|
|
.if !empty(MACHINE_PLATFORM:MDarwin-[0-8].*-*)
|
|
CFLAGS+= -DSQLITE_ENABLE_LOCKING_STYLE=0 -DSQLITE_WITHOUT_ZONEMALLOC
|
|
.endif
|
|
|
|
post-install:
|
|
${INSTALL_PROGRAM} ${WRKSRC}/sapi/cli/php ${DESTDIR}${PREFIX}/bin/php
|
|
${INSTALL_DATA} ${WRKSRC}/sapi/cli/php.1 \
|
|
${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/php.1
|
|
${INSTALL_PROGRAM} ${WRKSRC}/sapi/cgi/php-cgi ${DESTDIR}${CGIDIR}/php
|
|
cd ${WRKSRC}; ${INSTALL_DATA} php.ini-development php.ini-production \
|
|
${DESTDIR}${EGDIR}
|
|
${INSTALL_DATA} ${WRKSRC}/php.gif ${DESTDIR}${PREFIX}/share/php
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|