Skip to content

Commit 6d506b6

Browse files
committed
Sync configuration headers
- ext/date/lib/timelib_config.h - ext/mbstring/libmbfl/config.h - Zend/zend_config.h
1 parent 3bfb815 commit 6d506b6

File tree

3 files changed

+33
-14
lines changed

3 files changed

+33
-14
lines changed

cmake/Zend/CMakeLists.txt

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -655,12 +655,16 @@ endif()
655655
configure_file(cmake/zend_config.h.in CMakeFiles/zend_config.h)
656656

657657
if(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
658-
message(STATUS "Creating Zend/zend_config.h")
659-
658+
cmake_path(
659+
RELATIVE_PATH CMAKE_CURRENT_BINARY_DIR
660+
BASE_DIRECTORY ${CMAKE_BINARY_DIR}
661+
OUTPUT_VARIABLE dir
662+
)
663+
message(STATUS "Creating ${dir}/zend_config.h")
660664
file(
661-
WRITE
662-
${CMAKE_CURRENT_BINARY_DIR}/zend_config.h
663-
"#include <../main/php_config.h>\n"
665+
CONFIGURE
666+
OUTPUT zend_config.h
667+
CONTENT "#include <../main/php_config.h>\n"
664668
)
665669
endif()
666670

cmake/ext/date/CMakeLists.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,12 @@ target_compile_definitions(
7474

7575
set(HAVE_TIMELIB_CONFIG_H TRUE)
7676

77-
message(STATUS "Creating ext/date/lib/timelib_config.h")
77+
cmake_path(
78+
RELATIVE_PATH CMAKE_CURRENT_BINARY_DIR
79+
BASE_DIRECTORY ${CMAKE_BINARY_DIR}
80+
OUTPUT_VARIABLE dir
81+
)
82+
message(STATUS "Creating ${dir}/lib/timelib_config.h")
7883
file(CONFIGURE OUTPUT lib/timelib_config.h CONTENT [[
7984
#ifdef PHP_WIN32
8085
# include "config.w32.h"

cmake/ext/mbstring/CMakeLists.txt

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -148,16 +148,21 @@ target_sources(
148148

149149
add_dependencies(php_mbstring php_pcre)
150150

151-
# TODO: Fix this better. See also https://github.com/php/php-src/pull/13713
152-
# TODO: Should status message be here?
153-
message(STATUS "Creating ext/mbstring/libmbfl/config.h")
151+
cmake_path(
152+
RELATIVE_PATH CMAKE_CURRENT_BINARY_DIR
153+
BASE_DIRECTORY ${CMAKE_BINARY_DIR}
154+
OUTPUT_VARIABLE dir
155+
)
156+
message(STATUS "Creating ${dir}/libmbfl/config.h")
154157
file(CONFIGURE OUTPUT libmbfl/config.h CONTENT [[
158+
#ifdef HAVE_CONFIG_H
159+
# include <config.h>
160+
#endif
155161
#ifdef _WIN32
156162
# define HAVE_STRICMP 1
157-
#elif defined HAVE_CONFIG_H
158-
# include "<config.h>"
163+
# include <config.w32.h>
159164
#else
160-
# include <main/php_config.h>
165+
# include <php_config.h>
161166
#endif
162167
]])
163168

@@ -225,13 +230,18 @@ if(EXT_MBSTRING_MBREGEX)
225230
)
226231
endif()
227232

228-
target_compile_definitions(php_mbstring PRIVATE ZEND_ENABLE_STATIC_TSRMLS_CACHE)
233+
target_compile_definitions(
234+
php_mbstring
235+
PRIVATE
236+
$<$<AND:$<PLATFORM_ID:Windows>,$<IN_LIST:$<TARGET_PROPERTY:TYPE>,MODULE_LIBRARY;SHARED_LIBRARY>>:MBFL_DLL_EXPORT>
237+
ZEND_ENABLE_STATIC_TSRMLS_CACHE
238+
)
229239

230240
target_include_directories(
231241
php_mbstring
232242
PRIVATE
233-
${CMAKE_CURRENT_SOURCE_DIR}/libmbfl
234243
${CMAKE_CURRENT_BINARY_DIR}/libmbfl
244+
${CMAKE_CURRENT_SOURCE_DIR}/libmbfl
235245
${CMAKE_CURRENT_SOURCE_DIR}/libmbfl/mbfl
236246
)
237247

0 commit comments

Comments
 (0)