meson: Provide missing boost dependency and its wrap file

Currently local meson build fails with the error:
"""
fatal error: boost/asio/io_context.hpp: No such file or directory
"""
This is happening because boost is not listed as a dependency for the
targets that use it.
Add boost dependency for all the necessary targets and provide a wrap
file for boost for the local meson build.

Tested:
"meson setup build && cd build && meson compile" finishes successfully.

Change-Id: I3f418091d8a2da9377684e16ce3e2f88db4c6eb8
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>
diff --git a/.gitignore b/.gitignore
index 64bb464..6a2f5b5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,5 @@
 build*/
 subprojects/*
 !subprojects/*.wrap
+!subprojects/packagefiles
 *.sw*
diff --git a/meson.build b/meson.build
index 614351f..8c1183f 100644
--- a/meson.build
+++ b/meson.build
@@ -34,6 +34,8 @@
               '-DBOOST_ERROR_CODE_HEADER_ONLY',
               '-DBOOST_SYSTEM_NO_DEPRECATED']
 
+boost_dep = dependency('boost')
+
 systemd_system_unit_dir = systemd.get_variable(
     'systemdsystemunitdir',
     pkgconfig_define: ['prefix', get_option('prefix')])
@@ -135,6 +137,7 @@
         phosphor_dbus_interfaces,
         phosphor_logging,
         sdbusplus,
+        boost_dep
     ],
     cpp_args: boost_args,
     install: true,
diff --git a/multi-presence/meson.build b/multi-presence/meson.build
index be1f97c..19aa9bf 100644
--- a/multi-presence/meson.build
+++ b/multi-presence/meson.build
@@ -8,9 +8,10 @@
         nlohmann_json_dep,
         phosphor_logging,
         sdbusplus,
+        boost_dep,
     ],
     cpp_args: boost_args,
     include_directories: '..',
     implicit_include_directories: false,
     install: true,
-)
\ No newline at end of file
+)
diff --git a/subprojects/boost.wrap b/subprojects/boost.wrap
new file mode 100644
index 0000000..49a32b8
--- /dev/null
+++ b/subprojects/boost.wrap
@@ -0,0 +1,11 @@
+[wrap-file]
+directory = boost_1_84_0
+
+source_url = https://boostorg.jfrog.io/artifactory/main/release/1.84.0/source/boost_1_84_0.tar.bz2
+source_hash = cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454
+source_filename = 1_84_0.tar.bz2
+
+patch_directory = boost
+
+[provide]
+boost = boost_dep
diff --git a/subprojects/packagefiles/boost/meson.build b/subprojects/packagefiles/boost/meson.build
new file mode 100644
index 0000000..2caabf5
--- /dev/null
+++ b/subprojects/packagefiles/boost/meson.build
@@ -0,0 +1,11 @@
+project('boost',
+    'cpp',
+    version : '1.84.0',
+    license : 'Boost'
+)
+
+boost_dep = declare_dependency(
+    include_directories : include_directories('.'),
+)
+
+meson.override_dependency('boost', boost_dep)