# Generated file; do not modify.
subdir('Inventory')
generated_others += custom_target(
    'xyz/openbmc_project/State/Shutdown/Inventory__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/State/Shutdown/Inventory.errors.yaml',  ],
    output: [ 'Inventory.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/State/Shutdown/Inventory',
    ],
    build_by_default: true,
)

subdir('Power')
generated_others += custom_target(
    'xyz/openbmc_project/State/Shutdown/Power__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/State/Shutdown/Power.errors.yaml',  ],
    output: [ 'Power.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/State/Shutdown/Power',
    ],
    build_by_default: true,
)

subdir('ThermalEvent')
generated_others += custom_target(
    'xyz/openbmc_project/State/Shutdown/ThermalEvent__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/State/Shutdown/ThermalEvent.errors.yaml',  ],
    output: [ 'ThermalEvent.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/State/Shutdown/ThermalEvent',
    ],
    build_by_default: true,
)

