meson.build (9453B)
1 # This Makefile.am is in the public domain 2 3 pkgcfgadir = get_option('datadir') / 'taler-auditor' / 'config.d' 4 5 install_data('auditordb-postgres.conf', install_dir: pkgcfgadir) 6 7 sqldir = get_option('datadir') / 'taler-auditor' / 'sql' 8 9 procedures_sql = [ 10 'procedures-preamble.sql', 11 'auditor_do_get_auditor_progress.sql', 12 'auditor_do_get_balance.sql', 13 'auditor_do_gc_auditor.sql', 14 'commit.sql', 15 ] 16 17 auditor_0002_sql = [ 18 '0002-preamble.sql', 19 '0002-auditor_amount_arithmetic_inconsistency.sql', 20 '0002-auditor_bad_sig_losses.sql', 21 '0002-auditor_balances.sql', 22 '0002-auditor_closure_lags.sql', 23 '0002-auditor_coin_inconsistency.sql', 24 '0002-auditor_denomination_key_validity_withdraw_inconsistency.sql', 25 '0002-auditor_denomination_pending.sql', 26 '0002-auditor_denominations_without_sigs.sql', 27 '0002-auditor_deposit_confirmations.sql', 28 '0002-auditor_emergency.sql', 29 '0002-auditor_emergency_by_count.sql', 30 '0002-auditor_exchange_signkeys.sql', 31 '0002-auditor_fee_time_inconsistency.sql', 32 '0002-auditor_historic_denomination_revenue.sql', 33 '0002-auditor_historic_reserve_summary.sql', 34 '0002-auditor_misattribution_in_inconsistency.sql', 35 '0002-auditor_progress.sql', 36 '0002-auditor_purse_not_closed_inconsistencies.sql', 37 '0002-auditor_purses.sql', 38 '0002-auditor_refreshes_hanging.sql', 39 '0002-auditor_reserve_balance_insufficient_inconsistency.sql', 40 '0002-auditor_reserve_balance_summary_wrong_inconsistency.sql', 41 '0002-auditor_reserve_in_inconsistency.sql', 42 '0002-auditor_reserve_not_closed_inconsistency.sql', 43 '0002-auditor_reserves.sql', 44 '0002-auditor_row_inconsistency.sql', 45 '0002-auditor_row_minor_inconsistencies.sql', 46 '0002-auditor_wire_format_inconsistency.sql', 47 '0002-auditor_wire_out_inconsistency.sql', 48 '0002-auditor_pending_deposits.sql', 49 '0002-auditor_early_aggregation.sql', 50 'commit.sql', 51 ] 52 53 auditor_0003_sql = [ 54 '0003-preamble.sql', 55 '0003-auditor_aml_holds.sql', 56 '0003-auditor_aml_staff.sql', 57 '0003-auditor_kycauth_in_inconsistency.sql', 58 'commit.sql', 59 ] 60 61 auditor_0004_sql = [ 62 '0004-preamble.sql', 63 '0004-auditor_reserve_in_inconsistency.sql', 64 '0004-auditor_kycauth_in_inconsistency.sql', 65 '0004-auditor_pending_deposits.sql', 66 '0004-auditor_purse_not_closed_inconsistencies.sql', 67 'commit.sql', 68 ] 69 70 generated_sql = [ 71 ['versioning.sql', ['versioning.sql']], 72 ['drop.sql', ['drop.sql']], 73 ['restart.sql', ['restart.sql']], 74 ['procedures.sql', procedures_sql], 75 ['auditor-0001.sql', ['auditor-0001.sql']], 76 ['auditor-0002.sql', auditor_0002_sql], 77 ['auditor-0003.sql', auditor_0003_sql], 78 ['auditor-0004.sql', auditor_0004_sql], 79 ] 80 81 foreach g : generated_sql 82 custom_target( 83 'gen-auditordb-' + g[0], 84 input: g[1], 85 output: g[0], 86 capture: true, 87 command: ['../exchangedb/sql-schema/amalgamate-sql.sh', '@INPUT@'], 88 install: true, 89 install_dir: sqldir, 90 ) 91 endforeach 92 93 libtalerauditordb = library( 94 'talerauditordb', 95 [ 96 'create_tables.c', 97 'delete_aml_hold.c', 98 'delete_denomination_balance.c', 99 'delete_auditor_closure_lag.c', 100 'delete_early_aggregation.c', 101 'delete_generic.c', 102 'delete_pending_deposit.c', 103 'delete_purse_info.c', 104 'delete_kycauth_in_inconsistency.c', 105 'delete_reserve_in_inconsistency.c', 106 'delete_wire_out_inconsistency_if_matching.c', 107 'delete_reserve_info.c', 108 'drop_tables.c', 109 'event_listen.c', 110 'event_notify.c', 111 'gc.c', 112 'iterate_aml_holds.c', 113 'iterate_aml_staff.c', 114 'iterate_amount_arithmetic_inconsistencies.c', 115 'iterate_auditor_aml_holds.c', 116 'iterate_auditor_closure_lags.c', 117 'get_auditor_progress.c', 118 'iterate_bad_sig_losses.c', 119 'get_balance.c', 120 'iterate_balances.c', 121 'iterate_coin_inconsistencies.c', 122 'get_denomination_balance.c', 123 'iterate_denomination_key_validity_withdraw_inconsistencies.c', 124 'iterate_denomination_pending.c', 125 'iterate_denominations_without_sigs.c', 126 'iterate_deposit_confirmations.c', 127 'iterate_emergencies_by_count.c', 128 'iterate_emergencies.c', 129 'iterate_exchange_signkeys.c', 130 'iterate_fee_time_inconsistencies.c', 131 'get_kycauth_in_inconsistency.c', 132 'iterate_kycauth_in_inconsistencies.c', 133 'iterate_misattribution_in_inconsistencies.c', 134 'iterate_progress_points.c', 135 'get_purse_info.c', 136 'iterate_purse_not_closed_inconsistencies.c', 137 'iterate_purses.c', 138 'iterate_reserve_balance_insufficient_inconsistencies.c', 139 'iterate_reserve_balance_summary_wrong_inconsistencies.c', 140 'get_reserve_info.c', 141 'iterate_reserve_in_inconsistencies.c', 142 'iterate_reserve_not_closed_inconsistencies.c', 143 'iterate_reserves.c', 144 'iterate_row_inconsistencies.c', 145 'iterate_row_minor_inconsistencies.c', 146 'iterate_wire_format_inconsistencies.c', 147 'iterate_wire_out_inconsistencies.c', 148 'helper.c', 149 'insert_aml_hold.c', 150 'insert_aml_staff.c', 151 'insert_amount_arithmetic_inconsistency.c', 152 'insert_auditor_closure_lags.c', 153 'insert_auditor_progress.c', 154 'insert_bad_sig_losses.c', 155 'insert_balance.c', 156 'insert_coin_inconsistency.c', 157 'insert_denomination_balance.c', 158 'insert_denomination_key_validity_withdraw_inconsistency.c', 159 'insert_denomination_pending.c', 160 'insert_denominations_without_sigs.c', 161 'insert_deposit_confirmation.c', 162 'insert_early_aggregation.c', 163 'insert_emergency_by_count.c', 164 'insert_emergency.c', 165 'insert_exchange_signkey.c', 166 'insert_fee_time_inconsistency.c', 167 'insert_kycauth_in_inconsistency.c', 168 'insert_historic_denom_revenue.c', 169 'insert_historic_reserve_revenue.c', 170 'insert_misattribution_in_inconsistency.c', 171 'insert_pending_deposit.c', 172 'insert_purse_info.c', 173 'insert_purse_not_closed_inconsistencies.c', 174 'insert_reserve_balance_insufficient_inconsistency.c', 175 'insert_reserve_balance_summary_wrong_inconsistency.c', 176 'insert_reserve_info.c', 177 'insert_reserve_in_inconsistency.c', 178 'insert_reserve_not_closed_inconsistency.c', 179 'insert_row_inconsistency.c', 180 'insert_row_minor_inconsistencies.c', 181 'insert_wire_format_inconsistency.c', 182 'insert_wire_out_inconsistency.c', 183 'pg.c', 184 'preflight.c', 185 'iterate_early_aggregations.c', 186 'iterate_historic_denom_revenue.c', 187 'iterate_historic_reserve_revenue.c', 188 'iterate_pending_deposits.c', 189 'iterate_purse_expired.c', 190 'get_reserve_in_inconsistency.c', 191 'start.c', 192 'update_aml_hold.c', 193 'update_denomination_balance.c', 194 'update_to_suppressed.c', 195 'update_purse_info.c', 196 'update_reserve_info.c', 197 ], 198 soversion: solibversions['libtalerauditordb']['soversion'], 199 version: solibversions['libtalerauditordb']['soversion'], 200 install_rpath: rpath_option, 201 dependencies: [ 202 libtalerpq_dep, 203 libtalerutil_dep, 204 gnunetpq_dep, 205 gnunetutil_dep, 206 pq_dep, 207 ], 208 include_directories: [incdir, configuration_inc], 209 install: true, 210 install_dir: get_option('libdir'), 211 ) 212 213 libtalerauditordb_dep = declare_dependency(link_with: libtalerauditordb) 214 pkg.generate( 215 libtalerauditordb, 216 url: 'https://taler.net', 217 description: 'GNU Taler auditor DB library', 218 ) 219 220 221 test_auditordb_checkpoints = executable( 222 'test_auditordb_checkpoints-postgres', 223 ['test_auditordb_checkpoints.c'], 224 install_rpath: rpath_option, 225 dependencies: [ 226 libtalerutil_dep, 227 libtalerpq_dep, 228 gnunetpq_dep, 229 gnunetutil_dep, 230 libtalerauditordb_dep, 231 pq_dep, 232 ], 233 include_directories: [incdir, configuration_inc], 234 install: false, 235 ) 236 test( 237 'test_auditordb_checkpoints-postgres', 238 test_auditordb_checkpoints, 239 workdir: meson.current_build_dir(), 240 suite: ['auditordb'], 241 is_parallel: false, 242 ) 243 244 245 test_auditordb = executable( 246 'test_auditordb', 247 ['test_auditordb.c'], 248 install_rpath: rpath_option, 249 dependencies: [ 250 libtalerutil_dep, 251 libtalerpq_dep, 252 gnunetutil_dep, 253 libtalerauditordb_dep, 254 pq_dep, 255 ], 256 include_directories: [incdir, configuration_inc], 257 install: false, 258 ) 259 test( 260 'test_auditordb', 261 test_auditordb, 262 workdir: meson.current_build_dir(), 263 suite: ['auditordb'], 264 is_parallel: false, 265 ) 266 267 test_auditordb_regression = executable( 268 'test_auditordb_regression', 269 ['test_auditordb_regression.c'], 270 install_rpath: rpath_option, 271 dependencies: [ 272 libtalerutil_dep, 273 libtalerpq_dep, 274 gnunetpq_dep, 275 gnunetutil_dep, 276 libtalerauditordb_dep, 277 pq_dep, 278 ], 279 include_directories: [incdir, configuration_inc], 280 install: false, 281 ) 282 test( 283 'test_auditordb_regression', 284 test_auditordb_regression, 285 workdir: meson.current_build_dir(), 286 suite: ['auditordb'], 287 is_parallel: false, 288 ) 289 290 configure_file( 291 input: 'test-auditor-db-postgres.conf', 292 output: 'test-auditor-db-postgres.conf', 293 copy: true, 294 )