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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
libgkm_sources = files(
'gkm-aes-key.c',
'gkm-aes-mechanism.c',
'gkm-assertion.c',
'gkm-attributes.c',
'gkm-certificate.c',
'gkm-certificate-key.c',
'gkm-credential.c',
'gkm-crypto.c',
'gkm-data-asn1.c',
'gkm-data-der.c',
'gkm-debug.c',
'gkm-dh-key.c',
'gkm-dh-mechanism.c',
'gkm-dh-private-key.c',
'gkm-dh-public-key.c',
'gkm-dsa-mechanism.c',
'gkm-ecdsa-mechanism.c',
'gkm-factory.c',
'gkm-generic-key.c',
'gkm-hkdf-mechanism.c',
'gkm-log.c',
'gkm-manager.c',
'gkm-memory-store.c',
'gkm-mock.c',
'gkm-module.c',
'gkm-null-key.c',
'gkm-null-mechanism.c',
'gkm-object.c',
'gkm-private-xsa-key.c',
'gkm-public-xsa-key.c',
'gkm-rsa-mechanism.c',
'gkm-secret.c',
'gkm-secret-key.c',
'gkm-serializable.c',
'gkm-session.c',
'gkm-sexp.c',
'gkm-sexp-key.c',
'gkm-store.c',
'gkm-test.c',
'gkm-timer.c',
'gkm-transaction.c',
'gkm-trust.c',
'gkm-util.c',
)
gkm_marshal = gnome.genmarshal('gkm-marshal',
sources: 'gkm-marshal.list',
prefix: 'gkm_marshal',
valist_marshallers: true,
)
libgkm_deps = [
glib_dep,
gobject_dep,
libgcrypt_dep,
libegg_dep,
]
libgkm = library('gkm',
name_prefix: '',
sources: [ libgkm_sources, gkm_marshal, ],
dependencies: libgkm_deps,
include_directories: config_h_inc,
install: true,
install_dir: gkr_pkglibdir,
)
libgkm_dep = declare_dependency(
link_with: libgkm,
include_directories: [
include_directories('.'),
include_directories('..'), # for gkm-marshal.h
]
)
# Tests
libgkm_mock_sources = files(
'mock-module.c',
'mock-locked-object.c',
)
libgkm_mock_deps = [
glib_dep,
gobject_dep,
libgkm_dep,
]
libgkm_mock_cflags = [
'-DSRCDIR="@0@"'.format(source_root),
]
libgkm_mock = library('gkm-mock',
sources: libgkm_mock_sources,
dependencies: libgkm_mock_deps,
c_args: libgkm_mock_cflags,
include_directories: config_h_inc,
)
libgkm_tests = [
'test-attributes',
'test-credential',
'test-data-asn1',
'test-data-der',
'test-memory-store',
'test-object',
'test-certificate',
'test-secret',
'test-sexp',
'test-store',
'test-timer',
'test-transaction',
]
libgkm_tests_cflags = [
'-DSRCDIR="@0@"'.format(source_root),
]
foreach test_name : libgkm_tests
test_bin = executable(test_name,
'@0@.c'.format(test_name),
dependencies: [ libgkm_dep, libgkm_deps ],
link_with: libgkm_mock,
c_args: libgkm_tests_cflags,
include_directories: config_h_inc,
)
test(test_name, test_bin,
suite: 'gkm',
)
endforeach
|