meson.build (2945B)
1 # This build file is in the public domain 2 exchange_configs = ['currencies.conf', 'merchant-paths.conf'] 3 4 5 foreach c : exchange_configs 6 configure_file( 7 input: c, 8 output: c, 9 configuration: cdata, 10 install: true, 11 install_dir: pkgcfgdir, 12 ) 13 endforeach 14 15 16 libtalermerchantutil_SOURCES = [ 17 'amount_quantity.c', 18 'base_terms_parse.c', 19 'base_terms_serialize.c', 20 'contract_choice_parse.c', 21 'contract_choice_serialize.c', 22 'contract_parse.c', 23 'contract_serialize.c', 24 'contract_version_parse.c', 25 'json.c', 26 'merchant_parse.c', 27 'mfa.c', 28 'order_choice_parse.c', 29 'order_choice_serialize.c', 30 'order_parse.c', 31 'os_installation.c', 32 'product_parse.c', 33 'product_sold_serialize.c', 34 'template_parse.c', 35 'token_family_parse.c', 36 'token_family_serialize.c', 37 'util.c', 38 'validators.c', 39 'value_kinds.c', 40 ] 41 42 libtalermerchantutil = library( 43 'talermerchantutil', 44 libtalermerchantutil_SOURCES, 45 soversion: solibversions['libtalermerchantutil']['soversion'], 46 version: solibversions['libtalermerchantutil']['soversion'], 47 install_rpath: rpath_option, 48 dependencies: [ 49 gnunetutil_dep, 50 gnunetjson_dep, 51 talerkyclogic_dep, 52 talerutil_dep, 53 talerjson_dep, 54 json_dep, 55 ], 56 include_directories: [incdir, configuration_inc], 57 install: true, 58 install_dir: get_option('libdir'), 59 ) 60 61 libtalermerchantutil_dep = declare_dependency(link_with: libtalermerchantutil) 62 pkg.generate( 63 libtalermerchantutil, 64 url: 'https://taler.net', 65 description: 'GNU Taler merchant utilities library', 66 ) 67 68 executable( 69 'taler-merchant-config', 70 ['taler-merchant-config.c'], 71 dependencies: [libtalermerchantutil_dep, gnunetutil_dep], 72 include_directories: [incdir, configuration_inc], 73 install: true, 74 ) 75 76 talermerchantutil_tests = ['test_contract', 'test_validators'] 77 78 talermerchantutil_tests_installcheck = [] 79 80 foreach t : talermerchantutil_tests 81 82 test_tmp = executable( 83 t, 84 ['@0@.c'.format(t)], 85 dependencies: [gnunetutil_dep, talerutil_dep, 86 libtalermerchantutil_dep, json_dep], 87 include_directories: [incdir, configuration_inc], 88 build_by_default: false, 89 install: false, 90 ) 91 test( 92 t, 93 test_tmp, 94 workdir: meson.current_build_dir(), 95 suite: ['util'], 96 is_parallel: false, 97 ) 98 endforeach 99 100 foreach t : talermerchantutil_tests_installcheck 101 102 test_tmp = executable( 103 t, 104 ['@0@.c'.format(t)], 105 dependencies: [gnunetutil_dep, libtalermerchantutil_dep, json_dep], 106 include_directories: [incdir, configuration_inc], 107 build_by_default: false, 108 install: false, 109 ) 110 test( 111 t, 112 test_tmp, 113 workdir: meson.current_build_dir(), 114 suite: ['util', 'installcheck'], 115 is_parallel: false, 116 ) 117 118 119 endforeach