aboutsummaryrefslogtreecommitdiff
path: root/src/contrib/service/consensus/meson.build
blob: 86cc0663b0922b8eda9a64b234bf996154949dc5 (plain) (blame)
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
libgnunetconsensus_src = ['consensus_api.c']

gnunetserviceconsensus_src = ['gnunet-service-consensus.c']

configure_file(input : 'consensus.conf.in',
               output : 'consensus.conf',
               configuration : cdata,
               install: true,
               install_dir: pkgcfgdir)

# FIXME needs new seti/setu
if get_option('monolith')
  #foreach p : libgnunetconsensus_src + gnunetserviceconsensus_src
  #  gnunet_src += 'consensus/' + p
  #endforeach
endif

libgnunetconsensus = shared_library('gnunetconsensus',
        libgnunetconsensus_src,
        soversion: '0',
        version: '0.0.0',
        dependencies: libgnunetutil_dep,
        include_directories: [incdir, configuration_inc],
        install: true,
        install_dir: get_option('libdir'))
pkg.generate(libgnunetconsensus, url: 'https://www.gnunet.org',
             description : 'Provides API for accessing the consensus service')
libgnunetarm_dep = declare_dependency(link_with : libgnunetarm)
libgnunetconsensus_dep = declare_dependency(link_with : libgnunetconsensus)

shared_module('gnunet_plugin_block_consensus',
              ['plugin_block_consensus.c'],
              dependencies: [libgnunetutil_dep,
                             libgnunetblock_dep],
              include_directories: [incdir, configuration_inc],
              install:true,
              install_dir: get_option('libdir')/'gnunet')

executable ('gnunet-service-consensus',
            gnunetserviceconsensus_src,
            dependencies: [libgnunetconsensus_dep,
                           libgnunetutil_dep,
                           libgnunetset_dep,
                           libgnunetstatistics_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('libdir') / 'gnunet' / 'libexec')

# FIXME do we need evil stuff and ENABLE_MALICIOUS?

testconsensusapi = executable ('test_consensus_api',
            ['test_consensus_api.c'],
            dependencies: [libgnunetconsensus_dep,
                           libgnunetutil_dep,
                           libgnunettesting_dep],
            include_directories: [incdir, configuration_inc],
            install: false)

configure_file(input : 'test_consensus.conf',
               output : 'test_consensus.conf',
               configuration : cdata,
               install: false)

test('test_consensus_api', testconsensusapi,
  workdir: meson.current_build_dir(),
  suite: ['consensus', 'contrib'])