xref: /openbmc/estoraged/src/meson.build (revision 9c2e8362a5958524ca9cb6249e425673b5c288f4)
1phosphor_dbus_interfaces_dep = dependency('phosphor-dbus-interfaces')
2phosphor_logging_dep = dependency('phosphor-logging')
3
4sdbusplus_dep = dependency('sdbusplus', required: false, include_type: 'system')
5if not sdbusplus_dep.found()
6    sdbusplus_proj = subproject('sdbusplus', required: true)
7    sdbusplus = sdbusplus_proj.get_variable('sdbusplus_dep')
8    sdbusplus = sdbusplus.as_system('system')
9endif
10
11stdplus_dep = dependency('stdplus')
12
13boost_dep = dependency('boost', version: '>=1.78.0', include_type: 'system')
14
15subdir('erase')
16
17libeStoraged_deps = [
18    dependency('libcryptsetup'),
19    dependency('openssl'),
20    phosphor_dbus_interfaces_dep,
21    phosphor_logging_dep,
22    sdbusplus_dep,
23    stdplus_dep,
24    boost_dep,
25]
26
27libeStoraged_lib = static_library(
28    'eStoraged-lib',
29    'estoraged.cpp',
30    'util.cpp',
31    'getConfig.cpp',
32    include_directories: eStoraged_headers,
33    implicit_include_directories: false,
34    dependencies: [libeStoraged_deps, libeStoragedErase_dep],
35)
36
37libeStoraged = declare_dependency(
38    dependencies: libeStoraged_deps,
39    include_directories: eStoraged_headers,
40    link_with: libeStoraged_lib,
41)
42
43executable(
44    'eStoraged',
45    'main.cpp',
46    implicit_include_directories: false,
47    dependencies: libeStoraged,
48    install: true,
49    install_dir: get_option('bindir'),
50)
51
52build_tests = get_option('tests')
53if build_tests.allowed()
54    subdir('test')
55endif
56
57