Skip to content

Commit 0205cc5

Browse files
committed
Fixed various php compilation problems:
- Modified php building for buggy old toolchains php/php-src#12774 https://sourceware.org/bugzilla/show_bug.cgi?id=23169 - Patched php configure script for ubuntu-16 old gcc version 5 The check in php/build/php.m4 is not sufficient to guard for gcc 5 on ubuntu 16 Ticket: ENT-12140 Changelog: none.
1 parent aa0f58a commit 0205cc5

File tree

3 files changed

+26
-2
lines changed

3 files changed

+26
-2
lines changed

deps-packaging/php/cfbuild-php.spec

+2-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ fi
3434
--with-iconv \
3535
--with-zlib=%{prefix} \
3636
--with-libmbfl=%{prefix} \
37-
--enable-mbstring \
37+
--enable-mbstring=shared,%{prefix} \
3838
--enable-sockets \
3939
--disable-mbregex \
4040
--without-fpm-user \
@@ -125,6 +125,7 @@ sed -ri 's/^(\s|;)phar.readonly = On/phar.readonly = Off/' ${RPM_BUILD_ROOT}%{pr
125125

126126
echo "extension=curl.so" >> ${RPM_BUILD_ROOT}%{prefix}/httpd/php/lib/curl.ini
127127
echo "extension=openssl.so" >>${RPM_BUILD_ROOT}%{prefix}/httpd/php/lib/openssl.ini
128+
echo "extension=mbstring.so" >>${RPM_BUILD_ROOT}%{prefix}/httpd/php/lib/mbstring.ini
128129
rm -rf ${RPM_BUILD_ROOT}%{prefix}/httpd/conf
129130
rm -rf ${RPM_BUILD_ROOT}%{prefix}/httpd/php/lib/php/.channels
130131
rm -rf ${RPM_BUILD_ROOT}%{prefix}/httpd/php/lib/php/.depdb

deps-packaging/php/debian/rules

+3-1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ build: build-stamp
1212
build-stamp:
1313
dh_testdir
1414

15+
patch -p0 < $(CURDIR)/old-gcc-check-avx512-better.patch
1516
./configure --prefix=$(PREFIX)/httpd/php \
1617
--with-config-file-scan-dir=$(PREFIX)/httpd/php/lib \
1718
--with-apxs2=$(PREFIX)/httpd/bin/apxs \
@@ -22,7 +23,7 @@ build-stamp:
2223
--with-iconv \
2324
--with-zlib=$(PREFIX) \
2425
--with-libmbfl=$(PREFIX) \
25-
--enable-mbstring \
26+
--enable-mbstring=shared,$(PREFIX) \
2627
--enable-sockets \
2728
--disable-mbregex \
2829
--without-fpm-user \
@@ -116,6 +117,7 @@ install: build
116117

117118
echo "extension=curl.so" >> $(CURDIR)/debian/tmp$(PREFIX)/httpd/php/lib/curl.ini
118119
echo "extension=openssl.so" >> $(CURDIR)/debian/tmp$(PREFIX)/httpd/php/lib/openssl.ini
120+
echo "extension=mbstring.so" >> $(CURDIR)/debian/tmp$(PREFIX)/httpd/php/lib/mbstring.ini
119121

120122
rm -rf $(CURDIR)/debian/tmp$(PREFIX)/httpd/conf
121123

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
--- configure.old
2+
+++ configure
3+
@@ -18114,6 +18114,10 @@ printf %s "checking for avx512 supports in compiler... " >&6; }
4+
#include <immintrin.h>
5+
int main(void) {
6+
__m512i mask = _mm512_set1_epi32(0x1);
7+
+ __builtin_cpu_supports("avx512dq");
8+
+ __builtin_cpu_supports("avx512cd");
9+
+ __builtin_cpu_supports("avx512bw");
10+
+ __builtin_cpu_supports("avx512vl");
11+
char out[32];
12+
_mm512_storeu_si512(out, _mm512_shuffle_epi8(mask, mask));
13+
return 0;
14+
@@ -18152,6 +18156,7 @@ printf %s "checking for avx512 vbmi supports in compiler... " >&6; }
15+
16+
#include <immintrin.h>
17+
int main(void) {
18+
+ __builtin_cpu_supports("avx512vbmi");
19+
__m512i mask = _mm512_set1_epi32(0x1);
20+
char out[32];
21+
_mm512_storeu_si512(out, _mm512_permutexvar_epi8(mask, mask));

0 commit comments

Comments
 (0)