Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 9 Jan 2019 07:49:25 +0000 (UTC)
From:      Torsten Zuehlsdorff <tz@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org
Subject:   svn commit: r489755 - in branches/2019Q1/lang/php73: . files
Message-ID:  <201901090749.x097nPGe061100@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tz
Date: Wed Jan  9 07:49:25 2019
New Revision: 489755
URL: https://svnweb.freebsd.org/changeset/ports/489755

Log:
  MFH: r489721
  
  lang/php73: Fix "Bus error (core dumped)" by disabling ifuncs
  
  PHP 7.3 uses ifuncs optimisations which generates a list of problems on FreeBSD:
  https://bugs.php.net/bug.php?id=77284
  https://bugs.php.net/bug.php?id=77279
  https://bugs.php.net/bug.php?id=77261
  
  Therefore ifuncs will be disabled in PHP 7.3.1. To make it usable until the release,
  we import the patch until then:
  https://github.com/php/php-src/commit/291589114aa9be899cf7d5d874c3b5bbdb35f336
  
  PR:		233024
  Submitted by:	Pascal Christen <pascal.christen@hostpoint.ch>
  
  Approved by:	ports-secteam (miwi)

Added:
  branches/2019Q1/lang/php73/files/patch-configure.ac
     - copied unchanged from r489721, head/lang/php73/files/patch-configure.ac
Modified:
  branches/2019Q1/lang/php73/Makefile
  branches/2019Q1/lang/php73/files/patch-acinclude.m4
Directory Properties:
  branches/2019Q1/   (props changed)

Modified: branches/2019Q1/lang/php73/Makefile
==============================================================================
--- branches/2019Q1/lang/php73/Makefile	Wed Jan  9 07:25:55 2019	(r489754)
+++ branches/2019Q1/lang/php73/Makefile	Wed Jan  9 07:49:25 2019	(r489755)
@@ -2,7 +2,7 @@
 
 PORTNAME=	php73
 DISTVERSION=	7.3.0
-PORTREVISION?=	0
+PORTREVISION?=	1
 CATEGORIES?=	lang devel www
 MASTER_SITES=   PHP/distributions
 DISTNAME=	php-${DISTVERSION}

Modified: branches/2019Q1/lang/php73/files/patch-acinclude.m4
==============================================================================
--- branches/2019Q1/lang/php73/files/patch-acinclude.m4	Wed Jan  9 07:25:55 2019	(r489754)
+++ branches/2019Q1/lang/php73/files/patch-acinclude.m4	Wed Jan  9 07:49:25 2019	(r489755)
@@ -1,4 +1,4 @@
---- acinclude.m4.orig	2018-08-14 11:39:24 UTC
+--- acinclude.m4.orig	2018-12-04 16:12:30 UTC
 +++ acinclude.m4
 @@ -971,15 +971,9 @@ dnl ------------------------------------
    if test "$3" != "shared" && test "$3" != "yes" && test "$4" = "cli"; then
@@ -32,7 +32,7 @@
    dnl Some systems require that we link $2 to $1 when building
  ])
  
-@@ -2934,8 +2922,7 @@ dnl in GNU Make which causes the .d file
+@@ -2970,8 +2958,7 @@ dnl in GNU Make which causes the .d file
  $abs_srcdir/$ac_provsrc:;
  
  $ac_bdir[$]ac_hdrobj: $abs_srcdir/$ac_provsrc
@@ -42,7 +42,7 @@
  \$(PHP_DTRACE_OBJS): $ac_bdir[$]ac_hdrobj
  
  EOF
-@@ -2954,12 +2941,12 @@ dnl Always attempt to create both PIC an
+@@ -2990,12 +2977,12 @@ dnl Always attempt to create both PIC an
  $ac_bdir[$]ac_provsrc.lo: \$(PHP_DTRACE_OBJS)
  	echo "[#] Generated by Makefile for libtool" > \$[]@
  	@test -d "$dtrace_lib_dir" || mkdir $dtrace_lib_dir
@@ -57,7 +57,7 @@
  	  echo "non_pic_object=[']$dtrace_prov_name[']" >> \$[]@ [;\\]
  	else [\\]
  	  echo "non_pic_object='none'" >> \$[]@ [;\\]
-@@ -2971,7 +2958,7 @@ EOF
+@@ -3007,7 +2994,7 @@ EOF
    *)
  cat>>Makefile.objects<<EOF
  $ac_bdir[$]ac_provsrc.o: \$(PHP_DTRACE_OBJS)

Copied: branches/2019Q1/lang/php73/files/patch-configure.ac (from r489721, head/lang/php73/files/patch-configure.ac)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/2019Q1/lang/php73/files/patch-configure.ac	Wed Jan  9 07:49:25 2019	(r489755, copy of r489721, head/lang/php73/files/patch-configure.ac)
@@ -0,0 +1,14 @@
+--- configure.ac.orig	2019-01-08 12:14:44 UTC
++++ configure.ac
+@@ -579,7 +579,10 @@ PHP_SOCKADDR_CHECKS
+ 
+ dnl Checks for GCC function attributes on all systems except ones without glibc
+ dnl Fix for these systems is already included in GCC 7, but not on GCC 6
+-AS_CASE([$host_alias], [*-*-*android*|*-*-*uclibc*|*-*-*musl*], [true], [
++dnl
++dnl At least some versions of FreeBSD seem to have buggy ifunc support, see
++dnl bug #77284. Conservatively don't use ifuncs on FreeBSD.
++AS_CASE([$host_alias], [*-*-*android*|*-*-*uclibc*|*-*-*musl*|*freebsd*], [true], [
+   AX_GCC_FUNC_ATTRIBUTE([ifunc])
+   AX_GCC_FUNC_ATTRIBUTE([target])
+ ])



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201901090749.x097nPGe061100>