build: support registry generation

sdbus++-gen-meson version 10 adds support for redfish registry
generation and greatly simplifies the install directives.

Regenerate the YAML meson files and modify the base meson.build
as necessary.  Also, format meson.build with `meson format`.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I77586fca7742d5468803913cb45276ca57271655
diff --git a/gen/xyz/openbmc_project/Control/Boot/Mode/meson.build b/gen/xyz/openbmc_project/Control/Boot/Mode/meson.build
index bdd539e..eb6fd79 100644
--- a/gen/xyz/openbmc_project/Control/Boot/Mode/meson.build
+++ b/gen/xyz/openbmc_project/Control/Boot/Mode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Boot/Mode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Boot/Mode__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Boot/Mode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Boot/Mode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/Mode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Boot/RebootAttempts/meson.build b/gen/xyz/openbmc_project/Control/Boot/RebootAttempts/meson.build
index c50a645..69bebdc 100644
--- a/gen/xyz/openbmc_project/Control/Boot/RebootAttempts/meson.build
+++ b/gen/xyz/openbmc_project/Control/Boot/RebootAttempts/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Boot/RebootAttempts'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Boot/RebootAttempts__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Boot/RebootAttempts.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Boot/RebootAttempts.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/RebootAttempts',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Boot/RebootPolicy/meson.build b/gen/xyz/openbmc_project/Control/Boot/RebootPolicy/meson.build
index df4f452..c7c1d9d 100644
--- a/gen/xyz/openbmc_project/Control/Boot/RebootPolicy/meson.build
+++ b/gen/xyz/openbmc_project/Control/Boot/RebootPolicy/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Boot/RebootPolicy'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Boot/RebootPolicy__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Boot/RebootPolicy.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Boot/RebootPolicy.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/RebootPolicy',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Boot/Source/meson.build b/gen/xyz/openbmc_project/Control/Boot/Source/meson.build
index 8dcaff5..031a7ec 100644
--- a/gen/xyz/openbmc_project/Control/Boot/Source/meson.build
+++ b/gen/xyz/openbmc_project/Control/Boot/Source/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Boot/Source'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Boot/Source__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Boot/Source.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Boot/Source.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/Source',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Boot/Type/meson.build b/gen/xyz/openbmc_project/Control/Boot/Type/meson.build
index b906bc4..4df6c94 100644
--- a/gen/xyz/openbmc_project/Control/Boot/Type/meson.build
+++ b/gen/xyz/openbmc_project/Control/Boot/Type/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Boot/Type'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Boot/Type__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Boot/Type.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Boot/Type.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/Type',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Boot/meson.build b/gen/xyz/openbmc_project/Control/Boot/meson.build
index 7ddeb50..bf8ff4c 100644
--- a/gen/xyz/openbmc_project/Control/Boot/meson.build
+++ b/gen/xyz/openbmc_project/Control/Boot/meson.build
@@ -1,6 +1,13 @@
 # Generated file; do not modify.
 subdir('Mode')
-generated_others += custom_target(
+subdir('RebootAttempts')
+subdir('RebootPolicy')
+subdir('Source')
+subdir('Type')
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Boot'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Boot/Mode__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Boot/Mode.interface.yaml',  ],
     output: [ 'Mode.md' ],
@@ -12,10 +19,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/Mode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('RebootAttempts')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Boot/RebootAttempts__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Boot/RebootAttempts.interface.yaml',  ],
     output: [ 'RebootAttempts.md' ],
@@ -27,10 +36,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/RebootAttempts',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('RebootPolicy')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Boot/RebootPolicy__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Boot/RebootPolicy.interface.yaml',  ],
     output: [ 'RebootPolicy.md' ],
@@ -42,10 +53,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/RebootPolicy',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Source')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Boot/Source__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Boot/Source.interface.yaml',  ],
     output: [ 'Source.md' ],
@@ -57,10 +70,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/Source',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Type')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Boot/Type__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Boot/Type.interface.yaml',  ],
     output: [ 'Type.md' ],
@@ -72,5 +87,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Boot/Type',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/CFMLimit/meson.build b/gen/xyz/openbmc_project/Control/CFMLimit/meson.build
index 5e58a04..17a3f90 100644
--- a/gen/xyz/openbmc_project/Control/CFMLimit/meson.build
+++ b/gen/xyz/openbmc_project/Control/CFMLimit/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/CFMLimit'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/CFMLimit__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/CFMLimit.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/CFMLimit.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/CFMLimit',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/ChassisCapabilities/meson.build b/gen/xyz/openbmc_project/Control/ChassisCapabilities/meson.build
index b98e9a3..90f18cc 100644
--- a/gen/xyz/openbmc_project/Control/ChassisCapabilities/meson.build
+++ b/gen/xyz/openbmc_project/Control/ChassisCapabilities/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/ChassisCapabilities'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/ChassisCapabilities__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/ChassisCapabilities.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/ChassisCapabilities.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/ChassisCapabilities',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Device/meson.build b/gen/xyz/openbmc_project/Control/Device/meson.build
index 6adf94b..a347697 100644
--- a/gen/xyz/openbmc_project/Control/Device/meson.build
+++ b/gen/xyz/openbmc_project/Control/Device/meson.build
@@ -1,8 +1,16 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Device'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Device__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/Device.errors.yaml',  ],
-    output: [ 'error.cpp', 'error.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/Device.errors.yaml',
+    ],
+    output: [
+        'error.cpp',
+        'error.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +19,11 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Device',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/FanPwm/meson.build b/gen/xyz/openbmc_project/Control/FanPwm/meson.build
index e8bb01d..6b186fc 100644
--- a/gen/xyz/openbmc_project/Control/FanPwm/meson.build
+++ b/gen/xyz/openbmc_project/Control/FanPwm/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/FanPwm'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/FanPwm__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/FanPwm.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/FanPwm.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/FanPwm',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/FanRedundancy/meson.build b/gen/xyz/openbmc_project/Control/FanRedundancy/meson.build
index 65d7df1..48f9c99 100644
--- a/gen/xyz/openbmc_project/Control/FanRedundancy/meson.build
+++ b/gen/xyz/openbmc_project/Control/FanRedundancy/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/FanRedundancy'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/FanRedundancy__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/FanRedundancy.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/FanRedundancy.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/FanRedundancy',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/FanSpeed/meson.build b/gen/xyz/openbmc_project/Control/FanSpeed/meson.build
index 4482ef2..e9de474 100644
--- a/gen/xyz/openbmc_project/Control/FanSpeed/meson.build
+++ b/gen/xyz/openbmc_project/Control/FanSpeed/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/FanSpeed'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/FanSpeed__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/FanSpeed.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/FanSpeed.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/FanSpeed',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/FieldMode/meson.build b/gen/xyz/openbmc_project/Control/FieldMode/meson.build
index dda58ba..dd69b78 100644
--- a/gen/xyz/openbmc_project/Control/FieldMode/meson.build
+++ b/gen/xyz/openbmc_project/Control/FieldMode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/FieldMode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/FieldMode__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/FieldMode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/FieldMode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/FieldMode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Host/NMI/meson.build b/gen/xyz/openbmc_project/Control/Host/NMI/meson.build
index d85355b..1049e3b 100644
--- a/gen/xyz/openbmc_project/Control/Host/NMI/meson.build
+++ b/gen/xyz/openbmc_project/Control/Host/NMI/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Host/NMI'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Host/NMI__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Host/NMI.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Host/NMI.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Host/NMI',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Host/TurboAllowed/meson.build b/gen/xyz/openbmc_project/Control/Host/TurboAllowed/meson.build
index 6b239d9..5af2bc7 100644
--- a/gen/xyz/openbmc_project/Control/Host/TurboAllowed/meson.build
+++ b/gen/xyz/openbmc_project/Control/Host/TurboAllowed/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Host/TurboAllowed'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Host/TurboAllowed__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Host/TurboAllowed.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Host/TurboAllowed.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Host/TurboAllowed',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Host/meson.build b/gen/xyz/openbmc_project/Control/Host/meson.build
index dc496b7..bc871c4 100644
--- a/gen/xyz/openbmc_project/Control/Host/meson.build
+++ b/gen/xyz/openbmc_project/Control/Host/meson.build
@@ -1,8 +1,24 @@
 # Generated file; do not modify.
+subdir('NMI')
+subdir('TurboAllowed')
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Host'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Host__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/Host.errors.yaml', '../../../../../yaml/xyz/openbmc_project/Control/Host.interface.yaml',  ],
-    output: [ 'error.cpp', 'error.hpp', 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/Host.errors.yaml',
+        '../../../../../yaml/xyz/openbmc_project/Control/Host.interface.yaml',
+    ],
+    output: [
+        'error.cpp',
+        'error.hpp',
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,10 +27,20 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Host',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
-subdir('NMI')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Host/NMI__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Host/NMI.interface.yaml',  ],
     output: [ 'NMI.md' ],
@@ -26,10 +52,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Host/NMI',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('TurboAllowed')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Host/TurboAllowed__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Host/TurboAllowed.interface.yaml',  ],
     output: [ 'TurboAllowed.md' ],
@@ -41,5 +69,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Host/TurboAllowed',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/MinimumShipLevel/meson.build b/gen/xyz/openbmc_project/Control/MinimumShipLevel/meson.build
index a33a2d4..a859cad 100644
--- a/gen/xyz/openbmc_project/Control/MinimumShipLevel/meson.build
+++ b/gen/xyz/openbmc_project/Control/MinimumShipLevel/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/MinimumShipLevel'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/MinimumShipLevel__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/MinimumShipLevel.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/MinimumShipLevel.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/MinimumShipLevel',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Mode/meson.build b/gen/xyz/openbmc_project/Control/Mode/meson.build
index c1cc34f..8daba0e 100644
--- a/gen/xyz/openbmc_project/Control/Mode/meson.build
+++ b/gen/xyz/openbmc_project/Control/Mode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Mode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Mode__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/Mode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/Mode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Mode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/ACPIPowerState/meson.build b/gen/xyz/openbmc_project/Control/Power/ACPIPowerState/meson.build
index beb3ff4..8dde717 100644
--- a/gen/xyz/openbmc_project/Control/Power/ACPIPowerState/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/ACPIPowerState/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/ACPIPowerState'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/ACPIPowerState__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/ACPIPowerState.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/ACPIPowerState.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/ACPIPowerState',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/Cap/meson.build b/gen/xyz/openbmc_project/Control/Power/Cap/meson.build
index bf41b70..e3cee27 100644
--- a/gen/xyz/openbmc_project/Control/Power/Cap/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/Cap/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/Cap'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/Cap__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/Cap',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/CapLimits/meson.build b/gen/xyz/openbmc_project/Control/Power/CapLimits/meson.build
index b84a56b..a997ecf 100644
--- a/gen/xyz/openbmc_project/Control/Power/CapLimits/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/CapLimits/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/CapLimits'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/CapLimits__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/CapLimits.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/CapLimits.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/CapLimits',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/IdlePowerSaver/meson.build b/gen/xyz/openbmc_project/Control/Power/IdlePowerSaver/meson.build
index 68c7028..ee38bca 100644
--- a/gen/xyz/openbmc_project/Control/Power/IdlePowerSaver/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/IdlePowerSaver/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/IdlePowerSaver'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/IdlePowerSaver__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/IdlePowerSaver.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/IdlePowerSaver.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/IdlePowerSaver',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/Mode/meson.build b/gen/xyz/openbmc_project/Control/Power/Mode/meson.build
index d90dd49..9724d45 100644
--- a/gen/xyz/openbmc_project/Control/Power/Mode/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/Mode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/Mode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/Mode__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/Mode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/Mode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/Mode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/RestorePolicy/meson.build b/gen/xyz/openbmc_project/Control/Power/RestorePolicy/meson.build
index 0259a66..b048942 100644
--- a/gen/xyz/openbmc_project/Control/Power/RestorePolicy/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/RestorePolicy/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/RestorePolicy'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/RestorePolicy__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/RestorePolicy.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/RestorePolicy.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/RestorePolicy',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/Throttle/meson.build b/gen/xyz/openbmc_project/Control/Power/Throttle/meson.build
index 132ee44..752bdf8 100644
--- a/gen/xyz/openbmc_project/Control/Power/Throttle/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/Throttle/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power/Throttle'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Power/Throttle__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Power/Throttle.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Power/Throttle.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Power/Throttle',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Power/meson.build b/gen/xyz/openbmc_project/Control/Power/meson.build
index 751b2ee..b625f50 100644
--- a/gen/xyz/openbmc_project/Control/Power/meson.build
+++ b/gen/xyz/openbmc_project/Control/Power/meson.build
@@ -1,6 +1,15 @@
 # Generated file; do not modify.
 subdir('ACPIPowerState')
-generated_others += custom_target(
+subdir('Cap')
+subdir('CapLimits')
+subdir('IdlePowerSaver')
+subdir('Mode')
+subdir('RestorePolicy')
+subdir('Throttle')
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Power'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/ACPIPowerState__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/ACPIPowerState.interface.yaml',  ],
     output: [ 'ACPIPowerState.md' ],
@@ -12,10 +21,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/ACPIPowerState',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Cap')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/Cap__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/Cap.interface.yaml',  ],
     output: [ 'Cap.md' ],
@@ -27,10 +38,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/Cap',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('CapLimits')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/CapLimits__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/CapLimits.interface.yaml',  ],
     output: [ 'CapLimits.md' ],
@@ -42,10 +55,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/CapLimits',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('IdlePowerSaver')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/IdlePowerSaver__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/IdlePowerSaver.interface.yaml',  ],
     output: [ 'IdlePowerSaver.md' ],
@@ -57,10 +72,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/IdlePowerSaver',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Mode')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/Mode__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/Mode.interface.yaml',  ],
     output: [ 'Mode.md' ],
@@ -72,10 +89,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/Mode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('RestorePolicy')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/RestorePolicy__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/RestorePolicy.interface.yaml',  ],
     output: [ 'RestorePolicy.md' ],
@@ -87,10 +106,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/RestorePolicy',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Throttle')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Power/Throttle__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Power/Throttle.interface.yaml',  ],
     output: [ 'Throttle.md' ],
@@ -102,5 +123,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Power/Throttle',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/PowerSupplyAttributes/meson.build b/gen/xyz/openbmc_project/Control/PowerSupplyAttributes/meson.build
index 26ad6c4..bde1611 100644
--- a/gen/xyz/openbmc_project/Control/PowerSupplyAttributes/meson.build
+++ b/gen/xyz/openbmc_project/Control/PowerSupplyAttributes/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/PowerSupplyAttributes'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/PowerSupplyAttributes__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/PowerSupplyAttributes.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/PowerSupplyAttributes.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/PowerSupplyAttributes',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/PowerSupplyRedundancy/meson.build b/gen/xyz/openbmc_project/Control/PowerSupplyRedundancy/meson.build
index 3dfad42..61133c9 100644
--- a/gen/xyz/openbmc_project/Control/PowerSupplyRedundancy/meson.build
+++ b/gen/xyz/openbmc_project/Control/PowerSupplyRedundancy/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/PowerSupplyRedundancy'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/PowerSupplyRedundancy__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/PowerSupplyRedundancy',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig/meson.build b/gen/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig/meson.build
index 4e7646a..738f612 100644
--- a/gen/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig/meson.build
+++ b/gen/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Processor/CurrentOperatingConfig'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Processor/CurrentOperatingConfig__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Processor/CurrentOperatingConfig',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Processor/meson.build b/gen/xyz/openbmc_project/Control/Processor/meson.build
index 3fc8073..c0feff7 100644
--- a/gen/xyz/openbmc_project/Control/Processor/meson.build
+++ b/gen/xyz/openbmc_project/Control/Processor/meson.build
@@ -1,6 +1,9 @@
 # Generated file; do not modify.
 subdir('CurrentOperatingConfig')
-generated_others += custom_target(
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Processor'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Processor/CurrentOperatingConfig__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Processor/CurrentOperatingConfig.interface.yaml',  ],
     output: [ 'CurrentOperatingConfig.md' ],
@@ -12,5 +15,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Processor/CurrentOperatingConfig',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Security/RestrictionMode/meson.build b/gen/xyz/openbmc_project/Control/Security/RestrictionMode/meson.build
index 7923910..a071cde 100644
--- a/gen/xyz/openbmc_project/Control/Security/RestrictionMode/meson.build
+++ b/gen/xyz/openbmc_project/Control/Security/RestrictionMode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Security/RestrictionMode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Security/RestrictionMode__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Security/RestrictionMode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Security/RestrictionMode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Security/RestrictionMode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Security/SpecialMode/meson.build b/gen/xyz/openbmc_project/Control/Security/SpecialMode/meson.build
index c32b2b5..8ac7492 100644
--- a/gen/xyz/openbmc_project/Control/Security/SpecialMode/meson.build
+++ b/gen/xyz/openbmc_project/Control/Security/SpecialMode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Security/SpecialMode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Security/SpecialMode__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Security/SpecialMode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Security/SpecialMode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Security/SpecialMode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Security/meson.build b/gen/xyz/openbmc_project/Control/Security/meson.build
index 3a40301..cb9545a 100644
--- a/gen/xyz/openbmc_project/Control/Security/meson.build
+++ b/gen/xyz/openbmc_project/Control/Security/meson.build
@@ -1,6 +1,10 @@
 # Generated file; do not modify.
 subdir('RestrictionMode')
-generated_others += custom_target(
+subdir('SpecialMode')
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Security'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Security/RestrictionMode__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Security/RestrictionMode.interface.yaml',  ],
     output: [ 'RestrictionMode.md' ],
@@ -12,10 +16,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Security/RestrictionMode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('SpecialMode')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Security/SpecialMode__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Security/SpecialMode.interface.yaml',  ],
     output: [ 'SpecialMode.md' ],
@@ -27,5 +33,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Security/SpecialMode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Service/Attributes/meson.build b/gen/xyz/openbmc_project/Control/Service/Attributes/meson.build
index e9fd56c..9f4e845 100644
--- a/gen/xyz/openbmc_project/Control/Service/Attributes/meson.build
+++ b/gen/xyz/openbmc_project/Control/Service/Attributes/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Service/Attributes'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Service/Attributes__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Service/Attributes.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Service/Attributes.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Service/Attributes',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Service/SocketAttributes/meson.build b/gen/xyz/openbmc_project/Control/Service/SocketAttributes/meson.build
index feb42ac..c5cb980 100644
--- a/gen/xyz/openbmc_project/Control/Service/SocketAttributes/meson.build
+++ b/gen/xyz/openbmc_project/Control/Service/SocketAttributes/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Service/SocketAttributes'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/Service/SocketAttributes__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/Service/SocketAttributes.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/Service/SocketAttributes.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/Service/SocketAttributes',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/Service/meson.build b/gen/xyz/openbmc_project/Control/Service/meson.build
index 39b3ed6..a5b0e46 100644
--- a/gen/xyz/openbmc_project/Control/Service/meson.build
+++ b/gen/xyz/openbmc_project/Control/Service/meson.build
@@ -1,6 +1,10 @@
 # Generated file; do not modify.
 subdir('Attributes')
-generated_others += custom_target(
+subdir('SocketAttributes')
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/Service'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Service/Attributes__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Service/Attributes.interface.yaml',  ],
     output: [ 'Attributes.md' ],
@@ -12,10 +16,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Service/Attributes',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('SocketAttributes')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Service/SocketAttributes__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/Service/SocketAttributes.interface.yaml',  ],
     output: [ 'SocketAttributes.md' ],
@@ -27,5 +33,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/Service/SocketAttributes',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/TPM/Policy/meson.build b/gen/xyz/openbmc_project/Control/TPM/Policy/meson.build
index 156d23a..c13d10e 100644
--- a/gen/xyz/openbmc_project/Control/TPM/Policy/meson.build
+++ b/gen/xyz/openbmc_project/Control/TPM/Policy/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/TPM/Policy'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/TPM/Policy__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/xyz/openbmc_project/Control/TPM/Policy.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/xyz/openbmc_project/Control/TPM/Policy.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../../yaml',
         'xyz/openbmc_project/Control/TPM/Policy',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/TPM/meson.build b/gen/xyz/openbmc_project/Control/TPM/meson.build
index 5522371..327cf1a 100644
--- a/gen/xyz/openbmc_project/Control/TPM/meson.build
+++ b/gen/xyz/openbmc_project/Control/TPM/meson.build
@@ -1,6 +1,9 @@
 # Generated file; do not modify.
 subdir('Policy')
-generated_others += custom_target(
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/TPM'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/TPM/Policy__markdown'.underscorify(),
     input: [ '../../../../../yaml/xyz/openbmc_project/Control/TPM/Policy.interface.yaml',  ],
     output: [ 'Policy.md' ],
@@ -12,5 +15,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/TPM/Policy',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/ThermalMode/meson.build b/gen/xyz/openbmc_project/Control/ThermalMode/meson.build
index 3271d89..d36b6ec 100644
--- a/gen/xyz/openbmc_project/Control/ThermalMode/meson.build
+++ b/gen/xyz/openbmc_project/Control/ThermalMode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/ThermalMode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/ThermalMode__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/ThermalMode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/ThermalMode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/ThermalMode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/VoltageRegulatorControl/meson.build b/gen/xyz/openbmc_project/Control/VoltageRegulatorControl/meson.build
index ddeaadb..e08c1dc 100644
--- a/gen/xyz/openbmc_project/Control/VoltageRegulatorControl/meson.build
+++ b/gen/xyz/openbmc_project/Control/VoltageRegulatorControl/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/VoltageRegulatorControl'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/VoltageRegulatorControl__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/VoltageRegulatorControl.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/VoltageRegulatorControl.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/VoltageRegulatorControl',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/VoltageRegulatorMode/meson.build b/gen/xyz/openbmc_project/Control/VoltageRegulatorMode/meson.build
index a4f3690..1d1b7ff 100644
--- a/gen/xyz/openbmc_project/Control/VoltageRegulatorMode/meson.build
+++ b/gen/xyz/openbmc_project/Control/VoltageRegulatorMode/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control/VoltageRegulatorMode'
+
 generated_sources += custom_target(
     'xyz/openbmc_project/Control/VoltageRegulatorMode__cpp'.underscorify(),
-    input: [ '../../../../../yaml/xyz/openbmc_project/Control/VoltageRegulatorMode.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/xyz/openbmc_project/Control/VoltageRegulatorMode.interface.yaml',
+    ],
+    output: [
+        'common.hpp',
+        'server.hpp',
+        'server.cpp',
+        'aserver.hpp',
+        'client.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,5 +22,14 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'xyz/openbmc_project/Control/VoltageRegulatorMode',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
diff --git a/gen/xyz/openbmc_project/Control/meson.build b/gen/xyz/openbmc_project/Control/meson.build
index 4e94449..9bcd93f 100644
--- a/gen/xyz/openbmc_project/Control/meson.build
+++ b/gen/xyz/openbmc_project/Control/meson.build
@@ -1,7 +1,29 @@
 # Generated file; do not modify.
 subdir('Boot')
 subdir('CFMLimit')
-generated_others += custom_target(
+subdir('ChassisCapabilities')
+subdir('Device')
+subdir('FanPwm')
+subdir('FanRedundancy')
+subdir('FanSpeed')
+subdir('FieldMode')
+subdir('Host')
+subdir('MinimumShipLevel')
+subdir('Mode')
+subdir('Power')
+subdir('PowerSupplyAttributes')
+subdir('PowerSupplyRedundancy')
+subdir('Processor')
+subdir('Security')
+subdir('Service')
+subdir('TPM')
+subdir('ThermalMode')
+subdir('VoltageRegulatorControl')
+subdir('VoltageRegulatorMode')
+
+sdbusplus_current_path = 'xyz/openbmc_project/Control'
+
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/CFMLimit__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/CFMLimit.interface.yaml',  ],
     output: [ 'CFMLimit.md' ],
@@ -13,10 +35,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/CFMLimit',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('ChassisCapabilities')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/ChassisCapabilities__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/ChassisCapabilities.interface.yaml',  ],
     output: [ 'ChassisCapabilities.md' ],
@@ -28,10 +52,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/ChassisCapabilities',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Device')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Device__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/Device.errors.yaml',  ],
     output: [ 'Device.md' ],
@@ -43,10 +69,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/Device',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('FanPwm')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/FanPwm__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/FanPwm.interface.yaml',  ],
     output: [ 'FanPwm.md' ],
@@ -58,10 +86,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/FanPwm',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('FanRedundancy')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/FanRedundancy__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/FanRedundancy.interface.yaml',  ],
     output: [ 'FanRedundancy.md' ],
@@ -73,10 +103,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/FanRedundancy',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('FanSpeed')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/FanSpeed__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/FanSpeed.interface.yaml',  ],
     output: [ 'FanSpeed.md' ],
@@ -88,10 +120,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/FanSpeed',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('FieldMode')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/FieldMode__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/FieldMode.interface.yaml',  ],
     output: [ 'FieldMode.md' ],
@@ -103,10 +137,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/FieldMode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Host')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Host__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/Host.errors.yaml', '../../../../yaml/xyz/openbmc_project/Control/Host.interface.yaml',  ],
     output: [ 'Host.md' ],
@@ -118,10 +154,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/Host',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('MinimumShipLevel')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/MinimumShipLevel__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/MinimumShipLevel.interface.yaml',  ],
     output: [ 'MinimumShipLevel.md' ],
@@ -133,10 +171,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/MinimumShipLevel',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Mode')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/Mode__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/Mode.interface.yaml',  ],
     output: [ 'Mode.md' ],
@@ -148,11 +188,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/Mode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Power')
-subdir('PowerSupplyAttributes')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/PowerSupplyAttributes__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/PowerSupplyAttributes.interface.yaml',  ],
     output: [ 'PowerSupplyAttributes.md' ],
@@ -164,10 +205,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/PowerSupplyAttributes',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('PowerSupplyRedundancy')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/PowerSupplyRedundancy__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/PowerSupplyRedundancy.interface.yaml',  ],
     output: [ 'PowerSupplyRedundancy.md' ],
@@ -179,14 +222,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/PowerSupplyRedundancy',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Processor')
-subdir('Security')
-subdir('Service')
-subdir('TPM')
-subdir('ThermalMode')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/ThermalMode__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/ThermalMode.interface.yaml',  ],
     output: [ 'ThermalMode.md' ],
@@ -198,10 +239,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/ThermalMode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VoltageRegulatorControl')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/VoltageRegulatorControl__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/VoltageRegulatorControl.interface.yaml',  ],
     output: [ 'VoltageRegulatorControl.md' ],
@@ -213,10 +256,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/VoltageRegulatorControl',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VoltageRegulatorMode')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'xyz/openbmc_project/Control/VoltageRegulatorMode__markdown'.underscorify(),
     input: [ '../../../../yaml/xyz/openbmc_project/Control/VoltageRegulatorMode.interface.yaml',  ],
     output: [ 'VoltageRegulatorMode.md' ],
@@ -228,5 +273,8 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'xyz/openbmc_project/Control/VoltageRegulatorMode',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )