Skip to content

Commit bbb7ade

Browse files
committed
Merge branch 'PHP-8.3' into PHP-8.4
2 parents 9f16745 + 4cae46c commit bbb7ade

File tree

7 files changed

+51
-22
lines changed

7 files changed

+51
-22
lines changed

cmake/ext/iconv/CMakeLists.txt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,21 @@ target_sources(
6565
PRIVATE
6666
iconv.c
6767
iconv.stub.php
68-
$<$<AND:$<PLATFORM_ID:Windows>,$<NOT:$<IN_LIST:$<TARGET_PROPERTY:TYPE>,MODULE_LIBRARY;SHARED_LIBRARY>>>:php_iconv.def>
6968
PUBLIC
7069
FILE_SET HEADERS
7170
FILES
7271
php_iconv.h
7372
)
7473

74+
get_target_property(type php_ext_iconv TYPE)
75+
if(
76+
CMAKE_SYSTEM_NAME STREQUAL "Windows"
77+
AND TARGET php_sapi
78+
AND NOT type MATCHES "^(MODULE|SHARED)_LIBRARY$"
79+
)
80+
target_sources(php_sapi INTERFACE php_iconv.def)
81+
endif()
82+
7583
target_compile_definitions(
7684
php_ext_iconv
7785
PRIVATE

cmake/ext/libxml/CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,13 +48,16 @@ target_sources(
4848
libxml.c
4949
libxml.stub.php
5050
mime_sniff.c
51-
php_libxml2.def
5251
PUBLIC
5352
FILE_SET HEADERS
5453
FILES
5554
php_libxml.h
5655
)
5756

57+
if(CMAKE_SYSTEM_NAME STREQUAL "Windows" AND TARGET php_sapi)
58+
target_sources(php_sapi INTERFACE php_libxml2.def)
59+
endif()
60+
5861
target_compile_definitions(
5962
php_ext_libxml
6063
PRIVATE

cmake/ext/tidy/CMakeLists.txt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,19 @@ endif()
6363
target_sources(
6464
php_ext_tidy
6565
PRIVATE
66-
$<$<AND:$<PLATFORM_ID:Windows>,$<NOT:$<IN_LIST:$<TARGET_PROPERTY:TYPE>,MODULE_LIBRARY;SHARED_LIBRARY>>>:php_tidy.def>
6766
tidy.c
6867
tidy.stub.php
6968
)
7069

70+
get_target_property(type php_ext_tidy TYPE)
71+
if(
72+
CMAKE_SYSTEM_NAME STREQUAL "Windows"
73+
AND TARGET php_sapi
74+
AND NOT type MATCHES "^(MODULE|SHARED)_LIBRARY$"
75+
)
76+
target_sources(php_sapi INTERFACE php_tidy.def)
77+
endif()
78+
7179
# Add -Wno-ignored-qualifiers as this is an issue upstream. Fixed in tidy-html5
7280
# 5.7.20. See: https://github.com/htacg/tidy-html5/issues/866
7381
if(Tidy_VERSION VERSION_LESS 5.7.20)

cmake/ext/zlib/CMakeLists.txt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,21 @@ endif()
6060
target_sources(
6161
php_ext_zlib
6262
PRIVATE
63-
$<$<AND:$<PLATFORM_ID:Windows>,$<NOT:$<IN_LIST:$<TARGET_PROPERTY:TYPE>,MODULE_LIBRARY;SHARED_LIBRARY>>>:php_zlib.def>
6463
zlib_filter.c
6564
zlib_fopen_wrapper.c
6665
zlib.c
6766
zlib.stub.php
6867
)
6968

69+
get_target_property(type php_ext_zlib TYPE)
70+
if(
71+
CMAKE_SYSTEM_NAME STREQUAL "Windows"
72+
AND TARGET php_sapi
73+
AND NOT type MATCHES "^(MODULE|SHARED)_LIBRARY$"
74+
)
75+
target_sources(php_sapi INTERFACE php_zlib.def)
76+
endif()
77+
7078
target_compile_definitions(php_ext_zlib PRIVATE ZEND_ENABLE_STATIC_TSRMLS_CACHE)
7179

7280
find_package(ZLIB ${PHP_ZLIB_MIN_VERSION})

cmake/main/CMakeLists.txt

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -269,27 +269,27 @@ function(_php_main_configure_build_defs)
269269
set(CONFIGURE_COMMAND "cmake")
270270

271271
if(NOT "@PHP_PEAR_DIR@" STREQUAL "")
272-
set(PEAR_INSTALLDIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_PEAR_DIR@,${CMAKE_INSTALL_PREFIX}>")
272+
set(PHP_PEAR_INSTALLDIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_PEAR_DIR@,${CMAKE_INSTALL_PREFIX}>")
273273
endif()
274274

275275
set(PHP_BINDIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@CMAKE_INSTALL_BINDIR@,${CMAKE_INSTALL_PREFIX}>")
276276

277277
if("@CMAKE_SYSTEM_NAME@" STREQUAL "Windows")
278-
set(EXPANDED_PHP_CONFIG_FILE_PATH "")
278+
set(PHP_CONFIG_FILE_PATH "")
279279
else()
280-
set(EXPANDED_PHP_CONFIG_FILE_PATH "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_CONFIG_FILE_PATH@,${CMAKE_INSTALL_PREFIX}>")
280+
set(PHP_CONFIG_FILE_PATH "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_CONFIG_FILE_PATH@,${CMAKE_INSTALL_PREFIX}>")
281281
endif()
282282

283-
set(EXPANDED_PHP_CONFIG_FILE_SCAN_DIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_CONFIG_FILE_SCAN_DIR@,${CMAKE_INSTALL_PREFIX}>")
283+
set(PHP_CONFIG_FILE_SCAN_DIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_CONFIG_FILE_SCAN_DIR@,${CMAKE_INSTALL_PREFIX}>")
284284

285285
set(PHP_DATADIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@CMAKE_INSTALL_DATADIR@,${CMAKE_INSTALL_PREFIX}>")
286286

287-
set(EXPANDED_EXTENSION_DIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_EXTENSION_DIR@,${CMAKE_INSTALL_PREFIX}>")
287+
set(PHP_EXTENSION_DIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@PHP_EXTENSION_DIR@,${CMAKE_INSTALL_PREFIX}>")
288288

289289
if("@CMAKE_SYSTEM_NAME@" STREQUAL "Windows")
290-
set(PHP_INCLUDE_PATH ".;${PEAR_INSTALLDIR}")
290+
set(PHP_INCLUDE_PATH ".;${PHP_PEAR_INSTALLDIR}")
291291
else()
292-
set(PHP_INCLUDE_PATH ".:${PEAR_INSTALLDIR}")
292+
set(PHP_INCLUDE_PATH ".:${PHP_PEAR_INSTALLDIR}")
293293
endif()
294294

295295
set(PHP_LIBDIR "$<PATH:ABSOLUTE_PATH,NORMALIZE,@CMAKE_INSTALL_LIBDIR@,${CMAKE_INSTALL_PREFIX}>")
@@ -329,12 +329,14 @@ function(_php_main_configure_build_defs)
329329
# Regenerate file on the install step when using different installation prefix
330330
# at the 'cmake --install ... --prefix <install-prefix>' phase.
331331
string(CONFIGURE [[
332-
@code@
333-
configure_file(
334-
"@PHP_SOURCE_DIR@/main/cmake/build-defs.h.in"
335-
"@PHP_BINARY_DIR@/$<CONFIG>/main/build-defs.h"
336-
@ONLY
337-
)
332+
block()
333+
@code@
334+
configure_file(
335+
"@PHP_SOURCE_DIR@/main/cmake/build-defs.h.in"
336+
"@PHP_BINARY_DIR@/$<CONFIG>/main/build-defs.h"
337+
@ONLY
338+
)
339+
endblock()
338340
]] code @ONLY)
339341
install(CODE "${code}")
340342
endfunction()

cmake/main/cmake/build-defs.h.in

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,26 +12,26 @@
1212
#cmakedefine CONFIGURE_COMMAND "@CONFIGURE_COMMAND@"
1313

1414
/* The path to the PEAR installation directory. */
15-
#define PEAR_INSTALLDIR "@PEAR_INSTALLDIR@"
15+
#define PEAR_INSTALLDIR "@PHP_PEAR_INSTALLDIR@"
1616

1717
/* The path to the directory containing command-line executables (bin). */
1818
#define PHP_BINDIR "@PHP_BINDIR@"
1919

2020
/* The path to the directory in which PHP looks for the php.ini configuration
2121
file. On Windows this macro isn't utilized in the C code. */
22-
#define PHP_CONFIG_FILE_PATH "@EXPANDED_PHP_CONFIG_FILE_PATH@"
22+
#define PHP_CONFIG_FILE_PATH "@PHP_CONFIG_FILE_PATH@"
2323

2424
/* The path to the directory where PHP scans for additional INI
2525
configuration files. */
26-
#define PHP_CONFIG_FILE_SCAN_DIR "@EXPANDED_PHP_CONFIG_FILE_SCAN_DIR@"
26+
#define PHP_CONFIG_FILE_SCAN_DIR "@PHP_CONFIG_FILE_SCAN_DIR@"
2727

2828
/* The path to the directory containing architecture-independent data
2929
(share). */
3030
#define PHP_DATADIR "@PHP_DATADIR@"
3131

3232
/* The default path to the directory containing dynamically loadable PHP
3333
extensions. */
34-
#define PHP_EXTENSION_DIR "@EXPANDED_EXTENSION_DIR@"
34+
#define PHP_EXTENSION_DIR "@PHP_EXTENSION_DIR@"
3535

3636
/* The default 'include_path' PHP INI directive. */
3737
#define PHP_INCLUDE_PATH "@PHP_INCLUDE_PATH@"

cmake/sapi/fpm/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -659,7 +659,7 @@ block()
659659
endblock()
660660

661661
################################################################################
662-
# Configure init.d.php-fpm.
662+
# Configure php-fpm.service.
663663
################################################################################
664664

665665
block()

0 commit comments

Comments
 (0)