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
|
project(
'ucspi-ssl',
'c',
meson_version : '>=1.3.0',
version : '0.12.10',
default_options : ['c_std=gnu99'],
)
qlibs_dep = dependency('qlibs', version : '>=22', fallback : ['fehQlibs', 'qlibs_dep'])
ssl_dep = dependency('libssl', version : '>=1.1')
crypto_dep = dependency('libcrypto')
if not get_option('lib-only')
dnsresolv_dep = dependency(
'dnsresolv',
version : '>=22',
fallback : ['fehQlibs', 'qlibs_dnsresolv_dep'],
)
perl = find_program('perl', required : false)
use_perl = get_option('sslperl').require(perl.found())
if use_perl.allowed()
perl_cc_runres = run_command(perl, '-MExtUtils::Embed', '-e', 'ccopts', '--', check : false)
perl_ld_runres = run_command(perl, '-MExtUtils::Embed', '-e', 'ldopts', '--', check : false)
perl_version = run_command(perl, '-MConfig', '-e', 'print $Config{version}', check : false)
use_perl = use_perl.require(perl_cc_runres.returncode() == 0)
use_perl = use_perl.require(perl_ld_runres.returncode() == 0)
use_perl = use_perl.require(perl_version.returncode() == 0)
if use_perl.allowed()
perl_dep = declare_dependency(
compile_args : perl_cc_runres.stdout().split(),
link_args : perl_ld_runres.stdout().split(),
version : perl_version.stdout(),
)
else
perl_dep = disabler()
endif
else
perl_dep = disabler()
endif
endif
subdir('src')
if not get_option('lib-only')
subdir('script')
endif
subdir('man')
ucspissl_dep = declare_dependency(include_directories : 'src', link_with : ucspissl_lib)
pkgc = import('pkgconfig')
pkgc.generate(ucspissl_lib)
if not get_option('lib-only')
if get_option('dhfile') != ''
install_data(get_option('dhfile'))
endif
s = {'build_sslperl' : perl_dep.found()}
if perl_dep.found()
s += {'perl_version' : perl_dep.version()}
endif
s += {
'cadir' : get_option('cadir'),
'cafile' : get_option('cafile'),
'ccafile' : get_option('ccafile'),
'certchainfile' : get_option('certchainfile'),
'certfile' : get_option('certfile'),
'ciphers' : get_option('ciphers'),
'dhfile' : get_option('dhfile'),
'keyfile' : get_option('keyfile'),
}
summary(s, bool_yn : true)
endif
|