meson.build (2565B)
1 # This file is in the public domain 2 3 install_data( 4 'challenger_db_postgres.conf', 5 install_dir: pkgcfgdir 6 ) 7 8 9 sqldir = get_option('datadir') / 'challenger' / 'sql' 10 11 # FIXME possibly provide this output in the tgz through dist script 12 run_command('make', '-f', 'Makefile.sql', 'all', check: true) 13 14 sql_DATA = [ 15 'versioning.sql', 16 'procedures.sql', 17 'challenger-0001.sql', 18 'challenger-0002.sql', 19 'drop.sql', 20 ] 21 22 install_data(sources: sql_DATA, install_dir: sqldir) 23 24 # This makes meson copy the files into the build directory for testing 25 foreach f : sql_DATA 26 configure_file(input: f, output: f, copy: true) 27 endforeach 28 29 30 31 libchallengerdb_SOURCES = [ 32 'address_get.c', 33 'client_add.c', 34 'client_modify.c', 35 'client_delete.c', 36 'client_check.c', 37 'create_tables.c', 38 'drop_tables.c', 39 'gc.c', 40 'info_get_token.c', 41 'token_add_token.c', 42 'setup_nonce.c', 43 'preflight.c', 44 'pg.c', 45 'authorize_start.c', 46 'challenge_set_address_and_pin.c', 47 'validate_solve_pin.c', 48 'validation_get.c', 49 'validation_get_pkce.c', 50 ] 51 libchallengerdb = library( 52 'challengerdb', 53 libchallengerdb_SOURCES, 54 soversion: solibversions['libchallengerdb']['soversion'], 55 version: solibversions['libchallengerdb']['soversion'], 56 install_rpath: rpath_option, 57 dependencies: [ 58 libchallengerutil_dep, 59 talerpq_dep, 60 gnunetutil_dep, 61 gnunetpq_dep, 62 pq_dep, 63 ], 64 include_directories: [incdir, configuration_inc], 65 install: true, 66 install_dir: get_option('libdir'), 67 ) 68 69 libchallengerdb_dep = declare_dependency(link_with: libchallengerdb) 70 pkg.generate( 71 libchallengerdb, 72 url: 'https://taler.net', 73 description: 'GNU Taler challenger DB library', 74 ) 75 76 executable( 77 'challenger-dbinit', 78 ['challenger-dbinit.c'], 79 dependencies: [libchallengerutil_dep, libchallengerdb_dep, gnunetutil_dep, talerutil_dep], 80 include_directories: [incdir, configuration_inc], 81 install: true, 82 ) 83 84 configure_file( 85 input: 'test_challenger_db_postgres.conf', 86 output: 'test_challenger_db_postgres.conf', 87 copy: true, 88 ) 89 90 test_challenger_db_postgres = executable( 91 'test_challenger_db-postgres', 92 ['test_challenger_db.c'], 93 dependencies: [gnunetutil_dep, libchallengerutil_dep, libchallengerdb_dep, gnunetpq_dep, talerutil_dep], 94 include_directories: [incdir, configuration_inc], 95 build_by_default: false, 96 install: false, 97 ) 98 test( 99 'test_challenger_db-postgres', 100 test_challenger_db_postgres, 101 workdir: meson.current_build_dir(), 102 suite: ['challengerdb'], 103 is_parallel: false, 104 )