Skip to content

Commit ec856d0

Browse files
committed
Merge tag 'php-8.1.18' into was-8.1.x
Tag for php-8.1.18
2 parents 694887a + a42c179 commit ec856d0

File tree

194 files changed

+7187
-2260
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

194 files changed

+7187
-2260
lines changed

.cirrus.yml

Lines changed: 200 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
env:
22
CIRRUS_CLONE_DEPTH: 1
3-
ARCH: amd64
43

5-
freebsd_instance:
6-
image_family: freebsd-13-0
7-
8-
task:
4+
freebsd_task:
95
name: FREEBSD_DEBUG_NTS
6+
freebsd_instance:
7+
image_family: freebsd-13-0
8+
env:
9+
ARCH: amd64
1010
install_script:
1111
#- sed -i -e 's/quarterly/latest/g' /etc/pkg/FreeBSD.conf
1212
#- pkg upgrade -y
@@ -26,3 +26,198 @@ task:
2626
- export SKIP_IO_CAPTURE_TESTS=1
2727
- export CI_NO_IPV6=1
2828
- sapi/cli/php run-tests.php -P -q -j2 -g FAIL,XFAIL,BORK,WARN,LEAK,XLEAK,SKIP --offline --show-diff --show-slow 1000 --set-timeout 120 -d zend_extension=opcache.so
29+
30+
arm_task:
31+
name: ARM_DEBUG_NTS
32+
arm_container:
33+
image: gcc:10
34+
additional_containers:
35+
- name: mysql
36+
image: mysql:8
37+
port: 3306
38+
cpu: 1.0
39+
memory: 1G
40+
env:
41+
MYSQL_ALLOW_EMPTY_PASSWORD: true
42+
MYSQL_ROOT_PASSWORD: ""
43+
MYSQL_DATABASE: "test"
44+
- name: postgres
45+
image: postgres:latest
46+
port: 5432
47+
env:
48+
POSTGRES_PASSWORD: "postgres"
49+
POSTGRES_DB: "test"
50+
install_script:
51+
- export DEBIAN_FRONTEND=noninteractive
52+
- apt-get update -y
53+
- >-
54+
apt-get install -y
55+
bison
56+
re2c
57+
locales
58+
locales-all
59+
ldap-utils
60+
openssl
61+
slapd
62+
libgmp-dev
63+
libicu-dev
64+
libtidy-dev
65+
libenchant-dev
66+
libaspell-dev
67+
libpspell-dev
68+
libsasl2-dev
69+
libxpm-dev
70+
libzip-dev
71+
libsqlite3-dev
72+
libwebp-dev
73+
libonig-dev
74+
libkrb5-dev
75+
libgssapi-krb5-2
76+
libcurl4-openssl-dev
77+
libxml2-dev
78+
libxslt1-dev
79+
libpq-dev
80+
libreadline-dev
81+
libldap2-dev
82+
libsodium-dev
83+
libargon2-0-dev
84+
libmm-dev
85+
libsnmp-dev
86+
snmpd
87+
`#snmp-mibs-downloader`
88+
freetds-dev
89+
`#unixodbc-dev`
90+
libc-client-dev
91+
dovecot-core
92+
dovecot-pop3d
93+
dovecot-imapd
94+
sendmail
95+
firebird-dev
96+
liblmdb-dev
97+
libtokyocabinet-dev
98+
libdb-dev
99+
libqdbm-dev
100+
libjpeg-dev
101+
libpng-dev
102+
libfreetype6-dev
103+
build_script:
104+
- ./buildconf -f
105+
- >-
106+
./configure
107+
--enable-debug
108+
--enable-zts
109+
--enable-option-checking=fatal
110+
--prefix=/usr
111+
--enable-phpdbg
112+
--enable-fpm
113+
--enable-opcache
114+
--with-pdo-mysql=mysqlnd
115+
--with-mysqli=mysqlnd
116+
--with-pgsql
117+
--with-pdo-pgsql
118+
--with-pdo-sqlite
119+
--enable-intl
120+
--without-pear
121+
--enable-gd
122+
--with-jpeg
123+
--with-webp
124+
--with-freetype
125+
--with-xpm
126+
--enable-exif
127+
--with-zip
128+
--with-zlib
129+
--with-zlib-dir=/usr
130+
--enable-soap
131+
--enable-xmlreader
132+
--with-xsl
133+
--with-tidy
134+
--enable-sysvsem
135+
--enable-sysvshm
136+
--enable-shmop
137+
--enable-pcntl
138+
--with-readline
139+
--enable-mbstring
140+
--with-curl
141+
--with-gettext
142+
--enable-sockets
143+
--with-bz2
144+
--with-openssl
145+
--with-gmp
146+
--enable-bcmath
147+
--enable-calendar
148+
--enable-ftp
149+
--with-pspell=/usr
150+
--with-enchant=/usr
151+
--with-kerberos
152+
--enable-sysvmsg
153+
--with-ffi
154+
--enable-zend-test
155+
--enable-dl-test=shared
156+
--with-ldap
157+
--with-ldap-sasl
158+
--with-password-argon2
159+
--with-mhash
160+
--with-sodium
161+
--enable-dba
162+
--with-cdb
163+
--enable-flatfile
164+
--enable-inifile
165+
--with-tcadb
166+
--with-lmdb
167+
--with-qdbm
168+
--with-snmp
169+
`#--with-unixODBC`
170+
--with-imap
171+
--with-kerberos
172+
--with-imap-ssl
173+
`#--with-pdo-odbc=unixODBC,/usr`
174+
`#--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient`
175+
`#--with-oci8=shared,instantclient,/opt/oracle/instantclient`
176+
--with-config-file-path=/etc
177+
--with-config-file-scan-dir=/etc/php.d
178+
--with-pdo-firebird
179+
`#--with-pdo-dblib`
180+
--disable-phpdbg
181+
`#--enable-werror`
182+
- make -j2 > /dev/null
183+
- make install
184+
- mkdir -p /etc/php.d
185+
- echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
186+
- echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
187+
# Specify opcache.preload_user as we're running as root.
188+
- echo opcache.preload_user=root >> /etc/php.d/opcache.ini
189+
tests_script:
190+
- export SKIP_IO_CAPTURE_TESTS=1
191+
- export CI_NO_IPV6=1
192+
- export MYSQL_TEST_HOST=127.0.0.1
193+
- export MYSQL_TEST_USER=root
194+
- export MYSQL_TEST_PASSWD=
195+
- export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=test"
196+
- export PDO_MYSQL_TEST_USER=root
197+
- export PDO_MYSQL_TEST_PASS=
198+
- export PDO_PGSQL_TEST_DSN="pgsql:host=127.0.0.1 port=5432 dbname=test user=postgres password=postgres"
199+
- >-
200+
sapi/cli/php run-tests.php
201+
-d zend_extension=opcache.so
202+
-d opcache.enable_cli=1
203+
-d opcache.jit_buffer_size=16M
204+
-d opcache.jit=function
205+
-P -q -x -j2
206+
-g FAIL,BORK,LEAK,XLEAK
207+
--offline
208+
--show-diff
209+
--show-slow 1000
210+
--set-timeout 120
211+
- >-
212+
sapi/cli/php run-tests.php
213+
-d zend_extension=opcache.so
214+
-d opcache.enable_cli=1
215+
-d opcache.jit_buffer_size=16M
216+
-d opcache.jit=tracing
217+
-P -q -x -j2
218+
-g FAIL,BORK,LEAK,XLEAK
219+
--offline
220+
--show-diff
221+
--show-slow 1000
222+
--set-timeout 120
223+
--repeat 2

.github/scripts/windows/build.bat

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
@echo off
22

3+
if /i "%APPVEYOR%%GITHUB_ACTIONS%" neq "True" (
4+
echo for CI only
5+
exit /b 3
6+
)
7+
38
set SDK_REMOTE=https://github.com/php/php-sdk-binary-tools.git
49
set SDK_BRANCH=%PHP_BUILD_SDK_BRANCH%
510
set SDK_RUNNER=%PHP_BUILD_CACHE_SDK_DIR%\phpsdk-%PHP_BUILD_CRT%-%PLATFORM%.bat
@@ -38,7 +43,7 @@ if not exist "%SDK_RUNNER%" (
3843
exit /b 3
3944
)
4045

41-
cmd /c %SDK_RUNNER% -t %APPVEYOR_BUILD_FOLDER%\.github\scripts\windows\build_task.bat
46+
cmd /c %SDK_RUNNER% -t .github\scripts\windows\build_task.bat
4247
if %errorlevel% neq 0 exit /b 3
4348

4449
exit /b 0

.github/scripts/windows/build_task.bat

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
@echo off
22

3+
if /i "%APPVEYOR%%GITHUB_ACTIONS%" neq "True" (
4+
echo for CI only
5+
exit /b 3
6+
)
7+
38
if "%APPVEYOR%" equ "True" rmdir /s /q C:\cygwin >NUL 2>NUL
49
if %errorlevel% neq 0 exit /b 3
510
if "%APPVEYOR%" equ "True" rmdir /s /q C:\cygwin64 >NUL 2>NUL
@@ -18,19 +23,12 @@ if "%APPVEYOR%" equ "True" rmdir /s /q c:\OpenSSL-v11-Win32 >NUL 2>NUL
1823
if %errorlevel% neq 0 exit /b 3
1924
if "%APPVEYOR%" equ "True" rmdir /s /q c:\OpenSSL-v11-Win64 >NUL 2>NUL
2025
if %errorlevel% neq 0 exit /b 3
21-
if "%APPVEYOR%" equ "True" del /f /q C:\Windows\System32\libcrypto-1_1-x64.dll >NUL 2>NUL
26+
del /f /q C:\Windows\System32\libcrypto-1_1-x64.dll >NUL 2>NUL
2227
if %errorlevel% neq 0 exit /b 3
23-
if "%APPVEYOR%" equ "True" del /f /q C:\Windows\System32\libssl-1_1-x64.dll >NUL 2>NUL
24-
if %errorlevel% neq 0 exit /b 3
25-
26-
cd /D %APPVEYOR_BUILD_FOLDER%
28+
del /f /q C:\Windows\System32\libssl-1_1-x64.dll >NUL 2>NUL
2729
if %errorlevel% neq 0 exit /b 3
2830

29-
if /i "%APPVEYOR_REPO_BRANCH:~0,4%" equ "php-" (
30-
set BRANCH=%APPVEYOR_REPO_BRANCH:~4,3%
31-
) else (
32-
set BRANCH=master
33-
)
31+
call %~dp0find-target-branch.bat
3432
set STABILITY=staging
3533
set DEPS_DIR=%PHP_BUILD_CACHE_BASE_DIR%\deps-%BRANCH%-%PHP_SDK_VS%-%PHP_SDK_ARCH%
3634
rem SDK is cached, deps info is cached as well
@@ -51,7 +49,12 @@ if %errorlevel% neq 0 exit /b 3
5149
if "%THREAD_SAFE%" equ "0" set ADD_CONF=%ADD_CONF% --disable-zts
5250
if "%INTRINSICS%" neq "" set ADD_CONF=%ADD_CONF% --enable-native-intrinsics=%INTRINSICS%
5351

54-
set CFLAGS=/W1 /WX
52+
rem Some undefined behavior is reported on 32-bit, this should be fixed
53+
if "%PLATFORM%" == "x86" (
54+
set CFLAGS=/W1
55+
) else (
56+
set CFLAGS=/W1 /WX
57+
)
5558

5659
cmd /c configure.bat ^
5760
--enable-snapshot-build ^
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
@echo off
2+
3+
for /f "usebackq tokens=3" %%i in (`findstr PHP_MAJOR_VERSION main\php_version.h`) do set BRANCH=%%i
4+
for /f "usebackq tokens=3" %%i in (`findstr PHP_MINOR_VERSION main\php_version.h`) do set BRANCH=%BRANCH%.%%i
5+
6+
if /i "%BRANCH%" equ "8.3" (
7+
set BRANCH=master
8+
)

.github/scripts/windows/test.bat

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,17 @@
11
@echo off
22

3+
if /i "%APPVEYOR%%GITHUB_ACTIONS%" neq "True" (
4+
echo for CI only
5+
exit /b 3
6+
)
7+
38
set SDK_RUNNER=%PHP_BUILD_CACHE_SDK_DIR%\phpsdk-%PHP_BUILD_CRT%-%PLATFORM%.bat
49
if not exist "%SDK_RUNNER%" (
510
echo "%SDK_RUNNER%" doesn't exist
611
exit /b 3
712
)
813

9-
cmd /c %SDK_RUNNER% -t %APPVEYOR_BUILD_FOLDER%\.github\scripts\windows\test_task.bat
14+
cmd /c %SDK_RUNNER% -t .github\scripts\windows\test_task.bat
1015
if %errorlevel% neq 0 exit /b 3
1116

1217
exit /b 0

0 commit comments

Comments
 (0)