File: config.w32

package info (click to toggle)
php-solr 2.6.0%2B2.4.0-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 4,956 kB
  • sloc: ansic: 40,168; xml: 2,223; php: 1,987; pascal: 8; makefile: 3
file content (88 lines) | stat: -rw-r--r-- 3,432 bytes parent folder | download | duplicates (4)
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
// $Id$
// vim:ft=javascript

// config.w32 for solr extension

ARG_ENABLE('solr', 'Whether to enable Apache Solr support', 'no');
ARG_ENABLE('solr-debug', 'Whether to enable Solr debugging support', 'no');

if(PHP_SOLR != 'no')
{
	if(!CHECK_LIB('libcurl_a.lib;libcurl.lib', 'solr', PHP_SOLR) || 
		!CHECK_HEADER_ADD_INCLUDE('curl/easy.h', 'CFLAGS_SOLR')) {
		WARNING('solr was not enabled; curl libraries and/or headers not found');
		PHP_SOLR = "no";
	}
	if(!CHECK_LIB('ssleay32.lib', 'solr', PHP_SOLR) 
		|| !CHECK_LIB('libeay32.lib', 'solr', PHP_SOLR)) {
		WARNING('solr was not enabled; openssl libraries not found');
		PHP_SOLR = "no";
	}
	if(!CHECK_LIB('winmm.lib', 'solr', PHP_SOLR) 
		|| !CHECK_LIB('wldap32.lib', 'solr', PHP_SOLR)) {
		WARNING('solr not enabled; ldap libraries not found');
		PHP_SOLR = "no";
	}
	if(!((PHP_ZLIB == 'no' && CHECK_LIB('zlib_a.lib;zlib.lib', 'solr', PHP_SOLR))
		|| (PHP_ZLIB_SHARED && CHECK_LIB('zlib.lib', 'solr', PHP_SOLR)) 
		|| (PHP_ZLIB == 'yes' && !PHP_ZLIB_SHARED))) {
		WARNING('solr not enabled; zlib libraries not found');
		PHP_SOLR = "no";
	}
	if(PHP_LIBXML == 'no' || !ADD_EXTENSION_DEP('solr', 'libxml')) {
		WARNING('solr was not enabled; libxml is not enabled');
		PHP_SOLR = "no";
	} else {
		if (!CHECK_LIB("libxml2_a_dll.lib;libxml2_a.lib", "solr", PHP_SOLR) ||
			!CHECK_LIB("libiconv_a.lib;iconv_a.lib;libiconv.lib;iconv.lib", "solr", PHP_SOLR) ||
			!CHECK_HEADER_ADD_INCLUDE('libxml/parser.h', 'CFLAGS_SOLR', PHP_PHP_BUILD + "\\include\\libxml2") ||
			!CHECK_HEADER_ADD_INCLUDE('libxml/tree.h', 'CFLAGS_SOLR', PHP_PHP_BUILD + "\\include\\libxml2")
			) {
			WARNING('solr was not enabled; libxml or iconv not found');
			PHP_SOLR = "no";
		}
	}
	if(PHP_JSON == 'no' || !ADD_EXTENSION_DEP('solr', 'json')) {
		WARNING('solr was not enabled; json is not enabled');
		PHP_SOLR = "no";
	}
	if(PHP_SOLR != 'no') {
		if(PHP_SOLR_DEBUG == 'no') {
			AC_DEFINE('SOLR_DEBUG_OFF', 1, 'Solr debugging set to off');
		} else {
			AC_DEFINE('SOLR_DEBUG', 1, 'Solr debugging set to on');
		}
		
		var dll = get_define('PHPDLL');
        var old_conf_dir = configure_module_dirname;
        
        /* XXX tricky job here, override configure_module_dirname, define the basic extension,
            then set it back*/
        if (null != dll.match(/^php5/)) {
            configure_module_dirname = configure_module_dirname + "\\src\\php5";
        } else if (null != dll.match(/^php7/)) {
            configure_module_dirname = configure_module_dirname + "\\src\\php7";
        } else {
            ERROR("Cannot match any known PHP version with '" + dll + "'");
        }

		EXTENSION('solr', 
					'php_solr.c php_solr_client.c php_solr_document.c php_solr_exception.c ' +
					'php_solr_input_document.c php_solr_object.c php_solr_params.c php_solr_query.c ' + 
					'php_solr_response.c php_solr_utils.c solr_functions_client.c solr_functions_debug.c ' +
					'solr_functions_document.c solr_functions_helpers.c solr_functions_params.c ' + 
					'solr_functions_response.c solr_string.c php_solr_dismax_query.c ' +
					'php_solr_collapse_function.c'
		);
		
		configure_module_dirname = old_conf_dir;

		ADD_FLAG('CFLAGS_SOLR', '/I"' + configure_module_dirname + '" /D CURL_STATICLIB /D LIBXML_STATICLIB');
		AC_DEFINE('HAVE_SOLR', 1, 'Solr support');

		if (!PHP_SOLR_SHARED) {
			ADD_FLAG("CFLAGS_SOLR", "/D LIBXML_STATIC");
		}
		ADD_EXTENSION_DEP('solr', 'libxml');
	}
}