aboutsummaryrefslogtreecommitdiff
path: root/src/namecache/meson.build
blob: aa92454e6b8fc321d75ba31d39ce436955332ff6 (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
libgnunetnamecache_src = ['namecache_api.c']

gnunetnamecache_src = ['gnunet-namecache.c']
gnunetservicenamecache_src = ['gnunet-service-namecache.c']

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


if get_option('monolith')
  foreach p : libgnunetnamecache_src + libgnunetpluginnamecache_sqlite_src + gnunetservicenamecache_src
    gnunet_src += 'namecache/' + p
  endforeach
  subdir_done()
endif

libgnunetnamecache = library('gnunetnamecache',
        libgnunetnamecache_src,
        soversion: '0',
        version: '0.0.0',
        dependencies: [libgnunetutil_dep,
                       libgnunetgnsrecord_dep],
        include_directories: [incdir, configuration_inc],
        install: true,
        install_dir: get_option('libdir'))
libgnunetnamecache_dep = declare_dependency(link_with : libgnunetnamecache)
pkg.generate(libgnunetnamecache, url: 'https://www.gnunet.org',
             description : 'Provides API for storing GNS records to a cache')

shared_module('gnunet_plugin_namecache_sqlite',
        ['plugin_namecache_sqlite.c'],
        dependencies: [libgnunetutil_dep,
                       libgnunetgnsrecord_dep,
                       sqlite_dep,
                       libgnunetsq_dep],
        include_directories: [incdir, configuration_inc],
        install: true,
        install_dir: get_option('libdir')/'gnunet')

if pq_dep.found()
  shared_module('gnunet_plugin_namecache_postgres',
          ['plugin_namecache_postgres.c'],
          dependencies: [libgnunetutil_dep,
                         libgnunetgnsrecord_dep,
                         pq_dep,
                         libgnunetpq_dep],
          include_directories: [incdir, configuration_inc],
          install: true,
          install_dir: get_option('libdir')/'gnunet')
endif

executable ('gnunet-namecache',
            gnunetnamecache_src,
            dependencies: [libgnunetnamecache_dep,
                           libgnunetutil_dep,
                           libgnunetgnsrecord_dep,
                           libgnunetidentity_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('bindir'))
executable ('gnunet-service-namecache',
            gnunetservicenamecache_src,
            dependencies: [libgnunetnamecache_dep,
                           libgnunetutil_dep,
                           libgnunetgnsrecord_dep,
                           libgnunetstatistics_dep],
            include_directories: [incdir, configuration_inc],
            install: true,
            install_dir: get_option('libdir')/'gnunet'/'libexec')