meson.build (4010B)
1 libgnunetnamestore_src = ['namestore_api.c', 'namestore_api_monitor.c'] 2 3 gnunetservicenamestore_src = ['gnunet-service-namestore.c'] 4 5 configure_file( 6 input: 'namestore.conf.in', 7 output: 'namestore.conf', 8 configuration: cdata, 9 install: true, 10 install_dir: pkgcfgdir, 11 ) 12 13 14 if get_option('monolith') 15 foreach p : libgnunetnamestore_src + gnunetservicenamestore_src 16 gnunet_src += 'namestore/' + p 17 endforeach 18 endif 19 20 libgnunetnamestore = library( 21 'gnunetnamestore', 22 libgnunetnamestore_src, 23 soversion: solibversions['libgnunetnamestore']['soversion'], 24 version: solibversions['libgnunetnamestore']['version'], 25 install_rpath: rpath_option, 26 dependencies: [ 27 libgnunetutil_dep, 28 libgnunetgnsrecord_dep, 29 libgnunetidentity_dep, 30 ], 31 include_directories: [incdir, configuration_inc], 32 install: true, 33 install_dir: get_option('libdir'), 34 ) 35 libgnunetnamestore_dep = declare_dependency(link_with: libgnunetnamestore) 36 pkg.generate( 37 libgnunetnamestore, 38 url: 'https://www.gnunet.org', 39 description: 'Provides API for storing GNS records to a database', 40 ) 41 42 executable( 43 'gnunet-service-namestore', 44 gnunetservicenamestore_src, 45 install_rpath: rpath_option, 46 dependencies: [ 47 libgnunetnamestore_dep, 48 libgnunetutil_dep, 49 libgnunetnamecache_dep, 50 libgnunetgnsrecord_dep, 51 libgnunetidentity_dep, 52 libgnunetstatistics_dep, 53 ], 54 include_directories: [incdir, configuration_inc], 55 install: true, 56 install_dir: get_option('libdir') / 'gnunet' / 'libexec', 57 ) 58 59 configure_file( 60 copy: true, 61 input: 'test_namestore_api.conf', 62 output: 'test_namestore_api.conf', 63 ) 64 65 configure_file( 66 copy: true, 67 input: 'test_namestore_api_sqlite.conf', 68 output: 'test_namestore_api_sqlite.conf', 69 ) 70 71 configure_file( 72 copy: true, 73 input: 'test_namestore_api_postgres.conf', 74 output: 'test_namestore_api_postgres.conf', 75 ) 76 77 if false 78 79 namestoreapitestnames = [ 80 'test_namestore_api_lookup_nick', 81 'test_namestore_api_monitoring', 82 'test_namestore_api_monitoring_existing', 83 'test_namestore_api_remove', 84 'test_namestore_api_remove_not_existing_record', 85 'test_namestore_api_store', 86 'test_namestore_api_store_update', 87 'test_namestore_api_zone_iteration', 88 'test_namestore_api_zone_iteration_nick', 89 'test_namestore_api_zone_iteration_specific_zone', 90 'test_namestore_api_zone_iteration_stop', 91 'test_namestore_api_zone_to_name', 92 'test_namestore_api_edit_records', 93 ] 94 95 foreach tn : namestoreapitestnames 96 t = executable( 97 tn + '_sqlite', 98 [tn + '.c'], 99 dependencies: [ 100 libgnunettesting_dep, 101 libgnunetutil_dep, 102 libgnunetgnsrecord_dep, 103 libgnunetidentity_dep, 104 libgnunetnamestore_dep, 105 ], 106 include_directories: [incdir, configuration_inc], 107 install: false, 108 ) 109 test( 110 tn + '_sqlite', 111 t, 112 workdir: meson.current_build_dir(), 113 is_parallel: false, 114 suite: 'namestore', 115 ) 116 if pq_dep.found() 117 t_pq = executable( 118 tn + '_postgres', 119 [tn + '.c'], 120 dependencies: [ 121 libgnunettesting_dep, 122 libgnunetutil_dep, 123 libgnunetgnsrecord_dep, 124 libgnunetidentity_dep, 125 libgnunetnamestore_dep, 126 ], 127 include_directories: [incdir, configuration_inc], 128 install: false, 129 ) 130 test( 131 tn + '_postgres', 132 t_pq, 133 workdir: meson.current_build_dir(), 134 is_parallel: false, 135 suite: 'namestore', 136 ) 137 endif 138 endforeach 139 140 endif 141 142 # FIXME perf tests missing