[oe] [PATCH 2/4] php: disable non-deterministic valgrind
Khem Raj
raj.khem at gmail.com
Wed Jul 4 13:08:05 UTC 2018
On Tue, Jul 3, 2018 at 2:42 AM Ross Burton <ross.burton at intel.com> wrote:
>
> Valgrind support in PHP looks on the host for Valgrind headers, backport a patch
> from upstream so that Valgrind support is disabled by default.
>
> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
> meta-oe/recipes-devtools/php/php.inc | 1 +
> meta-oe/recipes-devtools/php/php/valgrind.patch | 115 ++++++++++++++++++++++++
> 2 files changed, 116 insertions(+)
> create mode 100644 meta-oe/recipes-devtools/php/php/valgrind.patch
>
Fails to apply
Applying patch valgrind.patch
patching file NEWS
Hunk #1 succeeded at 133 with fuzz 2 (offset 131 lines).
patching file acinclude.m4
Hunk #1 FAILED at 3249.
1 out of 1 hunk FAILED -- rejects in file acinclude.m4
patching file configure.ac
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 753.
1 out of 1 hunk FAILED -- rejects in file configure.ac
Patch valgrind.patch does not apply (enforce with -f)
> diff --git a/meta-oe/recipes-devtools/php/php.inc b/meta-oe/recipes-devtools/php/php.inc
> index 066b97cd26..f262d60d15 100644
> --- a/meta-oe/recipes-devtools/php/php.inc
> +++ b/meta-oe/recipes-devtools/php/php.inc
> @@ -24,6 +24,7 @@ SRC_URI_append_class-target = " \
> file://0001-acinclude.m4-don-t-unset-cache-variables.patch \
> file://70_mod_php${PHP_MAJOR_VERSION}.conf \
> file://php-fpm.service \
> + file://valgrind.patch \
> "
> S = "${WORKDIR}/php-${PV}"
>
> diff --git a/meta-oe/recipes-devtools/php/php/valgrind.patch b/meta-oe/recipes-devtools/php/php/valgrind.patch
> new file mode 100644
> index 0000000000..c3e232ba23
> --- /dev/null
> +++ b/meta-oe/recipes-devtools/php/php/valgrind.patch
> @@ -0,0 +1,115 @@
> +Upstream-Status: Backport
> +Signed-off-by: Ross Burton <ross.burton at intel.com>
> +
> +From 25ba60b1479eb332a7388732f3ee5467000fbe73 Mon Sep 17 00:00:00 2001
> +From: Michael Heimpold <mhei at heimpold.de>
> +Date: Wed, 14 Feb 2018 14:46:17 +0100
> +Subject: [PATCH] Fixed bug #75722: Rework valgrind detection
> +
> +As described in bug report #75722, the configure script (acinclude.m4)
> +currently searches for the valgrind header file and enables valgrind
> +support if found.
> +
> +When cross-compiling the searched paths are invalid for the target
> +platform because they belong to the host system. At the moment, there is
> +no way to tell the build system a dedicated path where to look for the
> +header file.
> +
> +This leads to the issue, that when cross-compiling eg. for ARMv5 platform,
> +that valgrind header file is detected - e.g. because host system is amd64 -
> +and support is enabled - but target platform will never support valgrind
> +(valgrind requires e.g. at least ARMv7).
> +
> +This change reworks the detection so that user could manually opt-in
> +valgrind support and optionally specify a directory where the build system
> +should look for the header file using the --with-valgrind option.
> +---
> + NEWS | 4 ++++
> + acinclude.m4 | 20 --------------------
> + configure.ac | 30 +++++++++++++++++++++++++++++-
> + 3 files changed, 33 insertions(+), 21 deletions(-)
> +
> +diff --git a/NEWS b/NEWS
> +index 1faf13831ebd..5d65fd083357 100644
> +--- a/NEWS
> ++++ b/NEWS
> +@@ -2,6 +2,10 @@ PHP NEWS
> + |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
> + ?? ??? 2018, PHP 7.2.5
> +
> ++- Core:
> ++ . Fixed bug #75722 (Convert valgrind detection to configure option).
> ++ (Michael Heimpold)
> ++
> + - Mbstring:
> + . Fixed bug #75944 (Wrong cp1251 detection). (dmk001)
> + . Fixed bug #76113 (mbstring does not build with Oniguruma 6.8.1).
> +diff --git a/acinclude.m4 b/acinclude.m4
> +index d42d70853515..eb06cb7e363f 100644
> +--- a/acinclude.m4
> ++++ b/acinclude.m4
> +@@ -3249,23 +3249,3 @@ AC_DEFUN([PHP_CHECK_BUILTIN_SSUBLL_OVERFLOW], [
> +
> + dnl Load the AX_CHECK_COMPILE_FLAG macro from the autoconf archive.
> + m4_include([build/ax_check_compile_flag.m4])
> +-
> +-dnl PHP_CHECK_VALGRIND
> +-AC_DEFUN([PHP_CHECK_VALGRIND], [
> +- AC_MSG_CHECKING([for valgrind])
> +-
> +- SEARCH_PATH="/usr/local /usr"
> +- SEARCH_FOR="/include/valgrind/valgrind.h"
> +- for i in $SEARCH_PATH ; do
> +- if test -r $i/$SEARCH_FOR; then
> +- VALGRIND_DIR=$i
> +- fi
> +- done
> +-
> +- if test -z "$VALGRIND_DIR"; then
> +- AC_MSG_RESULT([not found])
> +- else
> +- AC_MSG_RESULT(found in $VALGRIND_DIR)
> +- AC_DEFINE(HAVE_VALGRIND, 1, [ ])
> +- fi
> +-])
> +diff --git a/configure.ac b/configure.ac
> +index 05f94f08a9c8..c5d9be978bda 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -753,7 +753,35 @@ if test "x$php_crypt_r" = "x1"; then
> + PHP_CRYPT_R_STYLE
> + fi
> +
> +-PHP_CHECK_VALGRIND
> ++dnl Check valgrind support
> ++PHP_ARG_WITH(valgrind, [whether to enable valgrind support],
> ++[ --with-valgrind=DIR Enable valgrind support], yes, no)
> ++
> ++if test "$PHP_VALGRIND" != "no"; then
> ++
> ++ AC_MSG_CHECKING([for valgrind header])
> ++
> ++ if test "$PHP_VALGRIND" = "yes"; then
> ++ SEARCH_PATH="/usr/local /usr"
> ++ else
> ++ SEARCH_PATH="$PHP_VALGRIND"
> ++ fi
> ++
> ++ SEARCH_FOR="/include/valgrind/valgrind.h"
> ++ for i in $SEARCH_PATH ; do
> ++ if test -r $i/$SEARCH_FOR; then
> ++ VALGRIND_DIR=$i
> ++ fi
> ++ done
> ++
> ++ if test -z "$VALGRIND_DIR"; then
> ++ AC_MSG_RESULT([not found])
> ++ else
> ++ AC_MSG_RESULT(found in $VALGRIND_DIR)
> ++ AC_DEFINE(HAVE_VALGRIND, 1, [ ])
> ++ fi
> ++
> ++fi
> +
> + dnl General settings.
> + dnl -------------------------------------------------------------------------
> \ No newline at end of file
> --
> 2.11.0
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
More information about the Openembedded-devel
mailing list