From 4f1542782c66ccd47e096ea00ddf9f1451f964ba Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sat, 23 May 2015 14:57:56 +0200 Subject: [PATCH] package/php: fix build without threads and pcre The pcre library bundled in php is not configurable through the usual --enable/disable options, but wants to be thread-safe by default, so it wants to use pthreads (uncludes pthread.h and uses pthread_* functions). So, just override the default configuration to explicitly require the bundled pcre library be single-threaded when we have no thread and are not using the external pcre library. Fixes: http://autobuild.buildroot.org/results/f50/f50f4e569466ad74e49a3eac9ea2e6cfc4dd30e3/ Signed-off-by: "Yann E. MORIN" Cc: Floris Bos Cc: Thomas Petazzoni Cc: Peter Korsgaard Signed-off-by: Peter Korsgaard --- package/php/php.mk | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/package/php/php.mk b/package/php/php.mk index 6492747d7..448b7ef64 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -213,6 +213,13 @@ endif ifeq ($(BR2_PACKAGE_PCRE),y) PHP_CONF_OPTS += --with-pcre-regex=$(STAGING_DIR)/usr PHP_DEPENDENCIES += pcre +else +# The bundled pcre library is not configurable through ./configure options, +# and by default is configured to be thread-safe, so it wants pthreads. So +# we must explicitly tell it when we don't have threads. +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) +PHP_CFLAGS += -DSLJIT_SINGLE_THREADED=1 +endif endif ifeq ($(BR2_PACKAGE_PHP_EXT_CURL),y)