diff --git a/.gitignore b/.gitignore
index 378eac2..6da54be 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
-build
+build*/
+subprojects/*
+!subprojects/*.wrap
diff --git a/meson.build b/meson.build
index 29939ed..e182f46 100644
--- a/meson.build
+++ b/meson.build
@@ -1,10 +1,11 @@
 project('phosphor-bmc-code-mgmt', 'cpp',
     default_options: [
         'buildtype=debugoptimized',
-        'cpp_std=c++17',
+        'cpp_std=c++20',
         'warning_level=3',
         'werror=true'
     ],
+    meson_version: '>= 0.57.0',
     license: 'Apache-2.0',
     version: '1.0')
 
@@ -19,6 +20,8 @@
     language: 'cpp',
 )
 
+cpp = meson.get_compiler('cpp')
+
 conf = configuration_data()
 
 # DBus information
@@ -96,10 +99,52 @@
 
 configure_file(output: 'config.h', configuration: conf)
 
+sdbusplus_dep = dependency('sdbusplus', required: false)
+sdbusplus_proj = dependency('', required: false)
+if not sdbusplus_dep.found() or sdbusplus_dep.type_name() == 'internal'
+    sdbusplus_proj = subproject('sdbusplus')
+endif
+if not sdbusplus_dep.found()
+    sdbusplus_dep = sdbusplus_proj.get_variable('sdbusplus_dep')
+endif
+
+if sdbusplus_proj.found()
+    sdbusplusplus_prog = sdbusplus_proj.get_variable('sdbusplusplus_prog')
+    sdbuspp_gen_meson_prog = sdbusplus_proj.get_variable(
+        'sdbuspp_gen_meson_prog')
+else
+    sdbusplusplus_prog = find_program('sdbus++', native: true)
+    sdbuspp_gen_meson_prog = find_program('sdbus++-gen-meson', native: true)
+endif
+
+cereal_dep = dependency('cereal', required: false)
+has_cereal = cpp.has_header_symbol(
+    'cereal/cereal.hpp',
+    'cereal::specialize',
+    dependencies: cereal_dep,
+    required: false)
+if not has_cereal
+    cereal_opts = import('cmake').subproject_options()
+    cereal_opts.add_cmake_defines({'BUILD_TESTS': 'OFF'})
+    cereal_proj = import('cmake').subproject(
+        'cereal',
+        options: cereal_opts,
+        required: false)
+    assert(cereal_proj.found(), 'cereal is required')
+    cereal_dep = cereal_proj.dependency('cereal')
+endif
+
 deps = [
-    dependency('phosphor-dbus-interfaces'),
-    dependency('phosphor-logging'),
-    dependency('sdbusplus')
+    dependency(
+        'phosphor-dbus-interfaces',
+        fallback: ['phosphor-dbus-interfaces', 'phosphor_dbus_interfaces_dep'],
+    ),
+    dependency(
+        'phosphor-logging',
+        fallback: ['phosphor-logging', 'phosphor_logging_dep'],
+    ),
+    sdbusplus_dep,
+    cereal_dep,
 ]
 
 ssl = dependency('openssl')
@@ -119,7 +164,6 @@
     'xyz.openbmc_project.Software.Version.service.in'
 ]
 
-sdbuspp = find_program('sdbus++')
 subdir('xyz/openbmc_project/Software/Image')
 
 image_updater_sources = files(
diff --git a/subprojects/cereal.wrap b/subprojects/cereal.wrap
new file mode 100644
index 0000000..a4cb7ec
--- /dev/null
+++ b/subprojects/cereal.wrap
@@ -0,0 +1,4 @@
+[wrap-git]
+url = https://github.com/USCiLab/cereal.git
+revision = HEAD
+# need at least for C++20 fixes 3e4d1b84cab4891368d2179a61a7ba06a5693e7f
diff --git a/subprojects/phosphor-dbus-interfaces.wrap b/subprojects/phosphor-dbus-interfaces.wrap
new file mode 100644
index 0000000..935a8b2
--- /dev/null
+++ b/subprojects/phosphor-dbus-interfaces.wrap
@@ -0,0 +1,3 @@
+[wrap-git]
+url = https://github.com/openbmc/phosphor-dbus-interfaces.git
+revision = HEAD
diff --git a/subprojects/phosphor-logging.wrap b/subprojects/phosphor-logging.wrap
new file mode 100644
index 0000000..a039fcf
--- /dev/null
+++ b/subprojects/phosphor-logging.wrap
@@ -0,0 +1,3 @@
+[wrap-git]
+url = https://github.com/openbmc/phosphor-logging.git
+revision = HEAD
diff --git a/subprojects/sdbusplus.wrap b/subprojects/sdbusplus.wrap
new file mode 100644
index 0000000..d470130
--- /dev/null
+++ b/subprojects/sdbusplus.wrap
@@ -0,0 +1,3 @@
+[wrap-git]
+url = https://github.com/openbmc/sdbusplus.git
+revision = HEAD
diff --git a/xyz/openbmc_project/Software/Image/meson.build b/xyz/openbmc_project/Software/Image/meson.build
index 293efa0..4ae382f 100644
--- a/xyz/openbmc_project/Software/Image/meson.build
+++ b/xyz/openbmc_project/Software/Image/meson.build
@@ -2,7 +2,7 @@
     'error.hpp',
     capture: true,
     command: [
-        sdbuspp,
+        sdbusplusplus_prog,
         '-r', meson.source_root(),
         'error',
         'exception-header',
@@ -18,7 +18,7 @@
     'error.cpp',
     capture: true,
     command: [
-        sdbuspp,
+        sdbusplusplus_prog,
         '-r', meson.source_root(),
         'error',
         'exception-cpp',
