Skip to content

Commit 9b7339a

Browse files
committed
Merge branch 'PHP-8.3' into PHP-8.4
2 parents 97d6472 + 456a29a commit 9b7339a

File tree

6 files changed

+55
-28
lines changed

6 files changed

+55
-28
lines changed

cmake/cmake/platforms/Windows.cmake

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
102102
set(HAVE_MEMRCHR FALSE)
103103
set(HAVE_MKSTEMP FALSE)
104104
set(HAVE_MMAP FALSE)
105-
set(HAVE_MPROTECT FALSE)
106105
set(HAVE_MREMAP FALSE)
107106
set(HAVE_NET_IF_H FALSE)
108107
set(HAVE_NETDB_H FALSE)
@@ -140,11 +139,9 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
140139
set(HAVE_STD_SYSLOG FALSE)
141140
set(HAVE_STDDEF_H TRUE) # Defined by check_type_size().
142141
set(HAVE_STDINT_H TRUE) # Defined by check_type_size().
143-
set(HAVE_STRCASESTR FALSE)
144142
set(HAVE_STRINGS_H FALSE)
145143
set(HAVE_STRLCAT FALSE)
146144
set(HAVE_STRLCPY FALSE)
147-
set(HAVE_STRNDUP FALSE)
148145
set(HAVE_STRNLEN TRUE)
149146
set(HAVE_STRUCT_CMSGCRED FALSE)
150147
set(HAVE_STRUCT_FLOCK FALSE)
@@ -190,12 +187,15 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
190187
set(HAVE_UNSETENV FALSE)
191188
set(HAVE_UTIME TRUE)
192189
set(HAVE_UTIME_H FALSE)
193-
set(HAVE_UTIMES FALSE)
194190
set(HAVE_VASPRINTF FALSE)
195191
set(HAVE_WMMINTRIN_H TRUE)
196192
set(HAVE_WS2TCPIP_H TRUE)
193+
set(PHP_EXT_FILEINFO_HAVE_STRCASESTR FALSE)
194+
set(PHP_EXT_FILEINFO_HAVE_STRNDUP FALSE)
195+
set(PHP_EXT_FILEINFO_HAVE_UTIMES FALSE)
197196
set(PHP_EXT_GD_HAS_FLOORF TRUE)
198197
set(PHP_EXT_OPCACHE_HAS_FLOOR TRUE)
198+
set(PHP_EXT_OPCACHE_HAVE_MPROTECT FALSE)
199199
set(PHP_HAS_CREATEPROCESS TRUE)
200200
set(PHP_HAS_DN_EXPAND FALSE)
201201
set(PHP_HAS_DN_SKIPNAME FALSE)

cmake/ext/enchant/CMakeLists.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,14 +81,19 @@ if(TARGET Enchant::Enchant)
8181
check_symbol_exists(
8282
enchant_get_version
8383
enchant.h
84-
HAVE_ENCHANT_GET_VERSION
84+
PHP_EXT_ENCHANT_HAVE_ENCHANT_GET_VERSION
8585
)
86+
set(HAVE_ENCHANT_GET_VERSION ${PHP_EXT_ENCHANT_HAVE_ENCHANT_GET_VERSION})
8687

8788
# The enchant_broker_set_param() is available since 1.5.0 and removed in 2.x.
8889
check_symbol_exists(
8990
enchant_broker_set_param
9091
enchant.h
92+
PHP_EXT_ENCHANT_HAVE_ENCHANT_BROKER_SET_PARAM
93+
)
94+
set(
9195
HAVE_ENCHANT_BROKER_SET_PARAM
96+
${PHP_EXT_ENCHANT_HAVE_ENCHANT_BROKER_SET_PARAM}
9297
)
9398
cmake_pop_check_state()
9499
endif()

cmake/ext/ffi/CMakeLists.txt

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -80,22 +80,41 @@ set_package_properties(
8080

8181
target_link_libraries(php_ext_ffi PRIVATE FFI::FFI)
8282

83-
check_type_size("long double" LONG_DOUBLE)
83+
check_type_size("long double" PHP_EXT_FFI_LONG_DOUBLE)
84+
set(HAVE_LONG_DOUBLE ${HAVE_PHP_EXT_FFI_LONG_DOUBLE})
8485

8586
if(TARGET FFI::FFI)
8687
cmake_push_check_state(RESET)
8788
set(CMAKE_REQUIRED_LIBRARIES FFI::FFI)
8889

89-
check_symbol_exists(FFI_FASTCALL ffi.h HAVE_FFI_FASTCALL)
90-
check_symbol_exists(FFI_MS_CDECL ffi.h HAVE_FFI_MS_CDECL)
91-
check_symbol_exists(FFI_PASCAL ffi.h HAVE_FFI_PASCAL)
92-
check_symbol_exists(FFI_REGISTER ffi.h HAVE_FFI_REGISTER)
93-
check_symbol_exists(FFI_STDCALL ffi.h HAVE_FFI_STDCALL)
94-
check_symbol_exists(FFI_SYSV ffi.h HAVE_FFI_SYSV)
95-
check_symbol_exists(FFI_THISCALL ffi.h HAVE_FFI_THISCALL)
90+
check_symbol_exists(FFI_FASTCALL ffi.h PHP_EXT_FFI_HAVE_FFI_FASTCALL)
91+
set(HAVE_FFI_FASTCALL ${PHP_EXT_FFI_HAVE_FFI_FASTCALL})
92+
93+
check_symbol_exists(FFI_MS_CDECL ffi.h PHP_EXT_FFI_HAVE_FFI_MS_CDECL)
94+
set(HAVE_FFI_MS_CDECL ${PHP_EXT_FFI_HAVE_FFI_MS_CDECL})
95+
96+
check_symbol_exists(FFI_PASCAL ffi.h PHP_EXT_FFI_HAVE_FFI_PASCAL)
97+
set(HAVE_FFI_PASCAL ${PHP_EXT_FFI_HAVE_FFI_PASCAL})
98+
99+
check_symbol_exists(FFI_REGISTER ffi.h PHP_EXT_FFI_HAVE_FFI_REGISTER)
100+
set(HAVE_FFI_REGISTER ${PHP_EXT_FFI_HAVE_FFI_REGISTER})
101+
102+
check_symbol_exists(FFI_STDCALL ffi.h PHP_EXT_FFI_HAVE_FFI_STDCALL)
103+
set(HAVE_FFI_STDCALL ${PHP_EXT_FFI_HAVE_FFI_STDCALL})
104+
105+
check_symbol_exists(FFI_SYSV ffi.h PHP_EXT_FFI_HAVE_FFI_SYSV)
106+
set(HAVE_FFI_SYSV ${PHP_EXT_FFI_HAVE_FFI_SYSV})
107+
108+
check_symbol_exists(FFI_THISCALL ffi.h PHP_EXT_FFI_HAVE_FFI_THISCALL)
109+
set(HAVE_FFI_THISCALL ${PHP_EXT_FFI_HAVE_FFI_THISCALL})
96110

97111
# Available only in https://github.com/winlibs/libffi fork.
98-
check_symbol_exists(FFI_VECTORCALL_PARTIAL ffi.h HAVE_FFI_VECTORCALL_PARTIAL)
112+
check_symbol_exists(
113+
FFI_VECTORCALL_PARTIAL
114+
ffi.h
115+
PHP_EXT_FFI_HAVE_FFI_VECTORCALL_PARTIAL
116+
)
117+
set(HAVE_FFI_VECTORCALL_PARTIAL ${PHP_EXT_FFI_HAVE_FFI_VECTORCALL_PARTIAL})
99118
cmake_pop_check_state()
100119
endif()
101120

cmake/ext/fileinfo/CMakeLists.txt

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,17 +92,28 @@ include(PHP/CheckSysMacros)
9292
# The strcasestr is missing on Windows and Solaris <= 10 (Solaris 11 has it).
9393
cmake_push_check_state(RESET)
9494
set(CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
95-
check_symbol_exists(strcasestr string.h HAVE_STRCASESTR)
95+
check_symbol_exists(strcasestr string.h PHP_EXT_FILEINFO_HAVE_STRCASESTR)
96+
set(HAVE_STRCASESTR ${PHP_EXT_FILEINFO_HAVE_STRCASESTR})
9697
cmake_pop_check_state()
9798
if(NOT HAVE_STRCASESTR)
9899
message(STATUS "Using libmagic strcasestr implementation")
99100
target_sources(php_ext_fileinfo PRIVATE libmagic/strcasestr.c)
100101
endif()
101102

102-
check_symbol_exists(strndup string.h HAVE_STRNDUP)
103-
check_symbol_exists(utimes sys/time.h HAVE_UTIMES)
103+
check_symbol_exists(strndup string.h PHP_EXT_FILEINFO_HAVE_STRNDUP)
104+
set(HAVE_STRNDUP ${PHP_EXT_FILEINFO_HAVE_STRNDUP})
104105

105-
php_check_function_attribute(visibility HAVE_FUNC_ATTRIBUTE_VISIBILITY)
106+
check_symbol_exists(utimes sys/time.h PHP_EXT_FILEINFO_HAVE_UTIMES)
107+
set(HAVE_UTIMES ${PHP_EXT_FILEINFO_HAVE_UTIMES})
108+
109+
php_check_function_attribute(
110+
visibility
111+
PHP_EXT_FILEINFO_HAVE_FUNC_ATTRIBUTE_VISIBILITY
112+
)
113+
set(
114+
HAVE_FUNC_ATTRIBUTE_VISIBILITY
115+
${PHP_EXT_FILEINFO_HAVE_FUNC_ATTRIBUTE_VISIBILITY}
116+
)
106117

107118
target_compile_definitions(
108119
php_ext_fileinfo

cmake/ext/opcache/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,8 @@ add_feature_info(
335335
# Configuration checks.
336336
################################################################################
337337

338-
check_symbol_exists(mprotect sys/mman.h HAVE_MPROTECT)
338+
check_symbol_exists(mprotect sys/mman.h PHP_EXT_OPCACHE_HAVE_MPROTECT)
339+
set(HAVE_MPROTECT ${PHP_EXT_OPCACHE_HAVE_MPROTECT})
339340

340341
# For FreeBSD.
341342
check_symbol_exists(shm_create_largepage sys/mman.h HAVE_SHM_CREATE_LARGEPAGE)

cmake/main/cmake/php_config.h.in

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -343,9 +343,6 @@
343343
/* Define to 1 if you have the 'strcasecmp' function. */
344344
#cmakedefine HAVE_STRCASECMP 1
345345

346-
/* Define to 1 if you have the 'strcasestr' function. */
347-
#cmakedefine HAVE_STRCASESTR 1
348-
349346
/* Define to 1 if you have the <strings.h> header file. */
350347
#cmakedefine HAVE_STRINGS_H 1
351348

@@ -355,9 +352,6 @@
355352
/* Define to 1 if you have the 'strlcpy' function. */
356353
#cmakedefine HAVE_STRLCPY 1
357354

358-
/* Define to 1 if you have the 'strndup' function. */
359-
#cmakedefine HAVE_STRNDUP 1
360-
361355
/* Define to 1 if you have the 'strtok_r' function. */
362356
#cmakedefine HAVE_STRTOK_R 1
363357

@@ -478,9 +472,6 @@
478472
/* Define to 1 if you have the 'utime' function. */
479473
#cmakedefine HAVE_UTIME 1
480474

481-
/* Define to 1 if you have the 'utimes' function. */
482-
#cmakedefine HAVE_UTIMES 1
483-
484475
/* Define to 1 if you have the <utime.h> header file. */
485476
#cmakedefine HAVE_UTIME_H 1
486477

0 commit comments

Comments
 (0)