xref: /openbmc/phosphor-psu-code-mgmt/meson.build (revision 783406e649e90e13540f192f4111270a02d83168)
1e065f617SLei YUproject('phosphor-psu-code-mgmt', 'cpp',
26c5f6816SGeorge Liu        version: '0.1',
36c5f6816SGeorge Liu        meson_version: '>=1.1.1',
4e065f617SLei YU        default_options: [
5e065f617SLei YU          'warning_level=3',
6e065f617SLei YU          'werror=true',
78131219aSPatrick Williams          'cpp_std=c++23',
801539e7eSLei YU          'b_lto=true',
96c5f6816SGeorge Liu        ])
10e065f617SLei YU
11e065f617SLei YUsystemd = dependency('systemd')
12200adf8fSPatrick Williamsservicedir = systemd.get_variable('systemdsystemunitdir')
13617c0b71SLei YUsubdir('services')
14e065f617SLei YU
155e0dcb39SLei YU# Common configurations for src and test
165e0dcb39SLei YUcdata = configuration_data()
17ad90ad51SLei YUcdata.set_quoted('ITEM_IFACE', 'xyz.openbmc_project.Inventory.Item')
189edb7330SLei YUcdata.set_quoted('ASSET_IFACE', 'xyz.openbmc_project.Inventory.Decorator.Asset')
195e0dcb39SLei YUcdata.set_quoted('VERSION_IFACE', 'xyz.openbmc_project.Software.Version')
205e0dcb39SLei YUcdata.set_quoted('FILEPATH_IFACE', 'xyz.openbmc_project.Common.FilePath')
215e0dcb39SLei YUcdata.set_quoted('BUSNAME_UPDATER', 'xyz.openbmc_project.Software.Psu.Updater')
225e0dcb39SLei YUcdata.set_quoted('PSU_INVENTORY_IFACE', 'xyz.openbmc_project.Inventory.Item.PowerSupply')
235e0dcb39SLei YUcdata.set_quoted('ACTIVATION_FWD_ASSOCIATION', 'inventory')
245e0dcb39SLei YUcdata.set_quoted('ACTIVATION_REV_ASSOCIATION', 'activation')
255e0dcb39SLei YUcdata.set_quoted('ACTIVE_FWD_ASSOCIATION', 'active')
265e0dcb39SLei YUcdata.set_quoted('ACTIVE_REV_ASSOCIATION', 'software_version')
275e0dcb39SLei YUcdata.set_quoted('FUNCTIONAL_FWD_ASSOCIATION', 'functional')
285e0dcb39SLei YUcdata.set_quoted('FUNCTIONAL_REV_ASSOCIATION', 'software_version')
29a8b966f1SLei YUcdata.set_quoted('UPDATEABLE_FWD_ASSOCIATION', 'updateable')
30a8b966f1SLei YUcdata.set_quoted('UPDATEABLE_REV_ASSOCIATION', 'software_version')
31f77189f7SLei YUcdata.set_quoted('VERSION', 'Version')
32f77189f7SLei YUcdata.set_quoted('PRESENT', 'Present')
339edb7330SLei YUcdata.set_quoted('MANUFACTURER', 'Manufacturer')
349edb7330SLei YUcdata.set_quoted('MODEL', 'Model')
355e0dcb39SLei YU
365e0dcb39SLei YUcdata.set_quoted('SOFTWARE_OBJPATH', get_option('SOFTWARE_OBJPATH'))
375e0dcb39SLei YUcdata.set_quoted('MANIFEST_FILE', get_option('MANIFEST_FILE'))
385e0dcb39SLei YUcdata.set_quoted('PSU_INVENTORY_PATH_BASE', get_option('PSU_INVENTORY_PATH_BASE'))
395f3584d4SLei YUcdata.set_quoted('PSU_VERSION_UTIL', get_option('PSU_VERSION_UTIL'))
40*783406e6SShawn McCarneycdata.set_quoted('PSU_MODEL_UTIL', get_option('PSU_MODEL_UTIL'))
416520748dSLei YUcdata.set_quoted('PSU_VERSION_COMPARE_UTIL', get_option('PSU_VERSION_COMPARE_UTIL'))
4212c9f4c4SLei YUcdata.set_quoted('PSU_UPDATE_SERVICE', get_option('PSU_UPDATE_SERVICE'))
4312c9f4c4SLei YUcdata.set_quoted('IMG_DIR', get_option('IMG_DIR'))
442e0e2de5SLei YUcdata.set_quoted('IMG_DIR_PERSIST', get_option('IMG_DIR_PERSIST'))
452e0e2de5SLei YUcdata.set_quoted('IMG_DIR_BUILTIN', get_option('IMG_DIR_BUILTIN'))
465e0dcb39SLei YU
47fb86e794SFaisal Awadacdata.set10('ALWAYS_USE_BUILTIN_IMG_DIR', get_option('ALWAYS_USE_BUILTIN_IMG_DIR'))
48fb86e794SFaisal Awada
495e0dcb39SLei YUphosphor_dbus_interfaces = dependency('phosphor-dbus-interfaces')
505e0dcb39SLei YUphosphor_logging = dependency('phosphor-logging')
515e0dcb39SLei YUsdbusplus = dependency('sdbusplus')
52ad90ad51SLei YUssl = dependency('openssl')
535e0dcb39SLei YU
54e065f617SLei YUsubdir('src')
555e0dcb39SLei YU
565e0dcb39SLei YUbuild_tests = get_option('tests')
575f3584d4SLei YUbuild_examples = get_option('examples')
585f3584d4SLei YU
595f3584d4SLei YUif build_examples
605f3584d4SLei YU  subdir('vendor-example')
615f3584d4SLei YUendif
625e0dcb39SLei YU
635e0dcb39SLei YUif not build_tests.disabled()
645e0dcb39SLei YU  subdir('test')
655e0dcb39SLei YUendif
66