sync

Backup service to store encrypted wallet databases (experimental)
Log | Files | Refs | Submodules | README | LICENSE

meson.build (2731B)


      1 # This build file is in the public domain
      2 install_data('sync_db_postgres.conf', install_dir: pkgcfgdir)
      3 
      4 sqldir = get_option('datadir') / 'sync' / 'sql'
      5 
      6 # FIXME possibly provide this output in the tgz through dist script
      7 run_command('make', '-f', 'Makefile.sql', 'all', check: true)
      8 
      9 sqlfiles = ['versioning.sql', 'procedures.sql', 'sync-0001.sql', 'drop.sql']
     10 
     11 install_data(sources: sqlfiles, install_dir: sqldir)
     12 
     13 # This makes meson copy the files into the build directory for testing
     14 foreach f : sqlfiles
     15     configure_file(input: f, output: f, copy: true)
     16 endforeach
     17 
     18 
     19 libsyncdb_SOURCES = [
     20     'syncdb_pg.c',
     21     'syncdb_drop_tables.c',
     22     'syncdb_create_tables.c',
     23     'syncdb_preflight.c',
     24     'syncdb_gc.c',
     25     'syncdb_append_block_TR.c',
     26     'syncdb_delete_block_TR.c',
     27     'syncdb_update_block_TR.c',
     28     'syncdb_lookup_account_TR.c',
     29     'syncdb_lookup_block_range_TR.c',
     30     'syncdb_lookup_block_TR.c',
     31     'syncdb_increment_lifetime_TR.c',
     32     'syncdb_lookup_pending_payments_by_account.c',
     33     'syncdb_store_payment_TR.c',
     34     'syncdb_store_object_TR.c',
     35     'syncdb_lookup_object.c',
     36     'syncdb_lookup_object_uid.c',
     37 ]
     38 libsyncdb = library(
     39     'syncdb',
     40     libsyncdb_SOURCES,
     41     soversion: solibversions['libsyncdb']['soversion'],
     42     version: solibversions['libsyncdb']['soversion'],
     43     install_rpath: rpath_option,
     44     dependencies: [
     45         libsyncutil_dep,
     46         talerpq_dep,
     47         talerutil_dep,
     48         gnunetutil_dep,
     49         gnunetpq_dep,
     50         pq_dep,
     51     ],
     52     include_directories: [incdir, configuration_inc],
     53     install: true,
     54     install_dir: get_option('libdir'),
     55 )
     56 
     57 libsyncdb_dep = declare_dependency(link_with: libsyncdb)
     58 pkg.generate(
     59     libsyncdb,
     60     url: 'https://taler.net',
     61     description: 'GNU Taler sync DB library',
     62 )
     63 
     64 executable(
     65     'sync-dbinit',
     66     ['sync-dbinit.c'],
     67     dependencies: [
     68         libsyncutil_dep,
     69         talerutil_dep,
     70         libsyncdb_dep,
     71         talerpq_dep,
     72         gnunetutil_dep,
     73         gnunetpq_dep,
     74         pq_dep,
     75         gcrypt_dep,
     76     ],
     77     include_directories: [incdir, configuration_inc],
     78     install: true,
     79 )
     80 
     81 
     82 test_syncdb_postgres = executable(
     83     'test-syncdb-postgres',
     84     ['test_sync_db.c'],
     85     install_rpath: rpath_option,
     86     dependencies: [
     87         libsyncdb_dep,
     88         libsyncutil_dep,
     89         talerutil_dep,
     90         gnunetutil_dep,
     91         gnunetpq_dep,
     92     ],
     93     include_directories: [incdir, configuration_inc],
     94     install: false,
     95 )
     96 test(
     97     'test-syncdb-postgres',
     98     test_syncdb_postgres,
     99     workdir: meson.current_build_dir(),
    100     suite: ['syncdb', 'installcheck'],
    101     is_parallel: false,
    102 )
    103 configure_file(
    104     input: 'test_sync_db_postgres.conf',
    105     output: 'test_sync_db_postgres.conf',
    106     copy: true,
    107 )