| # OpenBMC openpower-libhei project, see README.md for details. |
| project('openpower-libhei', 'cpp', |
| version: '0.1', meson_version: '>=0.51.0', |
| default_options: [ |
| 'warning_level=3', |
| 'werror=true', |
| 'cpp_std=c++14', |
| ]) |
| |
| #------------------------------------------------------------------------------- |
| # Versioning |
| #------------------------------------------------------------------------------- |
| buildinfo = vcs_tag(command: ['git', 'describe', '--always', '--long'], |
| input: 'buildinfo.hpp.in', |
| output: 'buildinfo.hpp', |
| replace_string:'@BUILDINFO@', |
| fallback: '0') |
| |
| #------------------------------------------------------------------------------- |
| # libhei library |
| #------------------------------------------------------------------------------- |
| |
| incdir = include_directories('src') |
| |
| libhei_src = [ |
| 'src/chip_data/hei_chip_data.cpp', |
| 'src/isolator/hei_isolator.cpp', |
| 'src/isolator/hei_isolation_chip.cpp', |
| 'src/isolator/hei_isolation_node.cpp', |
| 'src/register/hei_hardware_register.cpp', |
| 'src/util/hei_bit_string.cpp', |
| ] |
| |
| libhei_dep = declare_dependency(include_directories : incdir, |
| sources : [libhei_src, buildinfo]) |
| |
| # build static library libhei.a (note that the libray name is hei, the |
| # resulting filename will be libhei.a) |
| libhei_static = static_library('hei', |
| dependencies: libhei_dep, |
| install: true) |
| |
| install_headers( |
| 'src/hei_buildinfo.hpp', |
| 'src/hei_chip.hpp', |
| 'src/hei_isolation_data.hpp', |
| 'src/hei_main.hpp', |
| 'src/hei_signature.hpp', |
| 'src/hei_types.hpp', |
| 'src/hei_user_interface.hpp', |
| 'src/hei_util.hpp', |
| subdir : 'libhei' |
| ) |
| |
| install_headers( |
| 'src/util/hei_bit_string.hpp', |
| 'src/util/hei_flyweight.hpp', |
| subdir : 'libhei/util' |
| ) |
| |
| pkg_mod = import('pkgconfig') |
| |
| pkg_mod.generate(libraries : libhei_static, |
| version : '0.1', |
| name : 'libhei', |
| subdirs: 'libhei', |
| filebase : 'hei', |
| description : 'Openpower Hardware Error Isolator') |
| |
| #------------------------------------------------------------------------------- |
| # Chip Data Files |
| #------------------------------------------------------------------------------- |
| |
| subdir('chip_data') |
| |
| #------------------------------------------------------------------------------- |
| # Test |
| #------------------------------------------------------------------------------- |
| |
| build_tests = get_option('tests') |
| |
| if not build_tests.disabled() |
| subdir('test') |
| endif |
| |