meson.build (1732B)
1 # We collect all sources for the 'big' libgnunet when traversing 2 # the subdirectories. 3 if get_option('monolith') 4 gnunet_src = [] 5 endif 6 7 subdir('util') 8 subdir('statistics') 9 subdir('testbed') 10 subdir('arm') 11 subdir('peerstore') 12 subdir('nat') 13 subdir('nat-auto') 14 subdir('pils') 15 subdir('transport') 16 subdir('core') 17 subdir('nse') 18 subdir('hostlist') 19 subdir('topology') 20 subdir('dns') 21 subdir('identity') 22 subdir('namecache') 23 subdir('namestore') 24 subdir('datacache') 25 subdir('datastore') 26 subdir('dht') 27 subdir('cadet') 28 subdir('seti') 29 subdir('setu') 30 subdir('regex') 31 subdir('revocation') 32 subdir('vpn') 33 subdir('gns') 34 subdir('zonemaster') 35 subdir('fs') 36 subdir('exit') 37 subdir('pt') 38 subdir('reclaim') 39 subdir('messenger') 40 subdir('rest') 41 42 if not get_option('monolith') 43 subdir_done() 44 endif 45 46 # Compile the 'big' libgnunet shared library. 47 # It must be compiled with HAVE_GNUNET_MONOLITH to enable 48 # the correct service macros that do not inject main() functions 49 # to services. 50 libgnunet = library( 51 'gnunet', 52 gnunet_src, 53 dependencies: [ 54 mhd_dep, 55 extractor_dep, 56 sodium_dep, 57 gcrypt_dep, 58 curl_dep, 59 json_dep, 60 zlib_dep, 61 sqlite_dep, 62 unistr_dep, 63 ltdl_dep, 64 idn_dep, 65 libgnunetutil_dep, 66 libgnunethello_dep, 67 libgnunetjson_dep, 68 libgnunetblock_dep, 69 libgnunetblockgroup_dep, 70 libgnunetregexblock_dep, 71 libgnunetgnsrecord_dep, 72 libgnunetgnsrecordjson_dep, 73 jose_dep, 74 m_dep, 75 pthread_dep, 76 libgnunetcurl_dep, 77 ], 78 c_args: ['-DHAVE_GNUNET_MONOLITH=1'], 79 include_directories: [incdir, configuration_inc, exitdir], 80 ) 81 libgnunet_dep = declare_dependency(link_with: libgnunet)