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/com/ibm/Dump/Create/meson.build b/gen/com/ibm/Dump/Create/meson.build
index 7033ff3..ce6bbd7 100644
--- a/gen/com/ibm/Dump/Create/meson.build
+++ b/gen/com/ibm/Dump/Create/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Dump/Create'
+
 generated_sources += custom_target(
     'com/ibm/Dump/Create__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/Dump/Create.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/Dump/Create.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',
         'com/ibm/Dump/Create',
     ],
+    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/com/ibm/Dump/Entry/Hardware/meson.build b/gen/com/ibm/Dump/Entry/Hardware/meson.build
index 43cbbff..9eb9633 100644
--- a/gen/com/ibm/Dump/Entry/Hardware/meson.build
+++ b/gen/com/ibm/Dump/Entry/Hardware/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Dump/Entry/Hardware'
+
 generated_sources += custom_target(
     'com/ibm/Dump/Entry/Hardware__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/com/ibm/Dump/Entry/Hardware.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/com/ibm/Dump/Entry/Hardware.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',
         'com/ibm/Dump/Entry/Hardware',
     ],
+    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/com/ibm/Dump/Entry/Hostboot/meson.build b/gen/com/ibm/Dump/Entry/Hostboot/meson.build
index ea8feae..9c9669c 100644
--- a/gen/com/ibm/Dump/Entry/Hostboot/meson.build
+++ b/gen/com/ibm/Dump/Entry/Hostboot/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Dump/Entry/Hostboot'
+
 generated_sources += custom_target(
     'com/ibm/Dump/Entry/Hostboot__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/com/ibm/Dump/Entry/Hostboot.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/com/ibm/Dump/Entry/Hostboot.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',
         'com/ibm/Dump/Entry/Hostboot',
     ],
+    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/com/ibm/Dump/Entry/Resource/meson.build b/gen/com/ibm/Dump/Entry/Resource/meson.build
index cb3ed0b..906c4b7 100644
--- a/gen/com/ibm/Dump/Entry/Resource/meson.build
+++ b/gen/com/ibm/Dump/Entry/Resource/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Dump/Entry/Resource'
+
 generated_sources += custom_target(
     'com/ibm/Dump/Entry/Resource__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/com/ibm/Dump/Entry/Resource.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/com/ibm/Dump/Entry/Resource.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',
         'com/ibm/Dump/Entry/Resource',
     ],
+    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/com/ibm/Dump/Entry/SBE/meson.build b/gen/com/ibm/Dump/Entry/SBE/meson.build
index 859fc6c..659c539 100644
--- a/gen/com/ibm/Dump/Entry/SBE/meson.build
+++ b/gen/com/ibm/Dump/Entry/SBE/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Dump/Entry/SBE'
+
 generated_sources += custom_target(
     'com/ibm/Dump/Entry/SBE__cpp'.underscorify(),
-    input: [ '../../../../../../yaml/com/ibm/Dump/Entry/SBE.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../../yaml/com/ibm/Dump/Entry/SBE.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',
         'com/ibm/Dump/Entry/SBE',
     ],
+    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/com/ibm/Dump/Entry/meson.build b/gen/com/ibm/Dump/Entry/meson.build
index 4f7ea25..c3fad5f 100644
--- a/gen/com/ibm/Dump/Entry/meson.build
+++ b/gen/com/ibm/Dump/Entry/meson.build
@@ -1,6 +1,12 @@
 # Generated file; do not modify.
 subdir('Hardware')
-generated_others += custom_target(
+subdir('Hostboot')
+subdir('Resource')
+subdir('SBE')
+
+sdbusplus_current_path = 'com/ibm/Dump/Entry'
+
+generated_markdown += custom_target(
     'com/ibm/Dump/Entry/Hardware__markdown'.underscorify(),
     input: [ '../../../../../yaml/com/ibm/Dump/Entry/Hardware.interface.yaml',  ],
     output: [ 'Hardware.md' ],
@@ -12,10 +18,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'com/ibm/Dump/Entry/Hardware',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Hostboot')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/Dump/Entry/Hostboot__markdown'.underscorify(),
     input: [ '../../../../../yaml/com/ibm/Dump/Entry/Hostboot.interface.yaml',  ],
     output: [ 'Hostboot.md' ],
@@ -27,10 +35,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'com/ibm/Dump/Entry/Hostboot',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Resource')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/Dump/Entry/Resource__markdown'.underscorify(),
     input: [ '../../../../../yaml/com/ibm/Dump/Entry/Resource.interface.yaml',  ],
     output: [ 'Resource.md' ],
@@ -42,10 +52,12 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'com/ibm/Dump/Entry/Resource',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('SBE')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/Dump/Entry/SBE__markdown'.underscorify(),
     input: [ '../../../../../yaml/com/ibm/Dump/Entry/SBE.interface.yaml',  ],
     output: [ 'SBE.md' ],
@@ -57,5 +69,8 @@
         '--directory', meson.current_source_dir() / '../../../../../yaml',
         'com/ibm/Dump/Entry/SBE',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/com/ibm/Dump/Notify/meson.build b/gen/com/ibm/Dump/Notify/meson.build
index 063dc38..e762d4c 100644
--- a/gen/com/ibm/Dump/Notify/meson.build
+++ b/gen/com/ibm/Dump/Notify/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Dump/Notify'
+
 generated_sources += custom_target(
     'com/ibm/Dump/Notify__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/Dump/Notify.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/Dump/Notify.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',
         'com/ibm/Dump/Notify',
     ],
+    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/com/ibm/Dump/meson.build b/gen/com/ibm/Dump/meson.build
index 69fd81b..9e93b59 100644
--- a/gen/com/ibm/Dump/meson.build
+++ b/gen/com/ibm/Dump/meson.build
@@ -1,6 +1,11 @@
 # Generated file; do not modify.
 subdir('Create')
-generated_others += custom_target(
+subdir('Entry')
+subdir('Notify')
+
+sdbusplus_current_path = 'com/ibm/Dump'
+
+generated_markdown += custom_target(
     'com/ibm/Dump/Create__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/Dump/Create.interface.yaml',  ],
     output: [ 'Create.md' ],
@@ -12,11 +17,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/Dump/Create',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Entry')
-subdir('Notify')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/Dump/Notify__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/Dump/Notify.interface.yaml',  ],
     output: [ 'Notify.md' ],
@@ -28,5 +34,8 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/Dump/Notify',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/com/ibm/Hardware/Chassis/meson.build b/gen/com/ibm/Hardware/Chassis/meson.build
index 3b83fb8..990a744 100644
--- a/gen/com/ibm/Hardware/Chassis/meson.build
+++ b/gen/com/ibm/Hardware/Chassis/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Hardware/Chassis'
+
 generated_sources += custom_target(
     'com/ibm/Hardware/Chassis__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/Hardware/Chassis.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/Hardware/Chassis.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',
         'com/ibm/Hardware/Chassis',
     ],
+    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/com/ibm/Hardware/meson.build b/gen/com/ibm/Hardware/meson.build
index d30ffa3..2a10886 100644
--- a/gen/com/ibm/Hardware/meson.build
+++ b/gen/com/ibm/Hardware/meson.build
@@ -1,6 +1,9 @@
 # Generated file; do not modify.
 subdir('Chassis')
-generated_others += custom_target(
+
+sdbusplus_current_path = 'com/ibm/Hardware'
+
+generated_markdown += custom_target(
     'com/ibm/Hardware/Chassis__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/Hardware/Chassis.interface.yaml',  ],
     output: [ 'Chassis.md' ],
@@ -12,5 +15,8 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/Hardware/Chassis',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/com/ibm/Logging/Policy/meson.build b/gen/com/ibm/Logging/Policy/meson.build
index 6ea7264..e227eab 100644
--- a/gen/com/ibm/Logging/Policy/meson.build
+++ b/gen/com/ibm/Logging/Policy/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/Logging/Policy'
+
 generated_sources += custom_target(
     'com/ibm/Logging/Policy__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/Logging/Policy.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/Logging/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',
         'com/ibm/Logging/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/com/ibm/Logging/meson.build b/gen/com/ibm/Logging/meson.build
index f2213f5..463d47f 100644
--- a/gen/com/ibm/Logging/meson.build
+++ b/gen/com/ibm/Logging/meson.build
@@ -1,6 +1,9 @@
 # Generated file; do not modify.
 subdir('Policy')
-generated_others += custom_target(
+
+sdbusplus_current_path = 'com/ibm/Logging'
+
+generated_markdown += custom_target(
     'com/ibm/Logging/Policy__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/Logging/Policy.interface.yaml',  ],
     output: [ 'Policy.md' ],
@@ -12,5 +15,8 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/Logging/Policy',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/com/ibm/VPD/Collection/meson.build b/gen/com/ibm/VPD/Collection/meson.build
index 24c8c99..1f93fce 100644
--- a/gen/com/ibm/VPD/Collection/meson.build
+++ b/gen/com/ibm/VPD/Collection/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/VPD/Collection'
+
 generated_sources += custom_target(
     'com/ibm/VPD/Collection__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/VPD/Collection.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/VPD/Collection.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',
         'com/ibm/VPD/Collection',
     ],
+    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/com/ibm/VPD/Manager/meson.build b/gen/com/ibm/VPD/Manager/meson.build
index 026669d..6451f3e 100644
--- a/gen/com/ibm/VPD/Manager/meson.build
+++ b/gen/com/ibm/VPD/Manager/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/VPD/Manager'
+
 generated_sources += custom_target(
     'com/ibm/VPD/Manager__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/VPD/Manager.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/VPD/Manager.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',
         'com/ibm/VPD/Manager',
     ],
+    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/com/ibm/VPD/meson.build b/gen/com/ibm/VPD/meson.build
index 5ff46d9..c9c401f 100644
--- a/gen/com/ibm/VPD/meson.build
+++ b/gen/com/ibm/VPD/meson.build
@@ -1,8 +1,18 @@
 # Generated file; do not modify.
+subdir('Collection')
+subdir('Manager')
+
+sdbusplus_current_path = 'com/ibm/VPD'
+
 generated_sources += custom_target(
     'com/ibm/VPD__cpp'.underscorify(),
-    input: [ '../../../../yaml/com/ibm/VPD.errors.yaml',  ],
-    output: [ 'error.cpp', 'error.hpp',  ],
+    input: [
+        '../../../../yaml/com/ibm/VPD.errors.yaml',
+    ],
+    output: [
+        'error.cpp',
+        'error.hpp',
+    ],
     depend_files: sdbusplusplus_depfiles,
     command: [
         sdbuspp_gen_meson_prog, '--command', 'cpp',
@@ -11,10 +21,15 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/VPD',
     ],
+    install: should_generate_cpp,
+    install_dir: [
+        false,
+        get_option('includedir') / sdbusplus_current_path,
+    ],
+    build_by_default: should_generate_cpp,
 )
 
-subdir('Collection')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/VPD/Collection__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/VPD/Collection.interface.yaml',  ],
     output: [ 'Collection.md' ],
@@ -26,10 +41,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/VPD/Collection',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Manager')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/VPD/Manager__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/VPD/Manager.interface.yaml',  ],
     output: [ 'Manager.md' ],
@@ -41,5 +58,8 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/VPD/Manager',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/com/ibm/ipzvpd/CP00/meson.build b/gen/com/ibm/ipzvpd/CP00/meson.build
index 6d2abff..a51a99b 100644
--- a/gen/com/ibm/ipzvpd/CP00/meson.build
+++ b/gen/com/ibm/ipzvpd/CP00/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/CP00'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/CP00__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/CP00.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/CP00.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',
         'com/ibm/ipzvpd/CP00',
     ],
+    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/com/ibm/ipzvpd/CRP0/meson.build b/gen/com/ibm/ipzvpd/CRP0/meson.build
index 148524f..00b01a1 100644
--- a/gen/com/ibm/ipzvpd/CRP0/meson.build
+++ b/gen/com/ibm/ipzvpd/CRP0/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/CRP0'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/CRP0__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/CRP0.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/CRP0.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',
         'com/ibm/ipzvpd/CRP0',
     ],
+    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/com/ibm/ipzvpd/DINF/meson.build b/gen/com/ibm/ipzvpd/DINF/meson.build
index 0fdb8ff..498b963 100644
--- a/gen/com/ibm/ipzvpd/DINF/meson.build
+++ b/gen/com/ibm/ipzvpd/DINF/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/DINF'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/DINF__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/DINF.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/DINF.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',
         'com/ibm/ipzvpd/DINF',
     ],
+    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/com/ibm/ipzvpd/LRP0/meson.build b/gen/com/ibm/ipzvpd/LRP0/meson.build
index add0da9..d378872 100644
--- a/gen/com/ibm/ipzvpd/LRP0/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP0/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP0'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP0__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP0.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP0.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',
         'com/ibm/ipzvpd/LRP0',
     ],
+    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/com/ibm/ipzvpd/LRP1/meson.build b/gen/com/ibm/ipzvpd/LRP1/meson.build
index 47bea74..f4f82d9 100644
--- a/gen/com/ibm/ipzvpd/LRP1/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP1/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP1'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP1__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP1.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP1.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',
         'com/ibm/ipzvpd/LRP1',
     ],
+    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/com/ibm/ipzvpd/LRP2/meson.build b/gen/com/ibm/ipzvpd/LRP2/meson.build
index ba1110d..ef7eff0 100644
--- a/gen/com/ibm/ipzvpd/LRP2/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP2/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP2'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP2__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP2.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP2.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',
         'com/ibm/ipzvpd/LRP2',
     ],
+    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/com/ibm/ipzvpd/LRP3/meson.build b/gen/com/ibm/ipzvpd/LRP3/meson.build
index c2d75b3..06c9bcd 100644
--- a/gen/com/ibm/ipzvpd/LRP3/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP3/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP3'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP3__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP3.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP3.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',
         'com/ibm/ipzvpd/LRP3',
     ],
+    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/com/ibm/ipzvpd/LRP4/meson.build b/gen/com/ibm/ipzvpd/LRP4/meson.build
index 80c8564..b2dc237 100644
--- a/gen/com/ibm/ipzvpd/LRP4/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP4/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP4'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP4__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP4.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP4.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',
         'com/ibm/ipzvpd/LRP4',
     ],
+    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/com/ibm/ipzvpd/LRP5/meson.build b/gen/com/ibm/ipzvpd/LRP5/meson.build
index d5e0efb..891c4ce 100644
--- a/gen/com/ibm/ipzvpd/LRP5/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP5/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP5'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP5__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP5.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP5.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',
         'com/ibm/ipzvpd/LRP5',
     ],
+    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/com/ibm/ipzvpd/LRP6/meson.build b/gen/com/ibm/ipzvpd/LRP6/meson.build
index 2e54535..36e108d 100644
--- a/gen/com/ibm/ipzvpd/LRP6/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP6/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP6'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP6__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP6.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP6.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',
         'com/ibm/ipzvpd/LRP6',
     ],
+    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/com/ibm/ipzvpd/LRP7/meson.build b/gen/com/ibm/ipzvpd/LRP7/meson.build
index 14f0b53..1dd3e50 100644
--- a/gen/com/ibm/ipzvpd/LRP7/meson.build
+++ b/gen/com/ibm/ipzvpd/LRP7/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LRP7'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LRP7__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LRP7.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LRP7.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',
         'com/ibm/ipzvpd/LRP7',
     ],
+    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/com/ibm/ipzvpd/LWP0/meson.build b/gen/com/ibm/ipzvpd/LWP0/meson.build
index 07ed8d2..a082077 100644
--- a/gen/com/ibm/ipzvpd/LWP0/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP0/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP0'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP0__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP0.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP0.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',
         'com/ibm/ipzvpd/LWP0',
     ],
+    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/com/ibm/ipzvpd/LWP1/meson.build b/gen/com/ibm/ipzvpd/LWP1/meson.build
index 65d7c4d..c0384f7 100644
--- a/gen/com/ibm/ipzvpd/LWP1/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP1/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP1'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP1__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP1.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP1.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',
         'com/ibm/ipzvpd/LWP1',
     ],
+    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/com/ibm/ipzvpd/LWP2/meson.build b/gen/com/ibm/ipzvpd/LWP2/meson.build
index 975d3d1..9adaaa1 100644
--- a/gen/com/ibm/ipzvpd/LWP2/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP2/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP2'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP2__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP2.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP2.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',
         'com/ibm/ipzvpd/LWP2',
     ],
+    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/com/ibm/ipzvpd/LWP3/meson.build b/gen/com/ibm/ipzvpd/LWP3/meson.build
index f2f7e7c..2031ab1 100644
--- a/gen/com/ibm/ipzvpd/LWP3/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP3/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP3'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP3__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP3.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP3.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',
         'com/ibm/ipzvpd/LWP3',
     ],
+    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/com/ibm/ipzvpd/LWP4/meson.build b/gen/com/ibm/ipzvpd/LWP4/meson.build
index c046f90..f7662f3 100644
--- a/gen/com/ibm/ipzvpd/LWP4/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP4/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP4'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP4__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP4.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP4.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',
         'com/ibm/ipzvpd/LWP4',
     ],
+    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/com/ibm/ipzvpd/LWP5/meson.build b/gen/com/ibm/ipzvpd/LWP5/meson.build
index 0a5d4d0..f94856c 100644
--- a/gen/com/ibm/ipzvpd/LWP5/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP5/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP5'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP5__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP5.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP5.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',
         'com/ibm/ipzvpd/LWP5',
     ],
+    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/com/ibm/ipzvpd/LWP6/meson.build b/gen/com/ibm/ipzvpd/LWP6/meson.build
index 57499a0..0c0b9b3 100644
--- a/gen/com/ibm/ipzvpd/LWP6/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP6/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP6'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP6__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP6.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP6.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',
         'com/ibm/ipzvpd/LWP6',
     ],
+    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/com/ibm/ipzvpd/LWP7/meson.build b/gen/com/ibm/ipzvpd/LWP7/meson.build
index 87279ce..f7b879a 100644
--- a/gen/com/ibm/ipzvpd/LWP7/meson.build
+++ b/gen/com/ibm/ipzvpd/LWP7/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LWP7'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LWP7__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LWP7.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LWP7.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',
         'com/ibm/ipzvpd/LWP7',
     ],
+    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/com/ibm/ipzvpd/LXR0/meson.build b/gen/com/ibm/ipzvpd/LXR0/meson.build
index a83f025..f0bc552 100644
--- a/gen/com/ibm/ipzvpd/LXR0/meson.build
+++ b/gen/com/ibm/ipzvpd/LXR0/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/LXR0'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/LXR0__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/LXR0.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/LXR0.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',
         'com/ibm/ipzvpd/LXR0',
     ],
+    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/com/ibm/ipzvpd/Location/meson.build b/gen/com/ibm/ipzvpd/Location/meson.build
index dac1644..974d74c 100644
--- a/gen/com/ibm/ipzvpd/Location/meson.build
+++ b/gen/com/ibm/ipzvpd/Location/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/Location'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/Location__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/Location.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/Location.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',
         'com/ibm/ipzvpd/Location',
     ],
+    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/com/ibm/ipzvpd/MER0/meson.build b/gen/com/ibm/ipzvpd/MER0/meson.build
index 4de398e..7b9e0de 100644
--- a/gen/com/ibm/ipzvpd/MER0/meson.build
+++ b/gen/com/ibm/ipzvpd/MER0/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/MER0'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/MER0__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/MER0.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/MER0.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',
         'com/ibm/ipzvpd/MER0',
     ],
+    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/com/ibm/ipzvpd/PSPD/meson.build b/gen/com/ibm/ipzvpd/PSPD/meson.build
index a0c60e6..14f8cf1 100644
--- a/gen/com/ibm/ipzvpd/PSPD/meson.build
+++ b/gen/com/ibm/ipzvpd/PSPD/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/PSPD'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/PSPD__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/PSPD.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/PSPD.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',
         'com/ibm/ipzvpd/PSPD',
     ],
+    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/com/ibm/ipzvpd/UTIL/meson.build b/gen/com/ibm/ipzvpd/UTIL/meson.build
index 2665af7..064100a 100644
--- a/gen/com/ibm/ipzvpd/UTIL/meson.build
+++ b/gen/com/ibm/ipzvpd/UTIL/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/UTIL'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/UTIL__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/UTIL.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/UTIL.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',
         'com/ibm/ipzvpd/UTIL',
     ],
+    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/com/ibm/ipzvpd/VCEN/meson.build b/gen/com/ibm/ipzvpd/VCEN/meson.build
index c329663..09e4574 100644
--- a/gen/com/ibm/ipzvpd/VCEN/meson.build
+++ b/gen/com/ibm/ipzvpd/VCEN/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VCEN'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VCEN__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VCEN.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VCEN.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',
         'com/ibm/ipzvpd/VCEN',
     ],
+    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/com/ibm/ipzvpd/VCFG/meson.build b/gen/com/ibm/ipzvpd/VCFG/meson.build
index 14f6069..73aaff6 100644
--- a/gen/com/ibm/ipzvpd/VCFG/meson.build
+++ b/gen/com/ibm/ipzvpd/VCFG/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VCFG'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VCFG__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VCFG.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VCFG.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',
         'com/ibm/ipzvpd/VCFG',
     ],
+    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/com/ibm/ipzvpd/VEIR/meson.build b/gen/com/ibm/ipzvpd/VEIR/meson.build
index 5830ebd..bb45e66 100644
--- a/gen/com/ibm/ipzvpd/VEIR/meson.build
+++ b/gen/com/ibm/ipzvpd/VEIR/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VEIR'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VEIR__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VEIR.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VEIR.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',
         'com/ibm/ipzvpd/VEIR',
     ],
+    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/com/ibm/ipzvpd/VER0/meson.build b/gen/com/ibm/ipzvpd/VER0/meson.build
index 83ba4b6..9a4282d 100644
--- a/gen/com/ibm/ipzvpd/VER0/meson.build
+++ b/gen/com/ibm/ipzvpd/VER0/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VER0'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VER0__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VER0.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VER0.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',
         'com/ibm/ipzvpd/VER0',
     ],
+    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/com/ibm/ipzvpd/VINI/meson.build b/gen/com/ibm/ipzvpd/VINI/meson.build
index 4168624..3c8d6b8 100644
--- a/gen/com/ibm/ipzvpd/VINI/meson.build
+++ b/gen/com/ibm/ipzvpd/VINI/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VINI'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VINI__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VINI.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VINI.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',
         'com/ibm/ipzvpd/VINI',
     ],
+    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/com/ibm/ipzvpd/VMPU/meson.build b/gen/com/ibm/ipzvpd/VMPU/meson.build
index f09fd89..d292240 100644
--- a/gen/com/ibm/ipzvpd/VMPU/meson.build
+++ b/gen/com/ibm/ipzvpd/VMPU/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VMPU'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VMPU__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VMPU.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VMPU.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',
         'com/ibm/ipzvpd/VMPU',
     ],
+    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/com/ibm/ipzvpd/VMSC/meson.build b/gen/com/ibm/ipzvpd/VMSC/meson.build
index ca62df9..59101ce 100644
--- a/gen/com/ibm/ipzvpd/VMSC/meson.build
+++ b/gen/com/ibm/ipzvpd/VMSC/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VMSC'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VMSC__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VMSC.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VMSC.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',
         'com/ibm/ipzvpd/VMSC',
     ],
+    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/com/ibm/ipzvpd/VPRI/meson.build b/gen/com/ibm/ipzvpd/VPRI/meson.build
index e1a6d98..e4a0974 100644
--- a/gen/com/ibm/ipzvpd/VPRI/meson.build
+++ b/gen/com/ibm/ipzvpd/VPRI/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VPRI'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VPRI__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VPRI.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VPRI.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',
         'com/ibm/ipzvpd/VPRI',
     ],
+    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/com/ibm/ipzvpd/VR10/meson.build b/gen/com/ibm/ipzvpd/VR10/meson.build
index 93b496e..970967b 100644
--- a/gen/com/ibm/ipzvpd/VR10/meson.build
+++ b/gen/com/ibm/ipzvpd/VR10/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VR10'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VR10__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VR10.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VR10.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',
         'com/ibm/ipzvpd/VR10',
     ],
+    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/com/ibm/ipzvpd/VRML/meson.build b/gen/com/ibm/ipzvpd/VRML/meson.build
index bb75826..18d8cec 100644
--- a/gen/com/ibm/ipzvpd/VRML/meson.build
+++ b/gen/com/ibm/ipzvpd/VRML/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VRML'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VRML__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VRML.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VRML.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',
         'com/ibm/ipzvpd/VRML',
     ],
+    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/com/ibm/ipzvpd/VRTN/meson.build b/gen/com/ibm/ipzvpd/VRTN/meson.build
index d5c84e3..c75650d 100644
--- a/gen/com/ibm/ipzvpd/VRTN/meson.build
+++ b/gen/com/ibm/ipzvpd/VRTN/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VRTN'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VRTN__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VRTN.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VRTN.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',
         'com/ibm/ipzvpd/VRTN',
     ],
+    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/com/ibm/ipzvpd/VSBK/meson.build b/gen/com/ibm/ipzvpd/VSBK/meson.build
index 5900e4d..18f6c84 100644
--- a/gen/com/ibm/ipzvpd/VSBK/meson.build
+++ b/gen/com/ibm/ipzvpd/VSBK/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VSBK'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VSBK__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VSBK.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VSBK.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',
         'com/ibm/ipzvpd/VSBK',
     ],
+    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/com/ibm/ipzvpd/VSBP/meson.build b/gen/com/ibm/ipzvpd/VSBP/meson.build
index be78f4f..cc1af1a 100644
--- a/gen/com/ibm/ipzvpd/VSBP/meson.build
+++ b/gen/com/ibm/ipzvpd/VSBP/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VSBP'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VSBP__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VSBP.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VSBP.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',
         'com/ibm/ipzvpd/VSBP',
     ],
+    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/com/ibm/ipzvpd/VSRC/meson.build b/gen/com/ibm/ipzvpd/VSRC/meson.build
index aa58111..f703338 100644
--- a/gen/com/ibm/ipzvpd/VSRC/meson.build
+++ b/gen/com/ibm/ipzvpd/VSRC/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VSRC'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VSRC__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VSRC.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VSRC.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',
         'com/ibm/ipzvpd/VSRC',
     ],
+    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/com/ibm/ipzvpd/VSYS/meson.build b/gen/com/ibm/ipzvpd/VSYS/meson.build
index dfa8b7f..4831d47 100644
--- a/gen/com/ibm/ipzvpd/VSYS/meson.build
+++ b/gen/com/ibm/ipzvpd/VSYS/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VSYS'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VSYS__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VSYS.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VSYS.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',
         'com/ibm/ipzvpd/VSYS',
     ],
+    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/com/ibm/ipzvpd/VW10/meson.build b/gen/com/ibm/ipzvpd/VW10/meson.build
index 8cd8c55..6563545 100644
--- a/gen/com/ibm/ipzvpd/VW10/meson.build
+++ b/gen/com/ibm/ipzvpd/VW10/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VW10'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VW10__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VW10.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VW10.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',
         'com/ibm/ipzvpd/VW10',
     ],
+    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/com/ibm/ipzvpd/VWML/meson.build b/gen/com/ibm/ipzvpd/VWML/meson.build
index 7c1b5ed..ad00abe 100644
--- a/gen/com/ibm/ipzvpd/VWML/meson.build
+++ b/gen/com/ibm/ipzvpd/VWML/meson.build
@@ -1,8 +1,19 @@
 # Generated file; do not modify.
+
+sdbusplus_current_path = 'com/ibm/ipzvpd/VWML'
+
 generated_sources += custom_target(
     'com/ibm/ipzvpd/VWML__cpp'.underscorify(),
-    input: [ '../../../../../yaml/com/ibm/ipzvpd/VWML.interface.yaml',  ],
-    output: [ 'common.hpp', 'server.cpp', 'server.hpp', 'aserver.hpp', 'client.hpp',  ],
+    input: [
+        '../../../../../yaml/com/ibm/ipzvpd/VWML.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',
         'com/ibm/ipzvpd/VWML',
     ],
+    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/com/ibm/ipzvpd/meson.build b/gen/com/ibm/ipzvpd/meson.build
index 48a5dfb..adb3b80 100644
--- a/gen/com/ibm/ipzvpd/meson.build
+++ b/gen/com/ibm/ipzvpd/meson.build
@@ -1,6 +1,49 @@
 # Generated file; do not modify.
 subdir('CP00')
-generated_others += custom_target(
+subdir('CRP0')
+subdir('DINF')
+subdir('LRP0')
+subdir('LRP1')
+subdir('LRP2')
+subdir('LRP3')
+subdir('LRP4')
+subdir('LRP5')
+subdir('LRP6')
+subdir('LRP7')
+subdir('LWP0')
+subdir('LWP1')
+subdir('LWP2')
+subdir('LWP3')
+subdir('LWP4')
+subdir('LWP5')
+subdir('LWP6')
+subdir('LWP7')
+subdir('LXR0')
+subdir('Location')
+subdir('MER0')
+subdir('PSPD')
+subdir('UTIL')
+subdir('VCEN')
+subdir('VCFG')
+subdir('VEIR')
+subdir('VER0')
+subdir('VINI')
+subdir('VMPU')
+subdir('VMSC')
+subdir('VPRI')
+subdir('VR10')
+subdir('VRML')
+subdir('VRTN')
+subdir('VSBK')
+subdir('VSBP')
+subdir('VSRC')
+subdir('VSYS')
+subdir('VW10')
+subdir('VWML')
+
+sdbusplus_current_path = 'com/ibm/ipzvpd'
+
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/CP00__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/CP00.interface.yaml',  ],
     output: [ 'CP00.md' ],
@@ -12,10 +55,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/CP00',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('CRP0')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/CRP0__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/CRP0.interface.yaml',  ],
     output: [ 'CRP0.md' ],
@@ -27,10 +72,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/CRP0',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('DINF')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/DINF__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/DINF.interface.yaml',  ],
     output: [ 'DINF.md' ],
@@ -42,10 +89,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/DINF',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP0')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP0__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP0.interface.yaml',  ],
     output: [ 'LRP0.md' ],
@@ -57,10 +106,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP0',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP1')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP1__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP1.interface.yaml',  ],
     output: [ 'LRP1.md' ],
@@ -72,10 +123,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP1',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP2')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP2__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP2.interface.yaml',  ],
     output: [ 'LRP2.md' ],
@@ -87,10 +140,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP2',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP3')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP3__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP3.interface.yaml',  ],
     output: [ 'LRP3.md' ],
@@ -102,10 +157,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP3',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP4')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP4__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP4.interface.yaml',  ],
     output: [ 'LRP4.md' ],
@@ -117,10 +174,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP4',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP5')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP5__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP5.interface.yaml',  ],
     output: [ 'LRP5.md' ],
@@ -132,10 +191,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP5',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP6')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP6__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP6.interface.yaml',  ],
     output: [ 'LRP6.md' ],
@@ -147,10 +208,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP6',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LRP7')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LRP7__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LRP7.interface.yaml',  ],
     output: [ 'LRP7.md' ],
@@ -162,10 +225,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LRP7',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP0')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP0__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP0.interface.yaml',  ],
     output: [ 'LWP0.md' ],
@@ -177,10 +242,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP0',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP1')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP1__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP1.interface.yaml',  ],
     output: [ 'LWP1.md' ],
@@ -192,10 +259,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP1',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP2')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP2__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP2.interface.yaml',  ],
     output: [ 'LWP2.md' ],
@@ -207,10 +276,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP2',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP3')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP3__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP3.interface.yaml',  ],
     output: [ 'LWP3.md' ],
@@ -222,10 +293,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP3',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP4')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP4__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP4.interface.yaml',  ],
     output: [ 'LWP4.md' ],
@@ -237,10 +310,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP4',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP5')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP5__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP5.interface.yaml',  ],
     output: [ 'LWP5.md' ],
@@ -252,10 +327,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP5',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP6')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP6__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP6.interface.yaml',  ],
     output: [ 'LWP6.md' ],
@@ -267,10 +344,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP6',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LWP7')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LWP7__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LWP7.interface.yaml',  ],
     output: [ 'LWP7.md' ],
@@ -282,10 +361,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LWP7',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('LXR0')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/LXR0__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/LXR0.interface.yaml',  ],
     output: [ 'LXR0.md' ],
@@ -297,10 +378,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/LXR0',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('Location')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/Location__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/Location.interface.yaml',  ],
     output: [ 'Location.md' ],
@@ -312,10 +395,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/Location',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('MER0')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/MER0__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/MER0.interface.yaml',  ],
     output: [ 'MER0.md' ],
@@ -327,10 +412,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/MER0',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('PSPD')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/PSPD__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/PSPD.interface.yaml',  ],
     output: [ 'PSPD.md' ],
@@ -342,10 +429,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/PSPD',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('UTIL')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/UTIL__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/UTIL.interface.yaml',  ],
     output: [ 'UTIL.md' ],
@@ -357,10 +446,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/UTIL',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VCEN')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VCEN__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VCEN.interface.yaml',  ],
     output: [ 'VCEN.md' ],
@@ -372,10 +463,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VCEN',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VCFG')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VCFG__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VCFG.interface.yaml',  ],
     output: [ 'VCFG.md' ],
@@ -387,10 +480,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VCFG',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VEIR')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VEIR__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VEIR.interface.yaml',  ],
     output: [ 'VEIR.md' ],
@@ -402,10 +497,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VEIR',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VER0')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VER0__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VER0.interface.yaml',  ],
     output: [ 'VER0.md' ],
@@ -417,10 +514,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VER0',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VINI')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VINI__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VINI.interface.yaml',  ],
     output: [ 'VINI.md' ],
@@ -432,10 +531,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VINI',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VMPU')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VMPU__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VMPU.interface.yaml',  ],
     output: [ 'VMPU.md' ],
@@ -447,10 +548,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VMPU',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VMSC')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VMSC__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VMSC.interface.yaml',  ],
     output: [ 'VMSC.md' ],
@@ -462,10 +565,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VMSC',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VPRI')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VPRI__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VPRI.interface.yaml',  ],
     output: [ 'VPRI.md' ],
@@ -477,10 +582,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VPRI',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VR10')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VR10__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VR10.interface.yaml',  ],
     output: [ 'VR10.md' ],
@@ -492,10 +599,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VR10',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VRML')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VRML__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VRML.interface.yaml',  ],
     output: [ 'VRML.md' ],
@@ -507,10 +616,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VRML',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VRTN')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VRTN__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VRTN.interface.yaml',  ],
     output: [ 'VRTN.md' ],
@@ -522,10 +633,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VRTN',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VSBK')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VSBK__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VSBK.interface.yaml',  ],
     output: [ 'VSBK.md' ],
@@ -537,10 +650,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VSBK',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VSBP')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VSBP__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VSBP.interface.yaml',  ],
     output: [ 'VSBP.md' ],
@@ -552,10 +667,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VSBP',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VSRC')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VSRC__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VSRC.interface.yaml',  ],
     output: [ 'VSRC.md' ],
@@ -567,10 +684,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VSRC',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VSYS')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VSYS__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VSYS.interface.yaml',  ],
     output: [ 'VSYS.md' ],
@@ -582,10 +701,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VSYS',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VW10')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VW10__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VW10.interface.yaml',  ],
     output: [ 'VW10.md' ],
@@ -597,10 +718,12 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VW10',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('VWML')
-generated_others += custom_target(
+generated_markdown += custom_target(
     'com/ibm/ipzvpd/VWML__markdown'.underscorify(),
     input: [ '../../../../yaml/com/ibm/ipzvpd/VWML.interface.yaml',  ],
     output: [ 'VWML.md' ],
@@ -612,5 +735,8 @@
         '--directory', meson.current_source_dir() / '../../../../yaml',
         'com/ibm/ipzvpd/VWML',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
diff --git a/gen/com/ibm/meson.build b/gen/com/ibm/meson.build
index f6f99d2..eaa3f53 100644
--- a/gen/com/ibm/meson.build
+++ b/gen/com/ibm/meson.build
@@ -3,7 +3,11 @@
 subdir('Hardware')
 subdir('Logging')
 subdir('VPD')
-generated_others += custom_target(
+subdir('ipzvpd')
+
+sdbusplus_current_path = 'com/ibm'
+
+generated_markdown += custom_target(
     'com/ibm/VPD__markdown'.underscorify(),
     input: [ '../../../yaml/com/ibm/VPD.errors.yaml',  ],
     output: [ 'VPD.md' ],
@@ -15,6 +19,8 @@
         '--directory', meson.current_source_dir() / '../../../yaml',
         'com/ibm/VPD',
     ],
+    install: should_generate_markdown,
+    install_dir: [inst_markdown_dir / sdbusplus_current_path],
+    build_by_default: should_generate_markdown,
 )
 
-subdir('ipzvpd')