aboutsummaryrefslogtreecommitdiff
path: root/src/dht/meson.build
blob: f42ae354c1e580d56d1d1c1f297383dddf12156c (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
libgnunetdht_src = ['dht_api.c']

gnunetservicedht_src = ['gnunet-service-dht.c',
                        'gnunet-service-dht_datacache.c',
                        'gnunet-service-dht_neighbours.c',
                        'gnunet-service-dht_routing.c']

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

if get_option('monolith')
  foreach p : libgnunetdht_src + gnunetservicedht_src
    gnunet_src += 'dht/' + p
  endforeach
endif

libgnunetdht = library('gnunetdht',
        libgnunetdht_src,
        soversion: '4',
        version: '4.0.0',
        dependencies: libgnunetutil_dep,
        include_directories: [incdir, configuration_inc],
        install: true,
        install_dir: get_option('libdir'))
libgnunetdht_dep = declare_dependency(link_with : libgnunetdht)
pkg.generate(libgnunetdht, url: 'https://www.gnunet.org',
           description : 'Provides API for the R5N distributed hash table')

shared_module('gnunet_plugin_block_dht',
        ['plugin_block_dht.c'],
        dependencies: [libgnunetutil_dep,
                       libgnunethello_dep,
                       libgnunetblock_dep,
                       libgnunetblockgroup_dep],
        include_directories: [incdir, configuration_inc],
              install:true,
              install_dir: get_option('libdir')/'gnunet')

executable ('gnunet-dht',
            gnunetservicedht_src,
            dependencies: [libgnunetdht_dep, libgnunetutil_dep,
                           libgnunetblock_dep,
                           m_dep,
                           libgnunetdatacache_dep,
                           libgnunetstatistics_dep,
                           libgnunetblockgroup_dep,
                           libgnunethello_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('bindir'))
executable ('gnunet-dht-put',
            ['gnunet-dht-put.c'],
            dependencies: [libgnunetdht_dep, libgnunetutil_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('bindir'))
executable ('gnunet-dht-get',
            ['gnunet-dht-get.c'],
            dependencies: [libgnunetdht_dep, libgnunetutil_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('bindir'))
executable ('gnunet-dht-monitor',
            ['gnunet-dht-monitor.c'],
            dependencies: [libgnunetdht_dep, libgnunetutil_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('bindir'))
executable ('gnunet-dht-hello',
            ['gnunet-dht-hello.c'],
            dependencies: [libgnunetdht_dep, libgnunetutil_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('bindir'))
executable ('gnunet-service-dht',
            gnunetservicedht_src,
            dependencies: [libgnunetdht_dep, libgnunetutil_dep,
                           libgnunetblock_dep,
                           m_dep,
                           libgnunetdatacache_dep,
                           libgnunetstatistics_dep,
                           libgnunetblockgroup_dep,
                           libgnunethello_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('libdir')/'gnunet'/'libexec')