meson.build (13737B)
1 # This build file is in the public domain 2 install_data('kudos.conf', 'merchant.conf', 'tops.conf', install_dir: pkgcfgdir) 3 4 5 configure_file( 6 input: 'taler-merchant-report-generator-email', 7 output: 'taler-merchant-report-generator-email', 8 install: true, 9 copy: true, 10 install_dir: get_option('bindir'), 11 ) 12 13 configure_file( 14 input: 'taler-merchant-report-generator-file', 15 output: 'taler-merchant-report-generator-file', 16 install: true, 17 copy: true, 18 install_dir: get_option('bindir'), 19 ) 20 21 22 executable( 23 'taler-merchant-depositcheck', 24 ['taler-merchant-depositcheck.c'], 25 dependencies: [ 26 libtalermerchantutil_dep, 27 talerutil_dep, 28 talerjson_dep, 29 libtalermerchantdb_dep, 30 talerpq_dep, 31 talerexchange_dep, 32 gnunetutil_dep, 33 gnunetjson_dep, 34 gnunetcurl_dep, 35 pq_dep, 36 curl_dep, 37 json_dep, 38 ], 39 include_directories: [incdir, configuration_inc], 40 install: true, 41 ) 42 43 44 executable( 45 'taler-merchant-exchangekeyupdate', 46 ['taler-merchant-exchangekeyupdate.c'], 47 dependencies: [ 48 libtalermerchantutil_dep, 49 talerutil_dep, 50 talerjson_dep, 51 libtalermerchantdb_dep, 52 talerpq_dep, 53 talerexchange_dep, 54 gnunetutil_dep, 55 gnunetjson_dep, 56 gnunetcurl_dep, 57 pq_dep, 58 curl_dep, 59 json_dep, 60 ], 61 include_directories: [incdir, configuration_inc], 62 install: true, 63 ) 64 65 66 67 taler_merchant_httpd_SOURCES = [ 68 'taler-merchant-httpd.c', 69 'taler-merchant-httpd_auth.c', 70 'taler-merchant-httpd_contract.c', 71 'taler-merchant-httpd_dispatcher.c', 72 'taler-merchant-httpd_exchanges.c', 73 'taler-merchant-httpd_get-orders-ORDER_ID.c', 74 'taler-merchant-httpd_get-sessions-SESSION_ID.c', 75 'taler-merchant-httpd_get-products-IMAGE_HASH-image.c', 76 'taler-merchant-httpd_get-config.c', 77 'taler-merchant-httpd_get-exchanges.c', 78 'taler-merchant-httpd_get-templates-TEMPLATE_ID.c', 79 'taler-merchant-httpd_get-units.c', 80 'taler-merchant-httpd_helper.c', 81 'taler-merchant-httpd_token-keys.c', 82 'taler-merchant-httpd_fountains.c', 83 'taler-merchant-httpd_get-fountain-info.c', 84 'taler-merchant-httpd_mhd.c', 85 'taler-merchant-httpd_get-terms.c', 86 'taler-merchant-httpd_mfa.c', 87 'taler-merchant-httpd_delete-private-accounts-H_WIRE.c', 88 'taler-merchant-httpd_delete-private-categories-CATEGORY_ID.c', 89 'taler-merchant-httpd_delete-private-units-UNIT.c', 90 'taler-merchant-httpd_delete-management-instances-INSTANCE.c', 91 'taler-merchant-httpd_delete-private-token.c', 92 'taler-merchant-httpd_delete-private-tokens-SERIAL.c', 93 'taler-merchant-httpd_delete-private-products-PRODUCT_ID.c', 94 'taler-merchant-httpd_delete-private-orders-ORDER_ID.c', 95 'taler-merchant-httpd_delete-private-fountains-FOUNTAIN_ID.c', 96 'taler-merchant-httpd_delete-private-otp-devices-DEVICE_ID.c', 97 'taler-merchant-httpd_delete-private-templates-TEMPLATE_ID.c', 98 'taler-merchant-httpd_delete-private-tokenfamilies-TOKEN_FAMILY_SLUG.c', 99 'taler-merchant-httpd_delete-private-transfers-TID.c', 100 'taler-merchant-httpd_delete-private-webhooks-WEBHOOK_ID.c', 101 'taler-merchant-httpd_get-private-accounts.c', 102 'taler-merchant-httpd_get-private-accounts-H_WIRE.c', 103 'taler-merchant-httpd_get-private-categories.c', 104 'taler-merchant-httpd_get-private-units.c', 105 'taler-merchant-httpd_get-private-categories-CATEGORY_ID.c', 106 'taler-merchant-httpd_get-private-units-UNIT.c', 107 'taler-merchant-httpd_get-management-instances.c', 108 'taler-merchant-httpd_get-management-instances-INSTANCE.c', 109 'taler-merchant-httpd_get-private-kyc.c', 110 'taler-merchant-httpd_kyc-order.c', 111 'taler-merchant-httpd_get-private-tokens.c', 112 'taler-merchant-httpd_get-private-pos.c', 113 'taler-merchant-httpd_get-private-products.c', 114 'taler-merchant-httpd_get-private-products-PRODUCT_ID.c', 115 'taler-merchant-httpd_get-private-orders.c', 116 'taler-merchant-httpd_get-private-orders-ORDER_ID.c', 117 'taler-merchant-httpd_get-private-fountains.c', 118 'taler-merchant-httpd_get-private-fountains-FOUNTAIN_ID.c', 119 'taler-merchant-httpd_get-private-otp-devices.c', 120 'taler-merchant-httpd_get-private-otp-devices-DEVICE_ID.c', 121 'taler-merchant-httpd_get-private-incoming.c', 122 'taler-merchant-httpd_get-private-incoming-ID.c', 123 'taler-merchant-httpd_get-private-transfers.c', 124 'taler-merchant-httpd_get-private-templates.c', 125 'taler-merchant-httpd_get-private-templates-TEMPLATE_ID.c', 126 'taler-merchant-httpd_get-private-tokenfamilies.c', 127 'taler-merchant-httpd_get-private-tokenfamilies-TOKEN_FAMILY_SLUG.c', 128 'taler-merchant-httpd_get-private-webhooks.c', 129 'taler-merchant-httpd_get-private-webhooks-WEBHOOK_ID.c', 130 'taler-merchant-httpd_patch-private-accounts-H_WIRE.c', 131 'taler-merchant-httpd_patch-private-categories-CATEGORY_ID.c', 132 'taler-merchant-httpd_patch-private-units-UNIT.c', 133 'taler-merchant-httpd_patch-management-instances-INSTANCE.c', 134 'taler-merchant-httpd_patch-private-orders-ORDER_ID-forget.c', 135 'taler-merchant-httpd_patch-private-fountains-FOUNTAIN_ID.c', 136 'taler-merchant-httpd_patch-private-otp-devices-DEVICE_ID.c', 137 'taler-merchant-httpd_patch-private-products-PRODUCT_ID.c', 138 'taler-merchant-httpd_patch-private-templates-TEMPLATE_ID.c', 139 'taler-merchant-httpd_patch-private-tokenfamilies-TOKEN_FAMILY_SLUG.c', 140 'taler-merchant-httpd_patch-private-webhooks-WEBHOOK_ID.c', 141 'taler-merchant-httpd_post-private-accounts.c', 142 'taler-merchant-httpd_post-private-categories.c', 143 'taler-merchant-httpd_post-private-units.c', 144 'taler-merchant-httpd_post-management-instances.c', 145 'taler-merchant-httpd_post-management-instances-INSTANCE-auth.c', 146 'taler-merchant-httpd_post-private-token.c', 147 'taler-merchant-httpd_post-private-orders-ORDER_ID-collect.c', 148 'taler-merchant-httpd_post-private-orders-ORDER_ID-refund.c', 149 'taler-merchant-httpd_post-private-orders-ORDER_ID-refund-external.c', 150 'taler-merchant-httpd_post-private-orders.c', 151 'taler-merchant-httpd_post-private-products.c', 152 'taler-merchant-httpd_post-private-fountains.c', 153 'taler-merchant-httpd_post-private-otp-devices.c', 154 'taler-merchant-httpd_post-private-products-PRODUCT_ID-lock.c', 155 'taler-merchant-httpd_post-private-templates.c', 156 'taler-merchant-httpd_post-private-tokenfamilies.c', 157 'taler-merchant-httpd_post-private-transfers.c', 158 'taler-merchant-httpd_post-private-webhooks.c', 159 'taler-merchant-httpd_post-private-accounts-H_WIRE-kycauth.c', 160 'taler-merchant-httpd_post-private-accept-tos-early.c', 161 'taler-merchant-httpd_post-challenge-ID.c', 162 'taler-merchant-httpd_post-challenge-ID-confirm.c', 163 'taler-merchant-httpd_post-orders-ORDER_ID-abort.c', 164 'taler-merchant-httpd_post-orders-ORDER_ID-claim.c', 165 'taler-merchant-httpd_post-fountain-withdraw.c', 166 'taler-merchant-httpd_post-orders-ORDER_ID-pay.c', 167 'taler-merchant-httpd_post-orders-ORDER_ID-paid.c', 168 'taler-merchant-httpd_post-orders-ORDER_ID-refund.c', 169 'taler-merchant-httpd_post-orders-ORDER_ID-unclaim.c', 170 'taler-merchant-httpd_post-templates-TEMPLATE_ID.c', 171 'taler-merchant-httpd_post-reports-REPORT_ID.c', 172 'taler-merchant-httpd_get-private-statistics-amount-SLUG.c', 173 'taler-merchant-httpd_get-private-statistics-counter-SLUG.c', 174 'taler-merchant-httpd_get-private-statistics-report-transactions.c', 175 'taler-merchant-httpd_qr.c', 176 'taler-merchant-httpd_get-webui.c', 177 'taler-merchant-httpd_delete-private-reports-REPORT_ID.c', 178 'taler-merchant-httpd_get-private-reports-REPORT_ID.c', 179 'taler-merchant-httpd_get-private-reports.c', 180 'taler-merchant-httpd_patch-private-reports-REPORT_ID.c', 181 'taler-merchant-httpd_post-private-reports.c', 182 'taler-merchant-httpd_delete-private-pots-POT_ID.c', 183 'taler-merchant-httpd_get-private-pots-POT_ID.c', 184 'taler-merchant-httpd_get-private-pots.c', 185 'taler-merchant-httpd_patch-private-pots-POT_ID.c', 186 'taler-merchant-httpd_post-private-pots.c', 187 'taler-merchant-httpd_delete-private-groups-GROUP_ID.c', 188 'taler-merchant-httpd_get-private-groups.c', 189 'taler-merchant-httpd_patch-private-groups-GROUP_ID.c', 190 'taler-merchant-httpd_post-private-groups.c', 191 'taler-merchant-httpd_statics.c', 192 'taler-merchant-httpd_get-private-donau.c', 193 'taler-merchant-httpd_post-private-donau.c', 194 'taler-merchant-httpd_delete-private-donau-DONAU_SERIAL.c', 195 ] 196 197 merchant_httpd = executable( 198 'taler-merchant-httpd', 199 taler_merchant_httpd_SOURCES, 200 dependencies: [ 201 donau_dep, 202 donaujson_dep, 203 libtalermerchantutil_dep, 204 libtalermerchantbank_dep, 205 talerutil_dep, 206 talerjson_dep, 207 libtalermerchantdb_dep, 208 talerpq_dep, 209 talerkyclogic_dep, 210 talerbank_dep, 211 talermhd_dep, 212 talerexchange_dep, 213 talertemplating_dep, 214 gnunetutil_dep, 215 gnunetjson_dep, 216 gnunetcurl_dep, 217 pq_dep, 218 mhd_dep, 219 json_dep, 220 qrencode_dep, 221 ], 222 include_directories: [incdir, configuration_inc], 223 install: true, 224 ) 225 226 227 228 executable( 229 'taler-merchant-kyccheck', 230 ['taler-merchant-kyccheck.c'], 231 dependencies: [ 232 libtalermerchantutil_dep, 233 talerutil_dep, 234 talerjson_dep, 235 libtalermerchantdb_dep, 236 talerpq_dep, 237 talerexchange_dep, 238 gnunetutil_dep, 239 gnunetjson_dep, 240 gnunetcurl_dep, 241 pq_dep, 242 curl_dep, 243 json_dep, 244 ], 245 include_directories: [incdir, configuration_inc], 246 install: true, 247 ) 248 249 250 251 executable( 252 'taler-merchant-reconciliation', 253 ['taler-merchant-reconciliation.c'], 254 dependencies: [ 255 libtalermerchantutil_dep, 256 talerutil_dep, 257 talerjson_dep, 258 libtalermerchantdb_dep, 259 talerpq_dep, 260 talerexchange_dep, 261 gnunetpq_dep, 262 gnunetutil_dep, 263 gnunetjson_dep, 264 gnunetcurl_dep, 265 pq_dep, 266 curl_dep, 267 ], 268 include_directories: [incdir, configuration_inc], 269 install: true, 270 ) 271 272 273 274 executable( 275 'taler-merchant-report-generator', 276 ['taler-merchant-report-generator.c'], 277 dependencies: [ 278 libtalermerchantutil_dep, 279 talerutil_dep, 280 talerjson_dep, 281 libtalermerchantdb_dep, 282 talerpq_dep, 283 talercurl_dep, 284 talerexchange_dep, 285 gnunetpq_dep, 286 gnunetutil_dep, 287 gnunetjson_dep, 288 gnunetcurl_dep, 289 pq_dep, 290 curl_dep, 291 json_dep, 292 ], 293 include_directories: [incdir, configuration_inc], 294 install: true, 295 ) 296 297 298 299 executable( 300 'taler-merchant-webhook', 301 ['taler-merchant-webhook.c'], 302 dependencies: [ 303 libtalermerchantutil_dep, 304 talerutil_dep, 305 talerjson_dep, 306 libtalermerchantdb_dep, 307 talermhd_dep, 308 talerpq_dep, 309 talerexchange_dep, 310 gnunetutil_dep, 311 gnunetjson_dep, 312 gnunetcurl_dep, 313 pq_dep, 314 curl_dep, 315 json_dep, 316 ], 317 include_directories: [incdir, configuration_inc], 318 install: true, 319 ) 320 321 322 executable( 323 'taler-merchant-wirewatch', 324 ['taler-merchant-wirewatch.c'], 325 dependencies: [ 326 libtalermerchantutil_dep, 327 libtalermerchantbank_dep, 328 talerutil_dep, 329 talerjson_dep, 330 libtalermerchantdb_dep, 331 talermhd_dep, 332 talerpq_dep, 333 talerexchange_dep, 334 gnunetutil_dep, 335 gnunetjson_dep, 336 gnunetcurl_dep, 337 pq_dep, 338 curl_dep, 339 json_dep, 340 ], 341 include_directories: [incdir, configuration_inc], 342 install: true, 343 ) 344 345 346 347 if donau_dep.found() 348 executable( 349 'taler-merchant-donaukeyupdate', 350 ['taler-merchant-donaukeyupdate.c'], 351 dependencies: [ 352 libtalermerchantutil_dep, 353 talerutil_dep, 354 talerjson_dep, 355 libtalermerchantdb_dep, 356 talermhd_dep, 357 talerpq_dep, 358 talerexchange_dep, 359 gnunetutil_dep, 360 gnunetjson_dep, 361 gnunetcurl_dep, 362 pq_dep, 363 curl_dep, 364 donau_dep, 365 ], 366 include_directories: [incdir, configuration_inc], 367 install: true, 368 ) 369 370 endif 371 372 373 test_merchant_kyc_order = executable( 374 'test_merchant_kyc_order', 375 [ 376 'test_merchant_kyc_order.c', 377 'taler-merchant-httpd_kyc-order.c', 378 ], 379 dependencies: [ 380 talerjson_dep, 381 gnunetutil_dep, 382 json_dep, 383 ], 384 include_directories: [incdir, configuration_inc], 385 install: false, 386 ) 387 test( 388 'test_merchant_kyc_order', 389 test_merchant_kyc_order, 390 suite: ['backend'], 391 ) 392 393 test_merchant_kyccheck = executable( 394 'test_merchant_kyccheck', 395 ['test_merchant_kyccheck.c'], 396 dependencies: [ 397 libtalermerchantutil_dep, 398 talerutil_dep, 399 talerjson_dep, 400 libtalermerchantdb_dep, 401 talerpq_dep, 402 talerexchange_dep, 403 gnunetutil_dep, 404 gnunetjson_dep, 405 gnunetcurl_dep, 406 pq_dep, 407 curl_dep, 408 json_dep, 409 ], 410 include_directories: [incdir, configuration_inc], 411 install: false, 412 ) 413 414 test('test_merchant_kyccheck', test_merchant_kyccheck, suite: ['backend']) 415 416 # Uses a disposable PostgreSQL cluster and real HTTP long polls. 417 test( 418 'kyc-refresh', 419 find_program('python3'), 420 args: [ 421 files('../backenddb/test_kyc_refresh.py'), 422 meson.project_source_root(), 423 meson.project_build_root(), 424 ], 425 depends: [merchant_httpd, test_merchant_kyccheck, gprocedures_sql, iprocedures_sql] + migration_sql, 426 suite: ['backenddb', 'integrationtests'], 427 timeout: 180, 428 )