meson.build (2907B)
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, libtalermerchantutil_dep, json_dep], 86 include_directories: [incdir, configuration_inc], 87 build_by_default: false, 88 install: false, 89 ) 90 test( 91 t, 92 test_tmp, 93 workdir: meson.current_build_dir(), 94 suite: ['util'], 95 is_parallel: false, 96 ) 97 endforeach 98 99 foreach t : talermerchantutil_tests_installcheck 100 101 test_tmp = executable( 102 t, 103 ['@0@.c'.format(t)], 104 dependencies: [gnunetutil_dep, libtalermerchantutil_dep, json_dep], 105 include_directories: [incdir, configuration_inc], 106 build_by_default: false, 107 install: false, 108 ) 109 test( 110 t, 111 test_tmp, 112 workdir: meson.current_build_dir(), 113 suite: ['util', 'installcheck'], 114 is_parallel: false, 115 ) 116 117 118 endforeach