php8: fix cross-compiling for x86_64 14658/head
authorMichael Heimpold <mhei@heimpold.de>
Thu, 4 Feb 2021 22:17:17 +0000 (23:17 +0100)
committerMichael Heimpold <mhei@heimpold.de>
Thu, 4 Feb 2021 22:47:52 +0000 (23:47 +0100)
The build process uses a minilua helper for code generation
which must not be compiled with target cross-compiler but
the host compiler.

This error was spotted by buildbots:
ext/opcache/minilua /builder/shared-workdir/build/sdk/build_dir/
 target-x86_64_musl/php-8.0.1/ext/opcache/jit/dynasm/dynasm.lua
 -D X64=1 -o ext/opcache/jit/zend_jit_x86.c /builder/shared-workdir
 /build/sdk/build_dir/target-x86_64_musl/php-8.0.1/ext/opcache/jit/zend_jit_x86.dasc
/bin/bash: ext/opcache/minilua: No such file or directory
Makefile:406: recipe for target 'ext/opcache/jit/zend_jit_x86.c' failed
make[4]: *** [ext/opcache/jit/zend_jit_x86.c] Error 127

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
lang/php8/Makefile
lang/php8/patches/1010-Fix-opcache-jit-minilua-compiling.patch [new file with mode: 0644]

index 3c5048f42346312f4ad1195dbdb9d0500129d7e8..9076ff3e7eb3b21a2990396524b76bcd0944ce08 100644 (file)
@@ -466,6 +466,9 @@ CONFIGURE_VARS+= \
        ac_cv_u8t_decompose=yes \
        ac_cv_have_pcre2_jit=no
 
+MAKE_VARS+= \
+       HOSTCC="$(HOSTCC)"
+
 define Package/php8/conffiles
 /etc/php.ini
 /etc/php8/
diff --git a/lang/php8/patches/1010-Fix-opcache-jit-minilua-compiling.patch b/lang/php8/patches/1010-Fix-opcache-jit-minilua-compiling.patch
new file mode 100644 (file)
index 0000000..cbabf91
--- /dev/null
@@ -0,0 +1,25 @@
+From 73ea1d44c1e6b063bfa02e12919ec8a9de3709d8 Mon Sep 17 00:00:00 2001
+From: Michael Heimpold <mhei@heimpold.de>
+Date: Wed, 3 Feb 2021 22:51:34 +0100
+Subject: [PATCH] Fix opcache jit minilua compiling
+
+Signed-off-by: Michael Heimpold <mhei@heimpold.de>
+---
+ ext/opcache/jit/Makefile.frag | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ext/opcache/jit/Makefile.frag b/ext/opcache/jit/Makefile.frag
+index d4f97de..7421897 100644
+--- a/ext/opcache/jit/Makefile.frag
++++ b/ext/opcache/jit/Makefile.frag
+@@ -1,6 +1,6 @@
+ $(builddir)/minilua: $(srcdir)/jit/dynasm/minilua.c
+-      $(CC) $(srcdir)/jit/dynasm/minilua.c -lm -o $@
++      $(HOSTCC) $(srcdir)/jit/dynasm/minilua.c -lm -o $@
+ $(builddir)/jit/zend_jit_x86.c: $(srcdir)/jit/zend_jit_x86.dasc $(srcdir)/jit/dynasm/*.lua $(builddir)/minilua
+       $(builddir)/minilua $(srcdir)/jit/dynasm/dynasm.lua  $(DASM_FLAGS) -o $@ $(srcdir)/jit/zend_jit_x86.dasc
+-- 
+2.17.1
+