project(
  'ipmi-fru-parser',
  'cpp',
  version: '1.0',
  default_options: [
    'buildtype=debugoptimized',
    'cpp_std=c++23',
    'warning_level=3',
    'werror=true',
  ],
  meson_version: '>=1.1.1',
)

cxx = meson.get_compiler('cpp')

phosphor_logging_dep = dependency('phosphor-logging')
sdbusplus_dep = dependency('sdbusplus')
ipmid_dep = dependency('libipmid')

if cxx.has_header('CLI/CLI.hpp')
    CLI11_dep = declare_dependency()
else
    CLI11_dep = dependency('CLI11')
endif

python_prog = find_program('python3', native: true)

fru_gen = custom_target(
  'fru-gen.cpp'.underscorify(),
  input: [
    'scripts/fru_gen.py',
    get_option('fru_yaml'),
  ],
  output: 'fru-gen.cpp',
  command: [
    python_prog, '@INPUT0@',
    '-i', '@INPUT1@',
    '-o', meson.current_build_dir(),
    'generate-cpp',
  ],
)

properties_gen = custom_target(
  'extra-properties-gen.cpp'.underscorify(),
  input: [
    'scripts/extra-properties.py',
    get_option('properties_yaml'),
  ],
  output: 'extra-properties-gen.cpp',
  command: [
    python_prog, '@INPUT0@',
    '-e', '@INPUT1@',
  ],
)

writefrudata_lib = library(
  'writefrudata',
  fru_gen,
  properties_gen,
  'fru_area.cpp',
  'frup.cpp',
  'writefrudata.cpp',
  dependencies: [
    sdbusplus_dep,
    phosphor_logging_dep,
    ipmid_dep,
  ],
  version: meson.project_version(),
  install: true,
)

writefrudata_dep = declare_dependency(
  link_with: writefrudata_lib,
)

strgfnhandler_lib = library(
  'strgfnhandler',
  'strgfnhandler.cpp',
  dependencies: [
    writefrudata_dep,
    phosphor_logging_dep,
    ipmid_dep,
  ],
  override_options: [ 'b_lundef=false' ],
  version: meson.project_version(),
  install: true,
  install_dir: get_option('libdir') / 'ipmid-providers',
)

executable(
  'phosphor-read-eeprom',
  'readeeprom.cpp',
  dependencies: [
    CLI11_dep,
    phosphor_logging_dep,
    sdbusplus_dep,
    writefrudata_dep,
  ],
  install: true,
)
