challenger

OAuth 2.0-based authentication service that validates user can receive messages at a certain address
Log | Files | Refs | Submodules | README | LICENSE

meson.build (3010B)


      1 # This file is in the public domain
      2 
      3 install_data('challenger_db_postgres.conf', install_dir: pkgcfgdir)
      4 
      5 
      6 sqldir = get_option('datadir') / 'challenger' / 'sql'
      7 
      8 procedures_sql = [
      9   'procedures-prelude.sql',
     10   'challenger_do_challenge_set_address_and_pin.sql',
     11   'challenger_do_validate_and_solve_pin.sql',
     12   'commit.sql',
     13 ]
     14 
     15 generated_sql = [
     16     ['versioning.sql', ['versioning.sql']],
     17     ['drop.sql', ['drop.sql']],
     18     ['procedures.sql', procedures_sql],
     19     ['challenger-0001.sql', ['challenger-0001.sql']],
     20     ['challenger-0002.sql', ['challenger-0002.sql']],
     21     ['challenger-0003.sql', ['challenger-0003.sql']],
     22     ['challenger-0004.sql', ['challenger-0004.sql']],
     23 ]
     24 
     25 foreach g : generated_sql
     26     custom_target(
     27         'gen-challengerdb-' + g[0],
     28         input: g[1],
     29         output: g[0],
     30         capture: true,
     31         command: ['./amalgamate-sql.sh', '@INPUT@'],
     32         install: true,
     33         install_dir: sqldir,
     34     )
     35 endforeach
     36 
     37 libchallengerdb_SOURCES = [
     38     'address_get.c',
     39     'client_add.c',
     40     'client_modify.c',
     41     'client_delete.c',
     42     'client_check.c',
     43     'create_tables.c',
     44     'drop_tables.c',
     45     'gc.c',
     46     'info_get_token.c',
     47     'token_add_token.c',
     48     'setup_nonce.c',
     49     'preflight.c',
     50     'pg.c',
     51     'authorize_start.c',
     52     'challenge_set_address_and_pin.c',
     53     'validate_solve_pin.c',
     54     'validation_get.c',
     55     'validation_get_pkce.c',
     56 ]
     57 libchallengerdb = library(
     58     'challengerdb',
     59     libchallengerdb_SOURCES,
     60     soversion: solibversions['libchallengerdb']['soversion'],
     61     version: solibversions['libchallengerdb']['soversion'],
     62     install_rpath: rpath_option,
     63     dependencies: [
     64         libchallengerutil_dep,
     65         talerpq_dep,
     66         gnunetutil_dep,
     67         gnunetpq_dep,
     68         pq_dep,
     69     ],
     70     include_directories: [incdir, configuration_inc],
     71     install: true,
     72     install_dir: get_option('libdir'),
     73 )
     74 
     75 libchallengerdb_dep = declare_dependency(link_with: libchallengerdb)
     76 pkg.generate(
     77     libchallengerdb,
     78     url: 'https://taler.net',
     79     description: 'GNU Taler challenger DB library',
     80 )
     81 
     82 executable(
     83     'challenger-dbinit',
     84     ['challenger-dbinit.c'],
     85     dependencies: [
     86         libchallengerutil_dep,
     87         libchallengerdb_dep,
     88         gnunetutil_dep,
     89         talerutil_dep,
     90     ],
     91     include_directories: [incdir, configuration_inc],
     92     install: true,
     93 )
     94 
     95 configure_file(
     96     input: 'test_challenger_db_postgres.conf',
     97     output: 'test_challenger_db_postgres.conf',
     98     copy: true,
     99 )
    100 
    101 test_challenger_db_postgres = executable(
    102     'test_challenger_db-postgres',
    103     ['test_challenger_db.c'],
    104     dependencies: [
    105         gnunetutil_dep,
    106         libchallengerutil_dep,
    107         libchallengerdb_dep,
    108         gnunetpq_dep,
    109         talerutil_dep,
    110     ],
    111     include_directories: [incdir, configuration_inc],
    112     build_by_default: false,
    113     install: false,
    114 )
    115 test(
    116     'test_challenger_db-postgres',
    117     test_challenger_db_postgres,
    118     workdir: meson.current_build_dir(),
    119     suite: ['challengerdb'],
    120     is_parallel: false,
    121 )