File: config.w32

package info (click to toggle)
php8.4 8.4.11-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 208,108 kB
  • sloc: ansic: 1,060,628; php: 35,345; sh: 11,866; cpp: 7,201; pascal: 4,913; javascript: 3,091; asm: 2,810; yacc: 2,411; makefile: 689; xml: 446; python: 301; awk: 148
file content (62 lines) | stat: -rw-r--r-- 2,883 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// vim:ft=javascript

ARG_ENABLE("mbstring", "multibyte string functions", "no");
ARG_ENABLE("mbregex", "multibyte regex support", "no");

if (PHP_MBSTRING != "no") {

	if (CHECK_HEADER_ADD_INCLUDE("mbstring.h", "CFLAGS_MBSTRING", PHP_MBSTRING + ";" + PHP_PHP_BUILD + "\\include")) {
		EXTENSION("mbstring", "mbstring.c php_unicode.c mb_gpc.c", PHP_MBSTRING_SHARED);
		ADD_EXTENSION_DEP('mbstring', 'pcre');

		STDOUT.WriteLine("Using bundled libmbfl...");

		ADD_FLAG("CFLAGS_MBSTRING", "-Iext/mbstring -Iext/mbstring/libmbfl -Iext/mbstring/libmbfl/mbfl \
			/D HAVE_STRICMP /D MBFL_DLL_EXPORT=1 /DZEND_ENABLE_STATIC_TSRMLS_CACHE=1")

		ADD_FLAG("CFLAGS_BD_EXT_MBSTRING", "/utf-8")

		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_base64.c \
			mbfilter_cjk.c mbfilter_htmlent.c \
			mbfilter_qprint.c mbfilter_ucs2.c \
			mbfilter_ucs4.c mbfilter_utf16.c mbfilter_utf32.c \
			mbfilter_utf7.c mbfilter_utf7imap.c mbfilter_utf8.c \
			mbfilter_uuencode.c \
			mbfilter_singlebyte.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_language.c mbfl_memory_device.c \
			mbfl_string.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 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_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_language.h libmbfl/mbfl/mbfl_memory_device.h libmbfl/mbfl/mbfl_string.h");

		AC_DEFINE('HAVE_MBSTRING', 1, "Define to 1 if the PHP extension 'mbstring' is available.");

		if (PHP_MBREGEX != "no") {
			if (CHECK_HEADER_ADD_INCLUDE("oniguruma.h", "CFLAGS_MBSTRING", PHP_MBREGEX) &&
				CHECK_LIB("onig_a.lib;libonig_a.lib", "mbstring", PHP_MBSTRING)) {
				AC_DEFINE('HAVE_MBREGEX', 1, 'Define to 1 if mbstring has multibyte regex support enabled.');

				/* XXX libonig is only usable as a static library ATM, code change required to link with a DLL. */
				ADD_FLAG("CFLAGS_MBSTRING", "/DONIG_EXTERN=extern /DPHP_ONIG_BAD_KOI8_ENTRY=1 /utf-8");

				ADD_SOURCES("ext/mbstring", "php_mbregex.c", "mbstring");
				PHP_INSTALL_HEADERS("ext/mbstring", "php_mbregex.h php_onig_compat.h");
			} else {
				WARNING("mbregex not enabled; libraries and headers not found");
			}
		}

	} else {
		WARNING("mbstring not enabled; libraries and headers not found");
	}
}