Makefile.am (11499B)
1 # This Makefile.am is in the public domain 2 AM_CPPFLAGS = -I$(top_srcdir)/src/include 3 4 plugindir = $(libdir)/taler-merchant 5 6 pkgcfgdir = $(prefix)/share/taler-merchant/config.d/ 7 8 pkgcfg_DATA = \ 9 merchantdb-postgres.conf 10 11 sqldir = $(prefix)/share/taler-merchant/sql/ 12 13 sqlinputs = \ 14 pg_*.sql \ 15 procedures.sql.in 16 17 sql_DATA = \ 18 versioning.sql \ 19 procedures.sql \ 20 merchant-0001.sql \ 21 merchant-0002.sql \ 22 merchant-0003.sql \ 23 merchant-0004.sql \ 24 merchant-0005.sql \ 25 merchant-0006.sql \ 26 merchant-0007.sql \ 27 merchant-0008.sql \ 28 merchant-0009.sql \ 29 merchant-0010.sql \ 30 merchant-0011.sql \ 31 merchant-0012.sql \ 32 merchant-0013.sql \ 33 merchant-0014.sql \ 34 merchant-0015.sql \ 35 merchant-0016.sql \ 36 merchant-0017.sql \ 37 merchant-0018.sql \ 38 merchant-0019.sql \ 39 merchant-0020.sql \ 40 merchant-0021.sql \ 41 merchant-0022.sql \ 42 merchant-0023.sql \ 43 merchant-0024.sql \ 44 merchant-0025.sql \ 45 merchant-0026.sql \ 46 merchant-0027.sql \ 47 drop.sql 48 49 BUILT_SOURCES = \ 50 procedures.sql 51 52 procedures.sql: procedures.sql.in pg_*.sql 53 chmod +w $@ || true 54 gcc -E -P -undef - < procedures.sql.in 2>/dev/null | sed -e "s/--.*//" | awk 'NF' - >$@ 55 chmod ugo-w $@ 56 57 58 if HAVE_POSTGRESQL 59 if HAVE_GNUNETPQ 60 plugin_LTLIBRARIES = \ 61 libtaler_plugin_merchantdb_postgres.la 62 endif 63 endif 64 65 if USE_COVERAGE 66 AM_CFLAGS = --coverage -O0 67 XLIB = -lgcov 68 endif 69 70 lib_LTLIBRARIES = \ 71 libtalermerchantdb.la 72 73 libtalermerchantdb_la_SOURCES = \ 74 merchantdb_plugin.c \ 75 merchantdb_helper.c 76 77 libtalermerchantdb_la_LIBADD = \ 78 $(LIBGCRYPT_LIBS) \ 79 -ltalerutil \ 80 -ltalerpq \ 81 -lgnunetutil \ 82 -lltdl \ 83 $(XLIB) 84 85 libtalermerchantdb_la_LDFLAGS = \ 86 $(POSTGRESQL_LDFLAGS) \ 87 -version-info 4:1:2 \ 88 -no-undefined 89 90 libtaler_plugin_merchantdb_postgres_la_SOURCES = \ 91 pg_account_kyc_get_status.h pg_account_kyc_get_status.c \ 92 pg_account_kyc_set_failed.h pg_account_kyc_set_failed.c \ 93 pg_account_kyc_set_status.h pg_account_kyc_set_status.c \ 94 pg_activate_account.h pg_activate_account.c \ 95 pg_check_transfer_exists.h pg_check_transfer_exists.c \ 96 pg_delete_category.h pg_delete_category.c \ 97 pg_delete_contract_terms.h pg_delete_contract_terms.c \ 98 pg_delete_exchange_accounts.h pg_delete_exchange_accounts.c \ 99 pg_delete_instance_private_key.h pg_delete_instance_private_key.c \ 100 pg_delete_login_token.h pg_delete_login_token.c \ 101 pg_delete_order.h pg_delete_order.c \ 102 pg_delete_otp.h pg_delete_otp.c \ 103 pg_delete_pending_webhook.h pg_delete_pending_webhook.c \ 104 pg_delete_product.h pg_delete_product.c \ 105 pg_delete_template.h pg_delete_template.c \ 106 pg_delete_token_family.h pg_delete_token_family.c \ 107 pg_delete_transfer.h pg_delete_transfer.c \ 108 pg_delete_webhook.h pg_delete_webhook.c \ 109 pg_expire_locks.h pg_expire_locks.c \ 110 pg_gc.h pg_gc.c \ 111 pg_get_kyc_limits.h pg_get_kyc_limits.c \ 112 pg_get_kyc_status.h pg_get_kyc_status.c \ 113 pg_helper.h pg_helper.c \ 114 pg_inactivate_account.h pg_inactivate_account.c \ 115 pg_increase_refund.h pg_increase_refund.c \ 116 pg_insert_account.h pg_insert_account.c \ 117 pg_insert_category.h pg_insert_category.c \ 118 pg_insert_unit.h pg_insert_unit.c \ 119 pg_insert_contract_terms.h pg_insert_contract_terms.c \ 120 pg_insert_deposit.h pg_insert_deposit.c \ 121 pg_insert_deposit_confirmation.h pg_insert_deposit_confirmation.c \ 122 pg_insert_deposit_to_transfer.h pg_insert_deposit_to_transfer.c \ 123 pg_insert_exchange_account.h pg_insert_exchange_account.c \ 124 pg_insert_exchange_keys.h pg_insert_exchange_keys.c \ 125 pg_insert_exchange_signkey.h pg_insert_exchange_signkey.c \ 126 pg_insert_instance.h pg_insert_instance.c \ 127 pg_insert_issued_token.h pg_insert_issued_token.c \ 128 pg_insert_login_token.h pg_insert_login_token.c \ 129 pg_insert_order.h pg_insert_order.c \ 130 pg_insert_order_lock.h pg_insert_order_lock.c \ 131 pg_insert_otp.h pg_insert_otp.c \ 132 pg_insert_pending_webhook.h pg_insert_pending_webhook.c \ 133 pg_insert_product.h pg_insert_product.c \ 134 pg_insert_refund_proof.h pg_insert_refund_proof.c \ 135 pg_insert_spent_token.h pg_insert_spent_token.c \ 136 pg_insert_template.h pg_insert_template.c \ 137 pg_update_unit.h pg_update_unit.c \ 138 pg_insert_token_family.h pg_insert_token_family.c \ 139 pg_insert_token_family_key.h pg_insert_token_family_key.c \ 140 pg_insert_transfer.h pg_insert_transfer.c \ 141 pg_insert_transfer_details.h pg_insert_transfer_details.c \ 142 pg_insert_webhook.h pg_insert_webhook.c \ 143 pg_delete_unit.h pg_delete_unit.c \ 144 pg_lookup_units.h pg_lookup_units.c \ 145 pg_select_unit.h pg_select_unit.c \ 146 pg_lookup_mfa_challenge.h pg_lookup_mfa_challenge.c \ 147 pg_solve_mfa_challenge.h pg_solve_mfa_challenge.c \ 148 pg_update_mfa_challenge.h pg_update_mfa_challenge.c \ 149 pg_create_mfa_challenge.h pg_create_mfa_challenge.c \ 150 pg_lock_product.h pg_lock_product.c \ 151 pg_lookup_account.h pg_lookup_account.c \ 152 pg_lookup_all_products.h pg_lookup_all_products.c \ 153 pg_lookup_categories.h pg_lookup_categories.c \ 154 pg_lookup_contract_terms.h pg_lookup_contract_terms.c \ 155 pg_lookup_contract_terms2.h pg_lookup_contract_terms2.c \ 156 pg_lookup_contract_terms3.h pg_lookup_contract_terms3.c \ 157 pg_lookup_deposits.h pg_lookup_deposits.c \ 158 pg_lookup_deposits_by_contract_and_coin.h pg_lookup_deposits_by_contract_and_coin.c \ 159 pg_lookup_deposits_by_order.h pg_lookup_deposits_by_order.c \ 160 pg_lookup_expected_transfers.h pg_lookup_expected_transfers.c \ 161 pg_lookup_instance_auth.h pg_lookup_instance_auth.c \ 162 pg_lookup_instances.h pg_lookup_instances.c \ 163 pg_lookup_login_tokens.h pg_lookup_login_tokens.c \ 164 pg_lookup_order.h pg_lookup_order.c \ 165 pg_lookup_order_by_fulfillment.h pg_lookup_order_by_fulfillment.c \ 166 pg_lookup_order_status.h pg_lookup_order_status.c \ 167 pg_lookup_order_status_by_serial.h pg_lookup_order_status_by_serial.c \ 168 pg_lookup_order_summary.h pg_lookup_order_summary.c \ 169 pg_lookup_orders.h pg_lookup_orders.c \ 170 pg_lookup_otp_devices.h pg_lookup_otp_devices.c \ 171 pg_lookup_pending_deposits.h pg_lookup_pending_deposits.c \ 172 pg_lookup_pending_webhooks.h pg_lookup_pending_webhooks.c \ 173 pg_lookup_product.h pg_lookup_product.c \ 174 pg_lookup_product_image.h pg_lookup_product_image.c \ 175 pg_lookup_products.h pg_lookup_products.c \ 176 pg_lookup_refund_proof.h pg_lookup_refund_proof.c \ 177 pg_lookup_refunds.h pg_lookup_refunds.c \ 178 pg_lookup_refunds_detailed.h pg_lookup_refunds_detailed.c \ 179 pg_lookup_spent_tokens_by_order.h pg_lookup_spent_tokens_by_order.c \ 180 pg_lookup_template.h pg_lookup_template.c \ 181 pg_lookup_templates.h pg_lookup_templates.c \ 182 pg_lookup_token_families.h pg_lookup_token_families.c \ 183 pg_lookup_token_family.h pg_lookup_token_family.c \ 184 pg_lookup_token_family_key.h pg_lookup_token_family_key.c \ 185 pg_lookup_token_family_keys.h pg_lookup_token_family_keys.c \ 186 pg_lookup_transfer_details.h pg_lookup_transfer_details.c \ 187 pg_lookup_transfer_details_by_order.h pg_lookup_transfer_details_by_order.c \ 188 pg_lookup_transfer_summary.h pg_lookup_transfer_summary.c \ 189 pg_lookup_transfers.h pg_lookup_transfers.c \ 190 pg_lookup_webhook.h pg_lookup_webhook.c \ 191 pg_lookup_webhook_by_event.h pg_lookup_webhook_by_event.c \ 192 pg_lookup_webhooks.h pg_lookup_webhooks.c \ 193 pg_lookup_wire_fee.h pg_lookup_wire_fee.c \ 194 pg_mark_contract_paid.h pg_mark_contract_paid.c \ 195 pg_mark_order_wired.h pg_mark_order_wired.c \ 196 pg_select_order_blinded_sigs.h pg_select_order_blinded_sigs.c \ 197 pg_purge_instance.h pg_purge_instance.c \ 198 pg_refund_coin.h pg_refund_coin.c \ 199 pg_select_account.h pg_select_account.c \ 200 pg_select_account_by_uri.h pg_select_account_by_uri.c \ 201 pg_select_accounts.h pg_select_accounts.c \ 202 pg_select_accounts_by_exchange.h pg_select_accounts_by_exchange.c \ 203 pg_select_category.h pg_select_category.c \ 204 pg_select_category_by_name.h pg_select_category_by_name.c \ 205 pg_select_exchange_keys.h pg_select_exchange_keys.c \ 206 pg_select_login_token.h pg_select_login_token.c \ 207 pg_select_open_transfers.h pg_select_open_transfers.c \ 208 pg_select_otp.h pg_select_otp.c \ 209 pg_select_otp_serial.h pg_select_otp_serial.c \ 210 pg_select_wirewatch_accounts.h pg_select_wirewatch_accounts.c \ 211 pg_store_wire_fee_by_exchange.h pg_store_wire_fee_by_exchange.c \ 212 pg_unlock_inventory.h pg_unlock_inventory.c \ 213 pg_update_account.h pg_update_account.c \ 214 pg_update_category.h pg_update_category.c \ 215 pg_update_contract_session.h pg_update_contract_session.c \ 216 pg_update_contract_terms.h pg_update_contract_terms.c \ 217 pg_update_deposit_confirmation_status.h pg_update_deposit_confirmation_status.c \ 218 pg_update_donau_instance_receipts_amount.h pg_update_donau_instance_receipts_amount.c \ 219 pg_update_instance.h pg_update_instance.c \ 220 pg_update_instance_auth.h pg_update_instance_auth.c \ 221 pg_update_otp.h pg_update_otp.c \ 222 pg_update_pending_webhook.h pg_update_pending_webhook.c \ 223 pg_update_product.h pg_update_product.c \ 224 pg_update_template.h pg_update_template.c \ 225 pg_update_token_family.h pg_update_token_family.c \ 226 pg_update_transfer_status.h pg_update_transfer_status.c \ 227 pg_finalize_transfer_status.h pg_finalize_transfer_status.c \ 228 pg_delete_donau_instance.h pg_delete_donau_instance.c \ 229 pg_insert_order_blinded_sigs.h pg_insert_order_blinded_sigs.c \ 230 pg_update_webhook.h pg_update_webhook.c \ 231 pg_update_wirewatch_progress.h pg_update_wirewatch_progress.c \ 232 pg_lookup_statistics_counter_by_bucket.h pg_lookup_statistics_counter_by_bucket.c \ 233 pg_lookup_statistics_counter_by_interval.h pg_lookup_statistics_counter_by_interval.c \ 234 pg_lookup_statistics_amount_by_bucket.h pg_lookup_statistics_amount_by_bucket.c \ 235 pg_lookup_statistics_amount_by_interval.h pg_lookup_statistics_amount_by_interval.c \ 236 plugin_merchantdb_postgres.c 237 238 if HAVE_DONAU 239 libtaler_plugin_merchantdb_postgres_la_SOURCES += \ 240 pg_insert_donau_instance.h pg_insert_donau_instance.c \ 241 pg_check_donau_instance.h pg_check_donau_instance.c \ 242 pg_select_donau_instances.h pg_select_donau_instances.c \ 243 pg_select_all_donau_instances.h pg_select_all_donau_instances.c \ 244 pg_select_donau_instances_filtered.h pg_select_donau_instances_filtered.c \ 245 pg_select_donau_instance_by_serial.h pg_select_donau_instance_by_serial.c \ 246 pg_lookup_donau_keys.h pg_lookup_donau_keys.c \ 247 pg_lookup_order_charity.h pg_lookup_order_charity.c \ 248 pg_upsert_donau_keys.h pg_upsert_donau_keys.c \ 249 pg_update_donau_instance.h pg_update_donau_instance.c 250 endif 251 252 libtaler_plugin_merchantdb_postgres_la_LIBADD = \ 253 $(LTLIBINTL) 254 libtaler_plugin_merchantdb_postgres_la_LDFLAGS = \ 255 $(TALER_PLUGIN_LDFLAGS) \ 256 -ltalerexchange \ 257 -ltalerpq \ 258 -ltalerutil \ 259 -ltalerjson \ 260 -ltalermhd \ 261 -lgnunetpq \ 262 -lgnunetjson \ 263 -lpq \ 264 -lgnunetutil \ 265 $(XLIB) 266 267 if HAVE_DONAU 268 libtaler_plugin_merchantdb_postgres_la_LDFLAGS += \ 269 -ldonau 270 endif 271 272 if HAVE_POSTGRESQL 273 if HAVE_GNUNETPQ 274 check_PROGRAMS = \ 275 test-merchantdb-postgres 276 endif 277 endif 278 279 test_merchantdb_postgres_SOURCES = \ 280 test_merchantdb.c 281 282 test_merchantdb_postgres_LDFLAGS = \ 283 -ltalerutil \ 284 -ltalerjson \ 285 -lgnunetjson \ 286 -lgnunetutil \ 287 -ljansson \ 288 $(XLIB) 289 290 check_SCRIPTS = \ 291 test_webhook_trigger.sh 292 293 test_merchantdb_postgres_LDADD = \ 294 $(top_builddir)/src/util/libtalermerchantutil.la \ 295 $(top_builddir)/src/backenddb/libtalermerchantdb.la 296 297 AM_TESTS_ENVIRONMENT=export TALER_MERCHANT_PREFIX=$${TALER_MERCHANT_PREFIX:-@libdir@};export PATH=$${TALER_MERCHANT_PREFIX:-@prefix@}/bin:$$PATH; 298 299 TESTS = \ 300 $(check_PROGRAMS) \ 301 $(check_SCRIPTS) 302 303 EXTRA_DIST = \ 304 test-merchantdb-postgres.conf \ 305 merchantdb-postgres.conf \ 306 $(sqlinputs) \ 307 $(sql_DATA) \ 308 $(check_SCRIPTS)