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

subdir('MountPoint')
generated_others += custom_target(
    'xyz/openbmc_project/VirtualMedia/MountPoint__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/VirtualMedia/MountPoint.interface.yaml',  ],
    output: [ 'MountPoint.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/VirtualMedia/MountPoint',
    ],
    build_by_default: true,
)

subdir('Process')
generated_others += custom_target(
    'xyz/openbmc_project/VirtualMedia/Process__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/VirtualMedia/Process.interface.yaml',  ],
    output: [ 'Process.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/VirtualMedia/Process',
    ],
    build_by_default: true,
)

subdir('Proxy')
generated_others += custom_target(
    'xyz/openbmc_project/VirtualMedia/Proxy__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/VirtualMedia/Proxy.interface.yaml',  ],
    output: [ 'Proxy.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/VirtualMedia/Proxy',
    ],
    build_by_default: true,
)

subdir('Stats')
generated_others += custom_target(
    'xyz/openbmc_project/VirtualMedia/Stats__markdown'.underscorify(),
    input: [ meson.source_root() / 'xyz/openbmc_project/VirtualMedia/Stats.interface.yaml',  ],
    output: [ 'Stats.md' ],
    command: [
        sdbuspp_gen_meson_prog, '--command', 'markdown',
        '--output', meson.current_build_dir(),
        '--tool', sdbusplusplus_prog,
        '--directory', meson.source_root(),
        'xyz/openbmc_project/VirtualMedia/Stats',
    ],
    build_by_default: true,
)

