diff --git a/meson.build b/meson.build
index be9b03a..133767d 100644
--- a/meson.build
+++ b/meson.build
@@ -1,4 +1,6 @@
-project('phosphor-dbus-interfaces', 'cpp',
+project(
+    'phosphor-dbus-interfaces',
+    'cpp',
     meson_version: '>=1.1.1',
     default_options: [
         'buildtype=debugoptimized',
@@ -15,36 +17,38 @@
 sdbuspp_gen_meson_prog = find_program('sdbus++-gen-meson', native: true)
 sdbusplusplus_depfiles = files()
 if sdbusplus_dep.type_name() == 'internal'
-    sdbusplusplus_depfiles = subproject('sdbusplus').get_variable('sdbusplusplus_depfiles')
+    sdbusplusplus_depfiles = subproject('sdbusplus').get_variable(
+        'sdbusplusplus_depfiles',
+    )
 endif
 
 # Parse options to determine appropriate subdirectories to support.
-selected_subdirs = []
+yaml_selected_subdirs = []
 if get_option('data_com_google')
-    selected_subdirs += 'com/google'
+    yaml_selected_subdirs += 'com/google'
 endif
 if get_option('data_com_ibm')
-    selected_subdirs += 'com/ibm'
+    yaml_selected_subdirs += 'com/ibm'
 endif
 if get_option('data_com_intel')
-    selected_subdirs += 'com/intel'
+    yaml_selected_subdirs += 'com/intel'
 endif
 if get_option('data_com_meta')
-    selected_subdirs += 'com/meta'
+    yaml_selected_subdirs += 'com/meta'
 endif
 if get_option('data_org_freedesktop')
-    selected_subdirs += 'org/freedesktop'
+    yaml_selected_subdirs += 'org/freedesktop'
 endif
 if get_option('data_org_open_power')
-    selected_subdirs += 'org/open_power'
+    yaml_selected_subdirs += 'org/open_power'
 endif
 if get_option('data_xyz_openbmc_project')
-    selected_subdirs += 'xyz/openbmc_project'
+    yaml_selected_subdirs += 'xyz/openbmc_project'
 endif
 
 # Install the selected YAML files.
-inst_yaml_dir = get_option('datadir') / 'phosphor-dbus-yaml/yaml'
-foreach d : selected_subdirs
+inst_yaml_dir = get_option('datadir') / 'phosphor-dbus-yaml'
+foreach d : yaml_selected_subdirs
     install_subdir(
         'yaml' / d,
         install_dir: inst_yaml_dir / d,
@@ -58,69 +62,16 @@
     subdir_done()
 endif
 
-generated_sources = []
-generated_others = []
-yaml_sources = []
+should_generate_cpp = true
+should_generate_markdown = get_option('generate_md')
+should_generate_registry = true
 
 # Source the generated meson files.
 subdir('gen')
-foreach d : selected_subdirs
-  subdir('gen' / d)
-endforeach
-custom_target(
-    'md',
-    command: 'true',
-    output: 'md',
-    capture: true,
-    depends: generated_others,
-    build_by_default: get_option('generate_md'))
 
-generated_files_headers = []
-generated_files_cpp = []
-foreach s : generated_sources
-    foreach f : s.to_list()
-        p = f.full_path()
-        if p.endswith('.hpp')
-            generated_files_headers += f
-        elif p.endswith('.cpp')
-            generated_files_cpp += f
-        else
-            error('Unknown filetype: ' + p)
-        endif
-    endforeach
-endforeach
-
-generated_root = meson.current_build_dir() / 'gen/'
-exclude_cpp = []
-foreach f : generated_files_cpp
-    exclude_cpp += f.full_path().replace(generated_root, '').strip('/')
-endforeach
-
-# Install the generated header files.
-exclude = exclude_cpp
-foreach o : generated_others
-    foreach f : o.to_list()
-        exclude += f.full_path().replace(generated_root, '').strip('/')
-    endforeach
-endforeach
-install_subdir(
-    generated_root,
-    exclude_files: exclude,
-    install_dir: get_option('includedir'),
-    strip_directory: true,
-)
-
-# Install the generated markdown files.
-exclude = exclude_cpp
-foreach f : generated_files_headers
-    exclude += f.full_path().replace(generated_root, '').strip('/')
-endforeach
-install_subdir(
-    generated_root,
-    exclude_files: exclude,
-    install_dir: get_option('datadir') / 'doc' / meson.project_name(),
-    strip_directory: true,
-)
+# Source the extra target to copy registry files into a separate tree so they
+# can be useful for dependees when we are built as a sub-project.
+subdir('registry')
 
 # Define and build libphosphor_dbus.so from the C++ files.
 libphosphor_dbus = library(
@@ -138,15 +89,24 @@
     name: meson.project_name(),
     version: meson.project_version(),
     description: 'Generated sdbusplus bindings for phosphor-dbus-interfaces',
-    variables: ['yamldir=' + '${pc_sysrootdir}${prefix}' / inst_yaml_dir],
+    variables: [
+        'yamldir=' + '${pc_sysrootdir}${prefix}' / inst_yaml_dir,
+        'registry_dir=' + '${pc_sysrootdir}${prefix}' / inst_registry_dir,
+    ],
 )
 
 phosphor_dbus_interfaces_dep = declare_dependency(
-    sources: generated_files_headers,
+    sources: generated_headers,
     include_directories: include_directories('gen'),
     link_with: libphosphor_dbus,
     dependencies: sdbusplus_dep,
-    variables: ['yamldir=' + meson.project_source_root() / 'yaml'],
+    variables: [
+        'yamldir=' + meson.project_source_root() / 'yaml',
+        'registry_dir=' + registry_copy_dir,
+    ],
 )
 
-meson.override_dependency('phosphor-dbus-interfaces', phosphor_dbus_interfaces_dep)
+meson.override_dependency(
+    'phosphor-dbus-interfaces',
+    phosphor_dbus_interfaces_dep,
+)
