mirror of
https://github.com/php/php-src.git
synced 2024-12-25 01:40:50 +08:00
864cd82ace
* origin/master: updated NEWS refactored the mbstring config.w32 Update NEWS Fixed compilation warnings Fixed bug #68504 --with-libmbfl configure option not present on Windows Changed "finally" handling. Removed EX(fast_ret) and EX(delayed_exception). Allocate and use additional IS_TMP_VAR slot on VM stack instead. the darwin specific test fails for me with the same output which is the expected for the original test I couldn't find anybody who managed to see this test passing, but I found a bunch of other reports on qa.php.net/reports and on google which do see this test failing on mac. if this change causes you to have this test failing on Mac, please drop me a mail so we can improve the current test so it passes for everybody. #68446 is fixed Reimplemented silence operator (@) handling on exceptions. Now each silence region is stored in op_array->brk_cont_array. On exception ZEND_HANDLE_EXCEPTION handler traverse this array and restore original EG(error_reporting) if exception occured inside a "silence" region. remove the NEWS entries for the reverted stuff typo fix go back with phpdbg to the state of 5.6.3, reverting the controversial commits(remote debugging/xml protocol) 5.5.21 now New label length test Fix ext/filter/tests/033.phpt Fix filter_list test FILTER_VALIDATE_DOMAIN and RFC conformance for FILTER_VALIDATE_URL Conflicts: ext/mbstring/config.w32
101 lines
5.1 KiB
JavaScript
101 lines
5.1 KiB
JavaScript
// $Id$
|
|
// vim:ft=javascript
|
|
|
|
ARG_WITH("libmbfl", "use external libmbfl", "no");
|
|
ARG_ENABLE("mbstring", "multibyte string functions", "no");
|
|
ARG_ENABLE("mbregex", "multibyte regex support", "no");
|
|
ARG_ENABLE("mbregex-backtrack", "check multibyte regex backtrack", "yes");
|
|
|
|
if (PHP_MBSTRING != "no") {
|
|
|
|
EXTENSION("mbstring", "mbstring.c php_unicode.c mb_gpc.c", PHP_MBSTRING_SHARED);
|
|
|
|
if (PHP_LIBMBFL != "no" &&
|
|
CHECK_HEADER_ADD_INCLUDE("mbfl/mbfilter.h", "CFLAGS_LIBMBFL", PHP_LIBMBFL + "\\include") &&
|
|
CHECK_LIB("mbfl.lib", "libmbfl", PHP_LIBMBFL + "\\lib")) {
|
|
|
|
ADD_FLAG("LIBS_MBSTRING", get_define("LIBS_LIBMBFL"));
|
|
ADD_FLAG("LDFLAGS_MBSTRING", get_define("LDFLAGS_LIBMBFL"));
|
|
ADD_FLAG("CFLAGS_MBSTRING", get_define("CFLAGS_LIBMBFL") +
|
|
" /I ext/mbstring/oniguruma /D NOT_RUBY=1 \
|
|
/D HAVE_STDARG_PROTOTYPES=1 /D HAVE_STDLIB_H \
|
|
/D HAVE_STRICMP /D EXPORT /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
|
|
|
|
PHP_INSTALL_HEADERS("ext/mbstring", "mbstring.h oniguruma/oniguruma.h php_mbregex.h php_onig_compat.h");
|
|
} else {
|
|
STDOUT.WriteLine("Using bundled libmbfl...");
|
|
|
|
ADD_FLAG("CFLAGS_MBSTRING", "-Iext/mbstring/libmbfl -Iext/mbstring/libmbfl/mbfl \
|
|
-Iext/mbstring/oniguruma /D NOT_RUBY=1 /D LIBMBFL_EXPORTS=1 \
|
|
/D HAVE_STDARG_PROTOTYPES=1 /D HAVE_CONFIG_H /D HAVE_STDLIB_H \
|
|
/D HAVE_STRICMP /D MBFL_DLL_EXPORT=1 /D EXPORT /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1")
|
|
|
|
FSO.CopyFile("ext\\mbstring\\libmbfl\\config.h.w32",
|
|
"ext\\mbstring\\libmbfl\\config.h", true);
|
|
|
|
ADD_SOURCES("ext/mbstring/libmbfl/filters", "html_entities.c \
|
|
mbfilter_7bit.c mbfilter_ascii.c mbfilter_base64.c mbfilter_big5.c \
|
|
mbfilter_byte2.c mbfilter_byte4.c mbfilter_cp1251.c mbfilter_cp1252.c \
|
|
mbfilter_cp866.c mbfilter_cp932.c mbfilter_cp936.c mbfilter_cp51932.c \
|
|
mbfilter_euc_cn.c mbfilter_euc_jp.c mbfilter_euc_jp_win.c mbfilter_euc_kr.c \
|
|
mbfilter_euc_tw.c mbfilter_htmlent.c mbfilter_hz.c mbfilter_iso2022_kr.c \
|
|
mbfilter_iso8859_1.c mbfilter_iso8859_10.c mbfilter_iso8859_13.c \
|
|
mbfilter_iso8859_14.c mbfilter_iso8859_15.c mbfilter_iso8859_16.c \
|
|
mbfilter_iso8859_2.c mbfilter_iso8859_3.c mbfilter_iso8859_4.c \
|
|
mbfilter_iso8859_5.c mbfilter_iso8859_6.c mbfilter_iso8859_7.c \
|
|
mbfilter_iso8859_8.c mbfilter_iso8859_9.c mbfilter_jis.c \
|
|
mbfilter_iso2022_jp_ms.c mbfilter_gb18030.c mbfilter_sjis_2004.c \
|
|
mbfilter_koi8r.c mbfilter_qprint.c mbfilter_sjis.c mbfilter_ucs2.c \
|
|
mbfilter_ucs4.c mbfilter_uhc.c mbfilter_utf16.c mbfilter_utf32.c \
|
|
mbfilter_utf7.c mbfilter_utf7imap.c mbfilter_utf8.c mbfilter_utf8_mobile.c \
|
|
mbfilter_koi8u.c mbfilter_cp1254.c mbfilter_euc_jp_2004.c \
|
|
mbfilter_uuencode.c mbfilter_armscii8.c mbfilter_cp850.c \
|
|
mbfilter_cp5022x.c mbfilter_sjis_open.c mbfilter_sjis_mobile.c \
|
|
mbfilter_sjis_mac.c \
|
|
mbfilter_iso2022jp_2004.c mbfilter_iso2022jp_mobile.c \
|
|
mbfilter_tl_jisx0201_jisx0208.c", "mbstring");
|
|
|
|
ADD_SOURCES("ext/mbstring/libmbfl/mbfl", "mbfilter.c mbfilter_8bit.c \
|
|
mbfilter_pass.c mbfilter_wchar.c mbfl_convert.c mbfl_encoding.c \
|
|
mbfl_filter_output.c mbfl_ident.c mbfl_language.c mbfl_memory_device.c \
|
|
mbfl_string.c mbfl_allocators.c", "mbstring");
|
|
|
|
ADD_SOURCES("ext/mbstring/libmbfl/nls", "nls_de.c nls_en.c nls_ja.c \
|
|
nls_kr.c nls_neutral.c nls_ru.c nls_uni.c nls_zh.c nls_hy.c \
|
|
nls_ua.c nls_tr.c", "mbstring");
|
|
|
|
PHP_INSTALL_HEADERS("ext/mbstring", "mbstring.h oniguruma/oniguruma.h php_mbregex.h php_onig_compat.h libmbfl/config.h libmbfl/mbfl/eaw_table.h libmbfl/mbfl/mbfilter.h libmbfl/mbfl/mbfilter_8bit.h libmbfl/mbfl/mbfilter_pass.h libmbfl/mbfl/mbfilter_wchar.h libmbfl/mbfl/mbfl_allocators.h libmbfl/mbfl/mbfl_consts.h libmbfl/mbfl/mbfl_convert.h libmbfl/mbfl/mbfl_defs.h libmbfl/mbfl/mbfl_encoding.h libmbfl/mbfl/mbfl_filter_output.h libmbfl/mbfl/mbfl_ident.h libmbfl/mbfl/mbfl_language.h libmbfl/mbfl/mbfl_memory_device.h libmbfl/mbfl/mbfl_string.h");
|
|
}
|
|
|
|
AC_DEFINE('HAVE_MBSTRING', 1, 'Have mbstring support');
|
|
AC_DEFINE('HAVE_MBSTR_CN', 1, 'CN');
|
|
AC_DEFINE('HAVE_MBSTR_JA', 1, 'JA');
|
|
AC_DEFINE('HAVE_MBSTR_KR', 1, 'KR');
|
|
AC_DEFINE('HAVE_MBSTR_RU', 1, 'RU');
|
|
AC_DEFINE('HAVE_MBSTR_TW', 1, 'TW');
|
|
|
|
FSO.CopyFile("ext\\mbstring\\oniguruma\\win32\\config.h",
|
|
"ext\\mbstring\\oniguruma\\config.h", true);
|
|
|
|
if (PHP_MBREGEX != "no") {
|
|
AC_DEFINE('HAVE_STDARG_PROTOTYPES', 1, 'have stdarg.h');
|
|
AC_DEFINE('HAVE_MBREGEX', 1);
|
|
AC_DEFINE('HAVE_ONIG', 1);
|
|
if (PHP_MBREGEX_BACKTRACK != "no") {
|
|
AC_DEFINE('USE_COMBINATION_EXPLOSION_CHECK', 1);
|
|
}
|
|
ADD_SOURCES("ext/mbstring/oniguruma", "regcomp.c regerror.c \
|
|
regenc.c regexec.c reggnu.c regparse.c regposerr.c \
|
|
regext.c regsyntax.c regtrav.c regversion.c st.c", "mbstring");
|
|
ADD_SOURCES("ext/mbstring/oniguruma/enc", "ascii.c big5.c \
|
|
euc_jp.c euc_kr.c euc_tw.c iso8859_1.c iso8859_2.c \
|
|
iso8859_3.c iso8859_4.c iso8859_5.c iso8859_6.c \
|
|
iso8859_7.c iso8859_8.c iso8859_9.c iso8859_10.c \
|
|
iso8859_11.c iso8859_13.c iso8859_14.c iso8859_15.c iso8859_16.c \
|
|
koi8.c koi8_r.c sjis.c utf8.c unicode.c utf16_be.c utf16_le.c \
|
|
utf32_be.c utf32_le.c gb18030.c", "mbstring");
|
|
ADD_SOURCES("ext/mbstring", "php_mbregex.c", "mbstring");
|
|
PHP_INSTALL_HEADERS("ext/mbstring", "php_mbregex.h");
|
|
}
|
|
}
|