diff --git a/dump-extensions/default/meson.build b/dump-extensions/default/meson.build
index dc86093..039cdca 100644
--- a/dump-extensions/default/meson.build
+++ b/dump-extensions/default/meson.build
@@ -1,5 +1,3 @@
 # SPDX-License-Identifier: Apache-2.0
 
-phosphor_dump_manager_sources += [
-        'dump-extensions/default/default.cpp',
-    ]
+phosphor_dump_manager_sources += ['dump-extensions/default/default.cpp']
diff --git a/dump-extensions/openpower-dumps/meson.build b/dump-extensions/openpower-dumps/meson.build
index f4ef0cd..c278644 100644
--- a/dump-extensions/openpower-dumps/meson.build
+++ b/dump-extensions/openpower-dumps/meson.build
@@ -1,33 +1,41 @@
 # SPDX-License-Identifier: Apache-2.0
 
-unit_files += {'input': 'dump-extensions/openpower-dumps/clear_hostdumps_poweroff.service',
-         'output': 'clear_hostdumps_poweroff.service'}
+unit_files += {
+    'input': 'dump-extensions/openpower-dumps/clear_hostdumps_poweroff.service',
+    'output': 'clear_hostdumps_poweroff.service',
+}
 
 # Configuration header file(openpower_dumps_config.h) generation
 opconf_data = configuration_data()
 
-opconf_data.set_quoted('SYSTEM_DUMP_OBJPATH', get_option('SYSTEM_DUMP_OBJPATH'),
-                      description : 'The system dump manager D-Bus path'
-                    )
-opconf_data.set_quoted('SYSTEM_DUMP_OBJ_ENTRY', get_option('SYSTEM_DUMP_OBJ_ENTRY'),
-                      description : 'The system dump entry D-Bus object path'
-                    )
+opconf_data.set_quoted(
+    'SYSTEM_DUMP_OBJPATH',
+    get_option('SYSTEM_DUMP_OBJPATH'),
+    description: 'The system dump manager D-Bus path',
+)
+opconf_data.set_quoted(
+    'SYSTEM_DUMP_OBJ_ENTRY',
+    get_option('SYSTEM_DUMP_OBJ_ENTRY'),
+    description: 'The system dump entry D-Bus object path',
+)
 
-opconf_data.set_quoted('RESOURCE_DUMP_OBJPATH', get_option('RESOURCE_DUMP_OBJPATH'),
-                      description : 'The resource dump manager D-Bus path'
-                    )
-opconf_data.set_quoted('RESOURCE_DUMP_OBJ_ENTRY', get_option('RESOURCE_DUMP_OBJ_ENTRY'),
-                      description : 'The resource dump entry D-Bus object path'
-                    )
-configure_file(configuration : opconf_data,
-               output : 'openpower_dumps_config.h'
-              )
+opconf_data.set_quoted(
+    'RESOURCE_DUMP_OBJPATH',
+    get_option('RESOURCE_DUMP_OBJPATH'),
+    description: 'The resource dump manager D-Bus path',
+)
+opconf_data.set_quoted(
+    'RESOURCE_DUMP_OBJ_ENTRY',
+    get_option('RESOURCE_DUMP_OBJ_ENTRY'),
+    description: 'The resource dump entry D-Bus object path',
+)
+configure_file(configuration: opconf_data, output: 'openpower_dumps_config.h')
 
 phosphor_dump_manager_sources += [
-        'dump-extensions/openpower-dumps/dump-extensions.cpp',
-        'dump-extensions/openpower-dumps/dump_manager_system.cpp',
-        'dump-extensions/openpower-dumps/system_dump_entry.cpp',
-        'dump-extensions/openpower-dumps/dump_manager_resource.cpp',
-        'dump-extensions/openpower-dumps/resource_dump_entry.cpp',
-        'dump-extensions/openpower-dumps/op_dump_util.cpp'
-    ]
+    'dump-extensions/openpower-dumps/dump-extensions.cpp',
+    'dump-extensions/openpower-dumps/dump_manager_system.cpp',
+    'dump-extensions/openpower-dumps/system_dump_entry.cpp',
+    'dump-extensions/openpower-dumps/dump_manager_resource.cpp',
+    'dump-extensions/openpower-dumps/resource_dump_entry.cpp',
+    'dump-extensions/openpower-dumps/op_dump_util.cpp',
+]
diff --git a/host-transport-extensions/default/meson.build b/host-transport-extensions/default/meson.build
index 423c847..0ee61dd 100644
--- a/host-transport-extensions/default/meson.build
+++ b/host-transport-extensions/default/meson.build
@@ -1,5 +1,5 @@
 # SPDX-License-Identifier: Apache-2.0
 
 phosphor_dump_manager_sources += [
-        'host-transport-extensions/default/default.cpp'
-    ]
+    'host-transport-extensions/default/default.cpp',
+]
diff --git a/host-transport-extensions/pldm/default/meson.build b/host-transport-extensions/pldm/default/meson.build
index 0ddd8b5..d7806cc 100644
--- a/host-transport-extensions/pldm/default/meson.build
+++ b/host-transport-extensions/pldm/default/meson.build
@@ -1,5 +1,5 @@
 # SPDX-License-Identifier: Apache-2.0
 
 phosphor_dump_manager_sources += [
-    'host-transport-extensions/pldm/default/pldm_interface.cpp'
+    'host-transport-extensions/pldm/default/pldm_interface.cpp',
 ]
diff --git a/host-transport-extensions/pldm/meson.build b/host-transport-extensions/pldm/meson.build
index 54f75ff..d52bfa9 100644
--- a/host-transport-extensions/pldm/meson.build
+++ b/host-transport-extensions/pldm/meson.build
@@ -1,10 +1,10 @@
 # SPDX-License-Identifier: Apache-2.0
 
 phosphor_dump_manager_sources += [
-        'host-transport-extensions/pldm/common/pldm_utils.cpp'
-    ]
+    'host-transport-extensions/pldm/common/pldm_utils.cpp',
+]
 
-phosphor_dump_manager_dependency += [ dependency('libpldm') ]
+phosphor_dump_manager_dependency += [dependency('libpldm')]
 
 if get_option('openpower-dumps-extension').allowed()
     subdir('oem/ibm')
diff --git a/host-transport-extensions/pldm/oem/ibm/meson.build b/host-transport-extensions/pldm/oem/ibm/meson.build
index 0f79a17..f0fd4fc 100644
--- a/host-transport-extensions/pldm/oem/ibm/meson.build
+++ b/host-transport-extensions/pldm/oem/ibm/meson.build
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: Apache-2.0
 
 phosphor_dump_manager_sources += [
-    'host-transport-extensions/pldm/oem/ibm/pldm_oem_cmds.cpp'
+    'host-transport-extensions/pldm/oem/ibm/pldm_oem_cmds.cpp',
 ]
 
 phosphor_dump_manager_incdir += include_directories('../../common')
diff --git a/meson.build b/meson.build
index ccd6bae..46df4fb 100644
--- a/meson.build
+++ b/meson.build
@@ -1,17 +1,18 @@
 # SPDX-License-Identifier: Apache-2.0
 
-project('phosphor-debug-collector',
-        'cpp',
-        meson_version: '>=1.1.1',
-        default_options: [
-                          'cpp_std=c++23',
-                          'warning_level=3',
-                          'werror=true',
-                          'buildtype=debugoptimized'
-                         ],
-        version: '1.0',
-        license: 'Apache-2.0'
-       )
+project(
+    'phosphor-debug-collector',
+    'cpp',
+    meson_version: '>=1.1.1',
+    default_options: [
+        'cpp_std=c++23',
+        'warning_level=3',
+        'werror=true',
+        'buildtype=debugoptimized',
+    ],
+    version: '1.0',
+    license: 'Apache-2.0',
+)
 
 cpp = meson.get_compiler('cpp')
 
@@ -22,7 +23,7 @@
 
 # Checking dependency external library
 
-libsystemd = dependency('libsystemd', version : '>=221')
+libsystemd = dependency('libsystemd', version: '>=221')
 
 sdbusplus_dep = dependency('sdbusplus')
 sdbusplusplus_prog = find_program('sdbus++')
@@ -41,107 +42,155 @@
     'cereal/cereal.hpp',
     'cereal::specialize',
     dependencies: cereal_dep,
-    required: false)
+    required: false,
+)
 if not has_cereal
     cereal_opts = import('cmake').subproject_options()
-    cereal_opts.add_cmake_defines({'BUILD_TESTS': 'OFF', 'SKIP_PERFORMANCE_COMPARISON': 'ON'})
+    cereal_opts.add_cmake_defines(
+        {'BUILD_TESTS': 'OFF', 'SKIP_PERFORMANCE_COMPARISON': 'ON'},
+    )
     cereal_proj = import('cmake').subproject(
         'cereal',
         options: cereal_opts,
-        required: false)
+        required: false,
+    )
     assert(cereal_proj.found(), 'cereal is required')
     cereal_dep = cereal_proj.dependency('cereal')
 endif
 
 # Disable FORTIFY_SOURCE when compiling with no optimization
-if(get_option('optimization') == '0')
-  add_project_arguments('-U_FORTIFY_SOURCE',language:['cpp','c'])
-  message('Disabling FORTIFY_SOURCE as optimization is set to 0')
+if (get_option('optimization') == '0')
+    add_project_arguments('-U_FORTIFY_SOURCE', language: ['cpp', 'c'])
+    message('Disabling FORTIFY_SOURCE as optimization is set to 0')
 endif
 
 # Configuration header file(config.h) generation
 
 conf_data = configuration_data()
 
-conf_data.set_quoted('DUMP_BUSNAME', get_option('DUMP_BUSNAME'),
-                      description : 'The Dbus busname to own'
-                    )
-conf_data.set_quoted('DUMP_OBJPATH', get_option('DUMP_OBJPATH'),
-                      description : 'The Dump manager Dbus root'
-                    )
-conf_data.set_quoted('BMC_DUMP_OBJPATH', get_option('BMC_DUMP_OBJPATH'),
-                      description : 'The BMC Dump manager Dbus path'
-                    )
-conf_data.set_quoted('CORE_FILE_DIR', get_option('CORE_FILE_DIR'),
-                      description : 'Directory where core dumps are placed'
-                    )
-conf_data.set_quoted('BMC_DUMP_OBJ_ENTRY', get_option('BMC_DUMP_OBJ_ENTRY'),
-                      description : 'The BMC dump entry DBus object path'
-                    )
-conf_data.set_quoted('BMC_DUMP_PATH', get_option('BMC_DUMP_PATH'),
-                     description : 'Directory where bmc dumps are placed')
-conf_data.set_quoted('SYSTEMD_PSTORE_PATH', get_option('SYSTEMD_PSTORE_PATH'),
-                     description : 'Path to the systemd pstore directory')
-conf_data.set('BMC_DUMP_MAX_SIZE', get_option('BMC_DUMP_MAX_SIZE'),
-               description : 'Maximum size of one bmc dump in kilo bytes'
-             )
-conf_data.set('BMC_DUMP_MIN_SPACE_REQD', get_option('BMC_DUMP_MIN_SPACE_REQD'),
-               description : 'Minimum space required for one bmc dump in kilo bytes'
-             )
-conf_data.set('BMC_DUMP_TOTAL_SIZE', get_option('BMC_DUMP_TOTAL_SIZE'),
-               description : 'Total size of the dump in kilo bytes'
-             )
-conf_data.set_quoted('OBJ_LOGGING', '/xyz/openbmc_project/logging',
-                      description : 'The log manager DBus object path'
-                    )
-conf_data.set_quoted('ELOG_ID_PERSIST_PATH', get_option('ELOG_ID_PERSIST_PATH'),
-                      description : 'Path of file for storing elog id\'s, which have associated dumps'
-                    )
-conf_data.set('CLASS_VERSION', get_option('CLASS_VERSION'),
-               description : 'Class version to register with Cereal'
-             )
-conf_data.set('ERROR_MAP_YAML', get_option('ERROR_MAP_YAML'),
-               description : 'YAML filepath containing error object paths'
-             )
-conf_data.set('JFFS_CORE_FILE_WORKAROUND', get_option('jffs-workaround').allowed(),
-               description : 'Turn on jffs workaround for core file'
-             )
-conf_data.set_quoted('FAULTLOG_DUMP_OBJ_ENTRY', get_option('FAULTLOG_DUMP_OBJ_ENTRY'),
-                      description : 'The Fault Log dump entry DBus object path'
-                    )
-conf_data.set_quoted('FAULTLOG_DUMP_OBJPATH', get_option('FAULTLOG_DUMP_OBJPATH'),
-                      description : 'The Fault Log Dump manager Dbus path'
-                    )
-conf_data.set_quoted('FAULTLOG_DUMP_PATH', get_option('FAULTLOG_DUMP_PATH'),
-                      description : 'Directory where fault logs are placed'
-                    )
-conf_data.set('BMC_DUMP_ROTATE_CONFIG', get_option('dump_rotate_config').allowed(),
-               description : 'Turn on rotate config for bmc dump'
-             )
+conf_data.set_quoted(
+    'DUMP_BUSNAME',
+    get_option('DUMP_BUSNAME'),
+    description: 'The Dbus busname to own',
+)
+conf_data.set_quoted(
+    'DUMP_OBJPATH',
+    get_option('DUMP_OBJPATH'),
+    description: 'The Dump manager Dbus root',
+)
+conf_data.set_quoted(
+    'BMC_DUMP_OBJPATH',
+    get_option('BMC_DUMP_OBJPATH'),
+    description: 'The BMC Dump manager Dbus path',
+)
+conf_data.set_quoted(
+    'CORE_FILE_DIR',
+    get_option('CORE_FILE_DIR'),
+    description: 'Directory where core dumps are placed',
+)
+conf_data.set_quoted(
+    'BMC_DUMP_OBJ_ENTRY',
+    get_option('BMC_DUMP_OBJ_ENTRY'),
+    description: 'The BMC dump entry DBus object path',
+)
+conf_data.set_quoted(
+    'BMC_DUMP_PATH',
+    get_option('BMC_DUMP_PATH'),
+    description: 'Directory where bmc dumps are placed',
+)
+conf_data.set_quoted(
+    'SYSTEMD_PSTORE_PATH',
+    get_option('SYSTEMD_PSTORE_PATH'),
+    description: 'Path to the systemd pstore directory',
+)
+conf_data.set(
+    'BMC_DUMP_MAX_SIZE',
+    get_option('BMC_DUMP_MAX_SIZE'),
+    description: 'Maximum size of one bmc dump in kilo bytes',
+)
+conf_data.set(
+    'BMC_DUMP_MIN_SPACE_REQD',
+    get_option('BMC_DUMP_MIN_SPACE_REQD'),
+    description: 'Minimum space required for one bmc dump in kilo bytes',
+)
+conf_data.set(
+    'BMC_DUMP_TOTAL_SIZE',
+    get_option('BMC_DUMP_TOTAL_SIZE'),
+    description: 'Total size of the dump in kilo bytes',
+)
+conf_data.set_quoted(
+    'OBJ_LOGGING',
+    '/xyz/openbmc_project/logging',
+    description: 'The log manager DBus object path',
+)
+conf_data.set_quoted(
+    'ELOG_ID_PERSIST_PATH',
+    get_option('ELOG_ID_PERSIST_PATH'),
+    description: 'Path of file for storing elog id\'s, which have associated dumps',
+)
+conf_data.set(
+    'CLASS_VERSION',
+    get_option('CLASS_VERSION'),
+    description: 'Class version to register with Cereal',
+)
+conf_data.set(
+    'ERROR_MAP_YAML',
+    get_option('ERROR_MAP_YAML'),
+    description: 'YAML filepath containing error object paths',
+)
+conf_data.set(
+    'JFFS_CORE_FILE_WORKAROUND',
+    get_option('jffs-workaround').allowed(),
+    description: 'Turn on jffs workaround for core file',
+)
+conf_data.set_quoted(
+    'FAULTLOG_DUMP_OBJ_ENTRY',
+    get_option('FAULTLOG_DUMP_OBJ_ENTRY'),
+    description: 'The Fault Log dump entry DBus object path',
+)
+conf_data.set_quoted(
+    'FAULTLOG_DUMP_OBJPATH',
+    get_option('FAULTLOG_DUMP_OBJPATH'),
+    description: 'The Fault Log Dump manager Dbus path',
+)
+conf_data.set_quoted(
+    'FAULTLOG_DUMP_PATH',
+    get_option('FAULTLOG_DUMP_PATH'),
+    description: 'Directory where fault logs are placed',
+)
+conf_data.set(
+    'BMC_DUMP_ROTATE_CONFIG',
+    get_option('dump_rotate_config').allowed(),
+    description: 'Turn on rotate config for bmc dump',
+)
 
 if cpp.has_header('poll.h')
-  add_project_arguments('-DPLDM_HAS_POLL=1', language: 'cpp')
+    add_project_arguments('-DPLDM_HAS_POLL=1', language: 'cpp')
 endif
 
-configure_file(configuration : conf_data,
-               output : 'config.h'
-              )
+configure_file(configuration: conf_data, output: 'config.h')
 
 dump_types_yaml_files = []
 
 # Dump types YAML file
-dump_types_yaml_files += {'input': 'example_dump_types.yaml',
-         'output': 'dump_types.yaml'}
+dump_types_yaml_files += {
+    'input': 'example_dump_types.yaml',
+    'output': 'dump_types.yaml',
+}
 
 # Copy and combine YAML files
 concatenate_command = 'cat '
 combined_yaml_file = 'combined_dump_types.yaml'
 
 foreach yaml_file : dump_types_yaml_files
-    configure_file(input : yaml_file.get('input'),
-                   output : yaml_file.get('output'),
-                   copy : true)
-    concatenate_command += meson.project_build_root() + '/' + yaml_file.get('output') + ' '
+    configure_file(
+        input: yaml_file.get('input'),
+        output: yaml_file.get('output'),
+        copy: true,
+    )
+    concatenate_command += meson.project_build_root() + '/' + yaml_file.get(
+        'output',
+    ) + ' '
 endforeach
 
 concatenate_command += '> ' + meson.project_build_root() + '/' + combined_yaml_file
@@ -152,74 +201,76 @@
 map_gen_file_loc += '/map_gen.py'
 
 dump_types_hpp = custom_target(
-                    'dump_types.hpp',
-                    command : [
-                        python,
-                        map_gen_file_loc,
-                        '-i',
-                        meson.project_build_root() + '/' +  combined_yaml_file,
-                        '-j',
-                        get_option('ERROR_MAP_YAML'),
-                        '-t',
-                        'dump_types.hpp.mako',
-                        '-o',
-                        'dump_types.hpp'
-                    ],
-                    depend_files : [ 'dump_types.hpp.mako',
-                                     'map_gen.py',
-                                     meson.project_build_root() + '/' +  combined_yaml_file,
-                                     get_option('ERROR_MAP_YAML')
-                                   ],
-                    output : 'dump_types.hpp'
-                 )
+    'dump_types.hpp',
+    command: [
+        python,
+        map_gen_file_loc,
+        '-i',
+        meson.project_build_root() + '/' + combined_yaml_file,
+        '-j',
+        get_option('ERROR_MAP_YAML'),
+        '-t',
+        'dump_types.hpp.mako',
+        '-o',
+        'dump_types.hpp',
+    ],
+    depend_files: [
+        'dump_types.hpp.mako',
+        'map_gen.py',
+        meson.project_build_root() + '/' + combined_yaml_file,
+        get_option('ERROR_MAP_YAML'),
+    ],
+    output: 'dump_types.hpp',
+)
 
 dump_types_cpp = custom_target(
-                    'dump_types.cpp',
-                    command : [
-                        python,
-                        map_gen_file_loc,
-                        '-i',
-                        meson.project_build_root() + '/' +  combined_yaml_file,
-                        '-j',
-                        get_option('ERROR_MAP_YAML'),
-                        '-t',
-                        'dump_types.cpp.mako',
-                        '-o',
-                        'dump_types.cpp'
-                    ],
-                    depend_files : [ 'dump_types.cpp.mako',
-                                     'map_gen.py',
-                                     meson.project_build_root() + '/' +  combined_yaml_file,
-                                     get_option('ERROR_MAP_YAML')
-                                   ],
-                    output : 'dump_types.cpp'
-                 )
+    'dump_types.cpp',
+    command: [
+        python,
+        map_gen_file_loc,
+        '-i',
+        meson.project_build_root() + '/' + combined_yaml_file,
+        '-j',
+        get_option('ERROR_MAP_YAML'),
+        '-t',
+        'dump_types.cpp.mako',
+        '-o',
+        'dump_types.cpp',
+    ],
+    depend_files: [
+        'dump_types.cpp.mako',
+        'map_gen.py',
+        meson.project_build_root() + '/' + combined_yaml_file,
+        get_option('ERROR_MAP_YAML'),
+    ],
+    output: 'dump_types.cpp',
+)
 
 phosphor_dump_manager_sources = [
-        'dump_entry.cpp',
-        'dump_manager.cpp',
-        'dump_manager_bmc.cpp',
-        'dump_manager_main.cpp',
-        'dump_serialize.cpp',
-        'elog_watch.cpp',
-        dump_types_hpp,
-        dump_types_cpp,
-        'watch.cpp',
-        'bmc_dump_entry.cpp',
-        'dump_utils.cpp',
-        'dump_offload.cpp',
-        'dump_manager_faultlog.cpp',
-        'faultlog_dump_entry.cpp'
-    ]
+    'dump_entry.cpp',
+    'dump_manager.cpp',
+    'dump_manager_bmc.cpp',
+    'dump_manager_main.cpp',
+    'dump_serialize.cpp',
+    'elog_watch.cpp',
+    dump_types_hpp,
+    dump_types_cpp,
+    'watch.cpp',
+    'bmc_dump_entry.cpp',
+    'dump_utils.cpp',
+    'dump_offload.cpp',
+    'dump_manager_faultlog.cpp',
+    'faultlog_dump_entry.cpp',
+]
 
 phosphor_dump_manager_dependency = [
-        phosphor_dbus_interfaces_dep,
-        sdbusplus_dep,
-        sdeventplus_dep,
-        phosphor_logging_dep,
-        cereal_dep,
-        nlohmann_json_dep,
-    ]
+    phosphor_dbus_interfaces_dep,
+    sdbusplus_dep,
+    sdeventplus_dep,
+    phosphor_logging_dep,
+    cereal_dep,
+    nlohmann_json_dep,
+]
 
 phosphor_dump_manager_install = true
 
@@ -234,84 +285,89 @@
 subdir('dump-extensions')
 
 phosphor_dump_monitor_sources = [
-        dump_types_hpp,
-        'core_manager.cpp',
-        'core_manager_main.cpp',
-        'watch.cpp'
-    ]
+    dump_types_hpp,
+    'core_manager.cpp',
+    'core_manager_main.cpp',
+    'watch.cpp',
+]
 
 phosphor_dump_monitor_dependency = [
-        phosphor_dbus_interfaces_dep,
-        phosphor_logging_dep,
-        sdeventplus_dep,
-    ]
+    phosphor_dbus_interfaces_dep,
+    phosphor_logging_dep,
+    sdeventplus_dep,
+]
 
 phosphor_dump_monitor_install = true
 
 phosphor_dump_monitor_incdir = []
 
 phosphor_ramoops_monitor_sources = [
-        dump_types_hpp,
-        'ramoops_manager.cpp',
-        'ramoops_manager_main.cpp',
-        'watch.cpp'
-    ]
+    dump_types_hpp,
+    'ramoops_manager.cpp',
+    'ramoops_manager_main.cpp',
+    'watch.cpp',
+]
 
 phosphor_ramoops_monitor_dependency = [
-        phosphor_dbus_interfaces_dep,
-        phosphor_logging_dep,
-        sdeventplus_dep,
-    ]
+    phosphor_dbus_interfaces_dep,
+    phosphor_logging_dep,
+    sdeventplus_dep,
+]
 
 phosphor_ramoops_monitor_install = true
 
 phosphor_ramoops_monitor_incdir = []
 
-executables = [[ 'phosphor-dump-manager',
-                  phosphor_dump_manager_sources,
-                  phosphor_dump_manager_dependency,
-                  phosphor_dump_manager_install,
-                  phosphor_dump_manager_incdir
-               ],
-               [ 'phosphor-dump-monitor',
-                  phosphor_dump_monitor_sources,
-                  phosphor_dump_monitor_dependency,
-                  phosphor_dump_monitor_install,
-                  phosphor_dump_monitor_incdir
-               ],
-               [ 'phosphor-ramoops-monitor',
-                  phosphor_ramoops_monitor_sources,
-                  phosphor_ramoops_monitor_dependency,
-                  phosphor_ramoops_monitor_install,
-                  phosphor_ramoops_monitor_incdir
-               ]
-              ]
+executables = [
+    [
+        'phosphor-dump-manager',
+        phosphor_dump_manager_sources,
+        phosphor_dump_manager_dependency,
+        phosphor_dump_manager_install,
+        phosphor_dump_manager_incdir,
+    ],
+    [
+        'phosphor-dump-monitor',
+        phosphor_dump_monitor_sources,
+        phosphor_dump_monitor_dependency,
+        phosphor_dump_monitor_install,
+        phosphor_dump_monitor_incdir,
+    ],
+    [
+        'phosphor-ramoops-monitor',
+        phosphor_ramoops_monitor_sources,
+        phosphor_ramoops_monitor_dependency,
+        phosphor_ramoops_monitor_install,
+        phosphor_ramoops_monitor_incdir,
+    ],
+]
 
 foreach executable : executables
     binary = executable(
-                        executable[0],
-                        executable[1],
-                        dependencies: executable[2],
-                        install : executable[3],
-                        include_directories : executable[4]
-                       )
+        executable[0],
+        executable[1],
+        dependencies: executable[2],
+        install: executable[3],
+        include_directories: executable[4],
+    )
 endforeach
 
 unit_subs = configuration_data()
 unit_subs.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
 systemd_system_unit_dir = dependency('systemd').get_variable(
     'systemdsystemunitdir',
-    pkgconfig_define: ['prefix', get_option('prefix')])
+    pkgconfig_define: ['prefix', get_option('prefix')],
+)
 foreach u : unit_files
     configure_file(
         configuration: unit_subs,
         input: u.get('input'),
         install: true,
         install_dir: systemd_system_unit_dir,
-        output: u.get('output')
+        output: u.get('output'),
     )
 endforeach
 
 if get_option('tests').allowed()
-  subdir('test')
+    subdir('test')
 endif
diff --git a/meson.options b/meson.options
index 012a167..57cc06e 100644
--- a/meson.options
+++ b/meson.options
@@ -2,128 +2,177 @@
 
 option('tests', type: 'feature', description: 'Build tests')
 
-option('jffs-workaround', type: 'feature',
-        description : 'Turn on jffs workaround for core file'
-      )
-
-option('DUMP_BUSNAME', type : 'string',
-        value : 'xyz.openbmc_project.Dump.Manager',
-        description : 'The D-Bus busname to own'
-      )
-
-option('DUMP_OBJPATH', type : 'string',
-        value : '/xyz/openbmc_project/dump',
-        description : 'The dump manager D-Bus root'
-      )
-
-option('BMC_DUMP_OBJPATH', type : 'string',
-        value : '/xyz/openbmc_project/dump/bmc',
-        description : 'The BMC dump manager D-Bus object path'
-      )
-
-option('CORE_FILE_DIR', type : 'string',
-        value : '/var/lib/systemd/coredump',
-        description : 'Directory where core dumps are placed'
-      )
-
-option('BMC_DUMP_OBJ_ENTRY', type : 'string',
-        value : '/xyz/openbmc_project/dump/bmc/entry',
-        description : 'The BMC dump entry D-Bus object path'
-      )
-
-option('BMC_DUMP_PATH', type : 'string',
-        value : '/var/lib/phosphor-debug-collector/dumps/',
-        description : 'Directory where bmc dumps are placed'
-      )
-
-option('SYSTEMD_PSTORE_PATH', type : 'string',
-        value : '/var/lib/systemd/pstore/',
-        description : 'Path to the systemd pstore directory'
+option(
+    'jffs-workaround',
+    type: 'feature',
+    description: 'Turn on jffs workaround for core file',
 )
 
-option('BMC_DUMP_MAX_SIZE', type : 'integer',
-        value : 200,
-        description : 'Maximum size of one bmc dump in kilo bytes'
-      )
+option(
+    'DUMP_BUSNAME',
+    type: 'string',
+    value: 'xyz.openbmc_project.Dump.Manager',
+    description: 'The D-Bus busname to own',
+)
 
-option('BMC_DUMP_MIN_SPACE_REQD', type : 'integer',
-        value : 20,
-        description : 'Minimum space required for one bmc dump in kilo bytes'
-      )
+option(
+    'DUMP_OBJPATH',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump',
+    description: 'The dump manager D-Bus root',
+)
 
-option('BMC_DUMP_TOTAL_SIZE', type : 'integer',
-        value : 1024,
-        description : 'Total size of the dump in kilo bytes'
-      )
+option(
+    'BMC_DUMP_OBJPATH',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/bmc',
+    description: 'The BMC dump manager D-Bus object path',
+)
 
-option('ELOG_ID_PERSIST_PATH', type : 'string',
-        value : '/var/lib/phosphor-debug-collector/elogid',
-        description : 'Path of file for storing elog id\'s, which have associated dumps'
-      )
+option(
+    'CORE_FILE_DIR',
+    type: 'string',
+    value: '/var/lib/systemd/coredump',
+    description: 'Directory where core dumps are placed',
+)
 
-option('CLASS_VERSION', type : 'integer',
-        value : 1,
-        description : 'Class version to register with Cereal'
-      )
+option(
+    'BMC_DUMP_OBJ_ENTRY',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/bmc/entry',
+    description: 'The BMC dump entry D-Bus object path',
+)
 
-option('ERROR_MAP_YAML', type : 'string',
-        value : 'example_errors_watch.yaml',
-        description : 'YAML filepath containing error object paths'
-      )
+option(
+    'BMC_DUMP_PATH',
+    type: 'string',
+    value: '/var/lib/phosphor-debug-collector/dumps/',
+    description: 'Directory where bmc dumps are placed',
+)
 
-option('host-transport', type : 'string',
-        value : 'default',
-        description : 'To specify the host dump transport protocol')
+option(
+    'SYSTEMD_PSTORE_PATH',
+    type: 'string',
+    value: '/var/lib/systemd/pstore/',
+    description: 'Path to the systemd pstore directory',
+)
 
-option('openpower-dumps-extension', type: 'feature',
-        value : 'disabled',
-        description : 'Enable Open Power specific dumps'
-      )
+option(
+    'BMC_DUMP_MAX_SIZE',
+    type: 'integer',
+    value: 200,
+    description: 'Maximum size of one bmc dump in kilo bytes',
+)
 
-option('dump_rotate_config', type: 'feature',
-        value : 'disabled',
-        description : 'Enable rotate config for bmc dump'
-      )
+option(
+    'BMC_DUMP_MIN_SPACE_REQD',
+    type: 'integer',
+    value: 20,
+    description: 'Minimum space required for one bmc dump in kilo bytes',
+)
+
+option(
+    'BMC_DUMP_TOTAL_SIZE',
+    type: 'integer',
+    value: 1024,
+    description: 'Total size of the dump in kilo bytes',
+)
+
+option(
+    'ELOG_ID_PERSIST_PATH',
+    type: 'string',
+    value: '/var/lib/phosphor-debug-collector/elogid',
+    description: 'Path of file for storing elog id\'s, which have associated dumps',
+)
+
+option(
+    'CLASS_VERSION',
+    type: 'integer',
+    value: 1,
+    description: 'Class version to register with Cereal',
+)
+
+option(
+    'ERROR_MAP_YAML',
+    type: 'string',
+    value: 'example_errors_watch.yaml',
+    description: 'YAML filepath containing error object paths',
+)
+
+option(
+    'host-transport',
+    type: 'string',
+    value: 'default',
+    description: 'To specify the host dump transport protocol',
+)
+
+option(
+    'openpower-dumps-extension',
+    type: 'feature',
+    value: 'disabled',
+    description: 'Enable Open Power specific dumps',
+)
+
+option(
+    'dump_rotate_config',
+    type: 'feature',
+    value: 'disabled',
+    description: 'Enable rotate config for bmc dump',
+)
 
 # Fault log options
 
-option('FAULTLOG_DUMP_PATH', type : 'string',
-        value : '/var/lib/phosphor-debug-collector/faultlogs/',
-        description : 'Directory where fault logs are placed'
-      )
+option(
+    'FAULTLOG_DUMP_PATH',
+    type: 'string',
+    value: '/var/lib/phosphor-debug-collector/faultlogs/',
+    description: 'Directory where fault logs are placed',
+)
 
-option('FAULTLOG_DUMP_OBJPATH', type : 'string',
-        value : '/xyz/openbmc_project/dump/faultlog',
-        description : 'The fault log dump manager D-Bus object path'
-      )
+option(
+    'FAULTLOG_DUMP_OBJPATH',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/faultlog',
+    description: 'The fault log dump manager D-Bus object path',
+)
 
-option('FAULTLOG_DUMP_OBJ_ENTRY', type : 'string',
-        value : '/xyz/openbmc_project/dump/faultlog/entry',
-        description : 'The fault log dump entry D-Bus object path'
-      )
+option(
+    'FAULTLOG_DUMP_OBJ_ENTRY',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/faultlog/entry',
+    description: 'The fault log dump entry D-Bus object path',
+)
 
 # Configurations for openpower-dump extension
 
 # System dump options
 
-option('SYSTEM_DUMP_OBJPATH', type : 'string',
-        value : '/xyz/openbmc_project/dump/system',
-        description : 'The system dump manager D-Bus object path'
-      )
+option(
+    'SYSTEM_DUMP_OBJPATH',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/system',
+    description: 'The system dump manager D-Bus object path',
+)
 
-option('SYSTEM_DUMP_OBJ_ENTRY', type : 'string',
-        value : '/xyz/openbmc_project/dump/system/entry',
-        description : 'The system dump entry D-Bus object path'
-      )
+option(
+    'SYSTEM_DUMP_OBJ_ENTRY',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/system/entry',
+    description: 'The system dump entry D-Bus object path',
+)
 
 # Resource dump options
 
-option('RESOURCE_DUMP_OBJPATH', type : 'string',
-        value : '/xyz/openbmc_project/dump/resource',
-        description : 'The resource dump manager D-Bus object path'
-      )
+option(
+    'RESOURCE_DUMP_OBJPATH',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/resource',
+    description: 'The resource dump manager D-Bus object path',
+)
 
-option('RESOURCE_DUMP_OBJ_ENTRY', type : 'string',
-        value : '/xyz/openbmc_project/dump/resource/entry',
-        description : 'The resource dump entry D-Bus object path'
-      )
+option(
+    'RESOURCE_DUMP_OBJ_ENTRY',
+    type: 'string',
+    value: '/xyz/openbmc_project/dump/resource/entry',
+    description: 'The resource dump entry D-Bus object path',
+)
diff --git a/test/meson.build b/test/meson.build
index a8cb358..7c88308 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -8,35 +8,37 @@
                 dependency('threads'),
                 gtest_proj.dependency('gtest'),
                 gtest_proj.dependency('gtest_main'),
-            ]
+            ],
         )
         gmock_dep = gtest_proj.dependency('gmock')
-  else
+    else
         assert(
             not get_option('tests').allowed(),
-            'Googletest is required if tests are enabled'
+            'Googletest is required if tests are enabled',
         )
-  endif
+    endif
 endif
 
-dump = declare_dependency(
-         sources: [
-        '../dump_serialize.cpp'
-    ])
+dump = declare_dependency(sources: ['../dump_serialize.cpp'])
 
-tests = [
-    'debug_inif_test',
-]
+tests = ['debug_inif_test']
 
 foreach t : tests
-  test(t, executable(t.underscorify(), t + '.cpp',
-                     include_directories: ['.', '../'],
-                     implicit_include_directories: false,
-                     dependencies:[ gtest_dep,
-                                    gmock_dep,
-                                    dump,
-                                    phosphor_logging_dep,
-                                    cereal_dep,
-                                    ]),
-       workdir: meson.current_source_dir())
+    test(
+        t,
+        executable(
+            t.underscorify(),
+            t + '.cpp',
+            include_directories: ['.', '../'],
+            implicit_include_directories: false,
+            dependencies: [
+                gtest_dep,
+                gmock_dep,
+                dump,
+                phosphor_logging_dep,
+                cereal_dep,
+            ],
+        ),
+        workdir: meson.current_source_dir(),
+    )
 endforeach
