start-update-interface: implement update manager

Implement the update manager module for the new daemon inheriting from
the Update D-Bus interface. Link with new interface APIs from
item_updater and software utils. New daemon will continue to exist at
runtime alongwith old flow, until old flow is deprecated and removed.
This change is based on -
https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/65738
https://gerrit.openbmc.org/c/openbmc/docs/+/65739

Change-Id: I0ecbbb8fc5340de7f66f8870ae389b405a2debee
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>
diff --git a/meson.build b/meson.build
index 82326d8..e4808d0 100644
--- a/meson.build
+++ b/meson.build
@@ -249,19 +249,14 @@
 )
 
 software_common_sources = files(
-    'software_utils.cpp'
-)
-
-executable(
-    'phosphor-image-updater',
-    image_updater_sources,
-    software_common_sources,
-    'item_updater_main.cpp',
-    dependencies: [deps, ssl, boost_dep],
-    install: true
+    'software_utils.cpp',
 )
 
 if get_option('software-update-dbus-interface').allowed()
+    image_updater_sources += files(
+        'update_manager.cpp'
+    )
+
     executable(
         'phosphor-software-manager',
         'software_manager.cpp',
@@ -276,6 +271,15 @@
 endif
 
 executable(
+    'phosphor-image-updater',
+    image_updater_sources,
+    software_common_sources,
+    'item_updater_main.cpp',
+    dependencies: [deps, ssl, boost_dep],
+    install: true
+)
+
+executable(
     'phosphor-version-software-manager',
     'image_manager.cpp',
     'image_manager_main.cpp',