summaryrefslogtreecommitdiff
path: root/src/meson.build
blob: 8e3b7addf68684e712c1c7ea3eaaaa22829c3b32 (plain)
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
ssl_srcs = files(
  'ssl_ca.c',
  'ssl_cca.c',
  'ssl_certkey.c',
  'ssl_chainfile.c',
  'ssl_ciphers.c',
  'ssl_context.c',
  'ssl_env.c',
  'ssl_error.c',
  'ssl_io.c',
  'ssl_new.c',
  'ssl_params.c',
  'ssl_timeout.c',
  'ssl_verify.c',
)

ucspissl_lib = library(
  'ucspissl',
  'ucspissl.c',
  ssl_srcs,
  dependencies : [qlibs_dep, ssl_dep, crypto_dep],
)

install_headers('ucspissl.h')

if get_option('lib-only')
  subdir_done()
endif

fs = import('fs')

ucspi_ssl_conf = configuration_data()
ucspi_ssl_conf.set('auto_cadir', get_option('cadir'))
ucspi_ssl_conf.set('auto_cafile', get_option('cafile'))
ucspi_ssl_conf.set(
  'auto_dhfile',
  get_option('prefix') / get_option('datadir') / meson.project_name() / fs.name(get_option('dhfile')),
)
ucspi_ssl_conf.set('auto_ccafile', get_option('ccafile'))
ucspi_ssl_conf.set('auto_ciphers', get_option('ciphers'))
ucspi_ssl_conf.set('auto_keyfile', get_option('keyfile'))
ucspi_ssl_conf.set('auto_certfile', get_option('certfile'))
ucspi_ssl_conf.set('auto_certchainfile', get_option('certchainfile'))

configure_file(
  configuration : ucspi_ssl_conf,
  input : 'config.h.in',
  output : 'ucspissl-config.h',
  install_dir : get_option('includedir'),
  install_tag : 'devel',
)

deps = [qlibs_dep, dnsresolv_dep, ssl_dep, crypto_dep]

executable(
  'sslclient',
  'sslclient.c',
  'remoteinfo.c',
  link_with : ucspissl_lib,
  dependencies : deps,
  install : true,
)

common_srcs = files('ip4_bit.c', 'ip6_bit.c', 'remoteinfo.c', 'rules.c')

executable(
  'sslhandle',
  'sslhandle.c',
  'coe.c',
  'sslprint.c',
  common_srcs,
  link_with : ucspissl_lib,
  dependencies : deps,
  install : true,
)

executable(
  'sslperl',
  'sslperl.c',
  'coe.c',
  'sslhandle.c',
  common_srcs,
  link_with : ucspissl_lib,
  dependencies : [deps, perl_dep],
  install : true,
)

executable(
  'sslprint',
  'sslprint.c',
  'coe.c',
  'sslhandle.c',
  common_srcs,
  link_with : ucspissl_lib,
  dependencies : deps,
  install : true,
)

executable(
  'sslserver',
  'sslserver.c',
  common_srcs,
  link_with : ucspissl_lib,
  dependencies : deps,
  install : true,
)