Skip to content

Commit ccdb799

Browse files
committed
Merge branch 'PHP-8.3' into PHP-8.4
2 parents db276fc + d7600d3 commit ccdb799

File tree

7 files changed

+85
-47
lines changed

7 files changed

+85
-47
lines changed

cmake/cmake/ConfigureChecks.cmake

Lines changed: 35 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,12 @@ set(HAVE_STRUCT_STAT_ST_RDEV ${PHP_HAVE_STRUCT_STAT_ST_RDEV})
240240

241241
cmake_push_check_state(RESET)
242242
set(CMAKE_EXTRA_INCLUDE_FILES "fcntl.h")
243-
check_type_size("struct flock" STRUCT_FLOCK) # Defines HAVE_STRUCT_FLOCK
243+
check_type_size(
244+
"struct flock"
245+
PHP_SIZEOF_STRUCT_FLOCK
246+
RESULT_VARIABLE PHP_HAVE_STRUCT_FLOCK
247+
)
248+
set(HAVE_STRUCT_FLOCK ${PHP_HAVE_STRUCT_FLOCK})
244249
cmake_pop_check_state()
245250

246251
# Check for sockaddr_storage and sockaddr.sa_len.
@@ -252,8 +257,12 @@ cmake_push_check_state(RESET)
252257
list(APPEND CMAKE_EXTRA_INCLUDE_FILES "winsock2.h")
253258
endif()
254259

255-
check_type_size("struct sockaddr_storage" PHP_STRUCT_SOCKADDR_STORAGE)
256-
set(HAVE_STRUCT_SOCKADDR_STORAGE ${HAVE_PHP_STRUCT_SOCKADDR_STORAGE})
260+
check_type_size(
261+
"struct sockaddr_storage"
262+
PHP_SIZEOF_STRUCT_SOCKADDR_STORAGE
263+
RESULT_VARIABLE PHP_HAVE_STRUCT_SOCKADDR_STORAGE
264+
)
265+
set(HAVE_STRUCT_SOCKADDR_STORAGE ${PHP_HAVE_STRUCT_SOCKADDR_STORAGE})
257266

258267
check_struct_has_member(
259268
"struct sockaddr"
@@ -268,14 +277,14 @@ cmake_pop_check_state()
268277
# Check types.
269278
################################################################################
270279

271-
check_type_size("gid_t" SIZEOF_GID_T)
272-
if(NOT HAVE_SIZEOF_GID_T)
280+
check_type_size("gid_t" PHP_SIZEOF_GID_T RESULT_VARIABLE PHP_HAVE_GID_T)
281+
if(NOT PHP_HAVE_GID_T)
273282
set(PHP_GID_T_CODE "#define gid_t int")
274283
else()
275284
set(PHP_GID_T_CODE "/* #undef gid_t */")
276285
endif()
277286

278-
check_type_size("int" SIZEOF_INT)
287+
check_type_size("int" SIZEOF_INT RESULT_VARIABLE PHP_HAVE_INT)
279288
if(SIZEOF_INT STREQUAL "")
280289
set(SIZEOF_INT_CODE "#define SIZEOF_INT 0")
281290
endif()
@@ -286,46 +295,46 @@ endif()
286295
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
287296
set(SIZEOF_INTMAX_T_CODE "#define SIZEOF_INTMAX_T 0")
288297
else()
289-
check_type_size("intmax_t" SIZEOF_INTMAX_T)
298+
check_type_size("intmax_t" SIZEOF_INTMAX_T RESULT_VARIABLE PHP_HAVE_INTMAX_T)
290299
endif()
291300

292-
check_type_size("long" SIZEOF_LONG)
293-
if(SIZEOF_LONG STREQUAL "")
301+
check_type_size("long" SIZEOF_LONG RESULT_VARIABLE PHP_HAVE_LONG)
302+
if(NOT PHP_HAVE_LONG)
294303
set(SIZEOF_LONG_CODE "#define SIZEOF_LONG 0")
295304
endif()
296305

297-
check_type_size("long long" SIZEOF_LONG_LONG)
298-
if(SIZEOF_LONG_LONG STREQUAL "")
306+
check_type_size("long long" SIZEOF_LONG_LONG RESULT_VARIABLE PHP_HAVE_LONG_LONG)
307+
if(NOT PHP_HAVE_LONG_LONG)
299308
set(SIZEOF_LONG_LONG_CODE "#define SIZEOF_LONG_LONG 0")
300309
endif()
301310

302-
check_type_size("off_t" SIZEOF_OFF_T)
303-
if(SIZEOF_OFF_T STREQUAL "")
311+
check_type_size("off_t" SIZEOF_OFF_T RESULT_VARIABLE PHP_HAVE_OFF_T)
312+
if(NOT PHP_HAVE_OFF_T)
304313
set(SIZEOF_OFF_T_CODE "#define SIZEOF_OFF_T 0")
305314
endif()
306315

307316
# The ptrdiff_t is always available by C89 standard and its size varies between
308317
# 32-bit and 64-bit target platforms. Checking whether the ptrdiff_t exists is
309318
# redundant and is left here as PHP still checks it conditionally in the intl
310319
# extension and main/s{n,p}printf.{c,h}.
311-
check_type_size("ptrdiff_t" SIZEOF_PTRDIFF_T)
320+
check_type_size("ptrdiff_t" SIZEOF_PTRDIFF_T RESULT_VARIABLE PHP_HAVE_PTRDIFF_T)
312321

313-
check_type_size("size_t" SIZEOF_SIZE_T)
314-
if(SIZEOF_SIZE_T STREQUAL "")
322+
check_type_size("size_t" SIZEOF_SIZE_T RESULT_VARIABLE PHP_HAVE_SIZE_T)
323+
if(NOT PHP_HAVE_SIZE_T)
315324
set(SIZEOF_SIZE_T_CODE "#define SIZEOF_SIZE_T 0")
316325
endif()
317326

318327
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
319328
set(SIZEOF_SSIZE_T_CODE "#define SIZEOF_SSIZE_T 0")
320329
else()
321-
check_type_size("ssize_t" SIZEOF_SSIZE_T)
322-
if(SIZEOF_SSIZE_T STREQUAL "")
330+
check_type_size("ssize_t" SIZEOF_SSIZE_T RESULT_VARIABLE PHP_HAVE_SSIZE_T)
331+
if(NOT PHP_HAVE_SSIZE_T)
323332
set(SIZEOF_SSIZE_T_CODE "#define SIZEOF_SSIZE_T 0")
324333
endif()
325334
endif()
326335

327-
check_type_size("uid_t" SIZEOF_UID_T)
328-
if(NOT HAVE_SIZEOF_UID_T)
336+
check_type_size("uid_t" PHP_SIZEOF_UID_T RESULT_VARIABLE PHP_HAVE_UID_T)
337+
if(NOT PHP_HAVE_UID_T)
329338
set(PHP_UID_T_CODE "#define uid_t int")
330339
else()
331340
set(PHP_UID_T_CODE "/* #undef uid_t */")
@@ -339,7 +348,12 @@ cmake_push_check_state(RESET)
339348
if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
340349
list(APPEND CMAKE_EXTRA_INCLUDE_FILES ws2tcpip.h)
341350
endif()
342-
check_type_size("socklen_t" SOCKLEN_T) # Defines HAVE_SOCKLEN_T
351+
check_type_size(
352+
"socklen_t"
353+
PHP_SIZEOF_SOCKLEN_T
354+
RESULT_VARIABLE PHP_HAVE_SOCKLEN_T
355+
)
356+
set(HAVE_SOCKLEN_T ${PHP_HAVE_SOCKLEN_T})
343357
cmake_pop_check_state()
344358

345359
################################################################################

cmake/cmake/checks/CheckFopencookie.cmake

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,14 @@ endif()
3838
cmake_push_check_state(RESET)
3939
set(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
4040
set(CMAKE_EXTRA_INCLUDE_FILES "stdio.h")
41-
check_type_size("cookie_io_functions_t" PHP_COOKIE_IO_FUNCTIONS_T)
41+
check_type_size(
42+
"cookie_io_functions_t"
43+
PHP_SIZEOF_COOKIE_IO_FUNCTIONS_T
44+
RESULT_VARIABLE PHP_HAVE_COOKIE_IO_FUNCTIONS_T
45+
)
4246
cmake_pop_check_state()
4347

44-
if(NOT HAVE_PHP_COOKIE_IO_FUNCTIONS_T)
48+
if(NOT PHP_HAVE_COOKIE_IO_FUNCTIONS_T)
4549
return()
4650
endif()
4751

cmake/cmake/platforms/Windows.cmake

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -54,16 +54,8 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
5454
# known on Windows targets.
5555
##############################################################################
5656

57-
set(HAVE_PHP_EXT_SOCKETS_STRUCT_CMSGCRED FALSE)
58-
set(HAVE_PHP_EXT_SOCKETS_STRUCT_UCRED FALSE)
59-
set(HAVE_PHP_STRUCT_SOCKADDR_STORAGE FALSE)
60-
set(HAVE_SIZEOF_GID_T FALSE)
61-
set(HAVE_SIZEOF_SSIZE_T FALSE)
62-
set(HAVE_SIZEOF_UID_T FALSE)
63-
set(HAVE_SOCKLEN_T TRUE)
6457
set(HAVE_STDDEF_H TRUE) # Defined by check_type_size().
6558
set(HAVE_STDINT_H TRUE) # Defined by check_type_size().
66-
set(HAVE_STRUCT_FLOCK FALSE)
6759
set(HAVE_SYS_TYPES_H TRUE) # Defined by check_type_size().
6860
set(PHP_EBCDIC FALSE)
6961
set(PHP_EXT_FILEINFO_HAVE_STRCASESTR FALSE)
@@ -81,7 +73,9 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
8173
set(PHP_EXT_SOCKETS_HAVE_IF_NAMETOINDEX FALSE)
8274
set(PHP_EXT_SOCKETS_HAVE_LINUX_FILTER_H FALSE)
8375
set(PHP_EXT_SOCKETS_HAVE_SOCKATMARK FALSE)
76+
set(PHP_EXT_SOCKETS_HAVE_STRUCT_CMSGCRED FALSE)
8477
set(PHP_EXT_SOCKETS_HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY FALSE)
78+
set(PHP_EXT_SOCKETS_HAVE_STRUCT_UCRED FALSE)
8579
set(PHP_EXT_SOCKETS_HAVE_SYS_SOCKIO_H FALSE)
8680
set(PHP_HAS_ELF FALSE)
8781
set(PHP_HAS_FFP_CONTRACT_OFF_C FALSE)
@@ -151,6 +145,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
151145
set(PHP_HAVE_GETSERVBYPORT TRUE)
152146
set(PHP_HAVE_GETSERVBYPORT_LIBRARY ws2_32)
153147
set(PHP_HAVE_GETWD FALSE)
148+
set(PHP_HAVE_GID_T FALSE)
154149
set(PHP_HAVE_GRP_H FALSE)
155150
set(PHP_HAVE_IEEEFP_H FALSE)
156151
set(PHP_HAVE_IFADDRS_H FALSE)
@@ -194,13 +189,17 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
194189
set(PHP_HAVE_SIGPROCMASK FALSE)
195190
set(PHP_HAVE_SOCKET TRUE)
196191
set(PHP_HAVE_SOCKET_LIBRARY ws2_32)
192+
set(PHP_HAVE_SOCKLEN_T TRUE)
193+
set(PHP_HAVE_SSIZE_T FALSE)
197194
set(PHP_HAVE_STATFS FALSE)
198195
set(PHP_HAVE_STATVFS FALSE)
199196
set(PHP_HAVE_STD_SYSLOG FALSE)
200197
set(PHP_HAVE_STRINGS_H FALSE)
201198
set(PHP_HAVE_STRLCAT FALSE)
202199
set(PHP_HAVE_STRLCPY FALSE)
200+
set(PHP_HAVE_STRUCT_FLOCK FALSE)
203201
set(PHP_HAVE_STRUCT_SOCKADDR_SA_LEN FALSE)
202+
set(PHP_HAVE_STRUCT_SOCKADDR_STORAGE FALSE)
204203
set(PHP_HAVE_STRUCT_STAT_ST_BLKSIZE FALSE)
205204
set(PHP_HAVE_STRUCT_STAT_ST_BLOCKS FALSE)
206205
set(PHP_HAVE_STRUCT_STAT_ST_RDEV TRUE)
@@ -231,6 +230,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
231230
set(PHP_HAVE_SYSEXITS_H FALSE)
232231
set(PHP_HAVE_TMMINTRIN_H TRUE)
233232
set(PHP_HAVE_TZSET TRUE)
233+
set(PHP_HAVE_UID_T FALSE)
234234
set(PHP_HAVE_UNISTD_H FALSE)
235235
set(PHP_HAVE_UNIX_H FALSE)
236236
set(PHP_HAVE_UNSETENV FALSE)
@@ -259,20 +259,20 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
259259
set(PHP_ZEND_HAVE_PTHREAD_STACKSEG_NP FALSE)
260260
set(PHP_ZEND_HAVE_STRNLEN TRUE)
261261

262-
set(HAVE_SIZEOF_INT TRUE)
262+
set(PHP_HAVE_INT TRUE)
263263
set(SIZEOF_INT 4)
264264

265-
set(HAVE_SIZEOF_LONG TRUE)
265+
set(PHP_HAVE_LONG TRUE)
266266
set(SIZEOF_LONG 4)
267267

268-
set(HAVE_SIZEOF_LONG_LONG TRUE)
268+
set(PHP_HAVE_LONG_LONG TRUE)
269269
set(SIZEOF_LONG_LONG 8)
270270

271-
set(HAVE_SIZEOF_OFF_T TRUE)
271+
set(PHP_HAVE_OFF_T TRUE)
272272
set(SIZEOF_OFF_T 4)
273273

274-
set(HAVE_SIZEOF_SIZE_T TRUE)
275-
set(HAVE_SIZEOF_PTRDIFF_T TRUE)
274+
set(PHP_HAVE_SIZE_T TRUE)
275+
set(PHP_HAVE_PTRDIFF_T TRUE)
276276
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
277277
set(SIZEOF_PTRDIFF_T 4)
278278
set(SIZEOF_SIZE_T 4)

cmake/ext/ffi/CMakeLists.txt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,12 @@ set_package_properties(
8080

8181
target_link_libraries(php_ext_ffi PRIVATE FFI::FFI)
8282

83-
check_type_size("long double" PHP_EXT_FFI_LONG_DOUBLE)
84-
set(HAVE_LONG_DOUBLE ${HAVE_PHP_EXT_FFI_LONG_DOUBLE})
83+
check_type_size(
84+
"long double"
85+
PHP_EXT_FFI_SIZEOF_LONG_DOUBLE
86+
RESULT_VARIABLE PHP_EXT_FFI_HAVE_LONG_DOUBLE
87+
)
88+
set(HAVE_LONG_DOUBLE ${PHP_EXT_FFI_HAVE_LONG_DOUBLE})
8589

8690
if(TARGET FFI::FFI)
8791
cmake_push_check_state(RESET)

cmake/ext/pcntl/CMakeLists.txt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -209,10 +209,14 @@ cmake_pop_check_state()
209209

210210
cmake_push_check_state(RESET)
211211
set(CMAKE_EXTRA_INCLUDE_FILES "signal.h")
212-
check_type_size(siginfo_t PHP_EXT_PCNTL_STRUCT_SIGINFO_T)
212+
check_type_size(
213+
siginfo_t
214+
PHP_EXT_PCNTL_SIZEOF_STRUCT_SIGINFO_T
215+
RESULT_VARIABLE PHP_EXT_PCNTL_HAVE_STRUCT_SIGINFO_T
216+
)
213217
cmake_pop_check_state()
214218

215-
if(HAVE_PHP_EXT_PCNTL_STRUCT_SIGINFO_T)
219+
if(PHP_EXT_PCNTL_HAVE_STRUCT_SIGINFO_T)
216220
target_compile_definitions(php_ext_pcntl PRIVATE HAVE_STRUCT_SIGINFO_T)
217221
endif()
218222

cmake/ext/sockets/CMakeLists.txt

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,16 +137,24 @@ set(
137137
cmake_push_check_state(RESET)
138138
set(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
139139
set(CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h")
140-
check_type_size("struct ucred" PHP_EXT_SOCKETS_STRUCT_UCRED)
140+
check_type_size(
141+
"struct ucred"
142+
PHP_EXT_SOCKETS_SIZEOF_STRUCT_UCRED
143+
RESULT_VARIABLE PHP_EXT_SOCKETS_HAVE_STRUCT_UCRED
144+
)
141145
cmake_pop_check_state()
142-
set(HAVE_STRUCT_UCRED ${HAVE_PHP_EXT_SOCKETS_STRUCT_UCRED})
146+
set(HAVE_STRUCT_UCRED ${PHP_EXT_SOCKETS_HAVE_STRUCT_UCRED})
143147

144148
# Check for struct cmsgcred.
145149
cmake_push_check_state(RESET)
146150
set(CMAKE_EXTRA_INCLUDE_FILES "sys/socket.h")
147-
check_type_size("struct cmsgcred" PHP_EXT_SOCKETS_STRUCT_CMSGCRED)
151+
check_type_size(
152+
"struct cmsgcred"
153+
PHP_EXT_SOCKETS_SIZEOF_STRUCT_CMSGCRED
154+
RESULT_VARIABLE PHP_EXT_SOCKETS_HAVE_STRUCT_CMSGCRED
155+
)
148156
cmake_pop_check_state()
149-
set(HAVE_STRUCT_CMSGCRED ${HAVE_PHP_EXT_SOCKETS_STRUCT_CMSGCRED})
157+
set(HAVE_STRUCT_CMSGCRED ${PHP_EXT_SOCKETS_HAVE_STRUCT_CMSGCRED})
150158

151159
set(HAVE_SOCKETS TRUE)
152160

cmake/ext/sysvsem/CMakeLists.txt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,12 @@ target_sources(
7474

7575
cmake_push_check_state(RESET)
7676
set(CMAKE_EXTRA_INCLUDE_FILES "sys/types.h;sys/ipc.h;sys/sem.h")
77-
check_type_size("union semun" PHP_EXT_SYSVSEM_UNION_SEMUN)
78-
set(HAVE_UNION_SEMUN ${HAVE_PHP_EXT_SYSVSEM_UNION_SEMUN})
77+
check_type_size(
78+
"union semun"
79+
PHP_EXT_SYSVSEM_SIZEOF_UNION_SEMUN
80+
RESULT_VARIABLE PHP_EXT_SYSVSEM_HAVE_UNION_SEMUN
81+
)
82+
set(HAVE_UNION_SEMUN ${PHP_EXT_SYSVSEM_HAVE_UNION_SEMUN})
7983
cmake_pop_check_state()
8084

8185
set(HAVE_SYSVSEM TRUE)

0 commit comments

Comments
 (0)