meson: Add boost and sdbusplus wraps

The wraps make it possible to build the project without installing the
dependencies to the system.

Both dependencies are only required for the `raw-peci` application.
There are some difficulties building the application when the
dependencies are resolved via the subproject wraps. The libpeci compiler
flags are carried through to the subprojects even though they are added
via `add_project_arguments()`. They identify a bunch of concerns in both
sdbusplus and boost, for example:

```
In file included from ../subprojects/boost_1_82_0/boost/asio/detail/epoll_reactor.hpp:30:
../subprojects/boost_1_82_0/boost/asio/detail/socket_types.hpp: At global scope:
../subprojects/boost_1_82_0/boost/asio/detail/socket_types.hpp:419:40: warning: signed conversion from ‘unsigned int’ to ‘int’ changes value from ‘2769289216’ to ‘-1525678080’ [-Wsign-conversion]
  419 | const int custom_socket_option_level = 0xA5100000;
      |                                        ^~~~~~~~~~
In file included from ../subprojects/boost_1_82_0/boost/asio/detail/epoll_reactor.hpp:292:
../subprojects/boost_1_82_0/boost/asio/detail/impl/epoll_reactor.ipp: In member function ‘virtual void boost::asio::detail::epoll_reactor::run(long int, boost::asio::detail::op_queue<boost::asio::detail::scheduler_operation>&)’:
../subprojects/boost_1_82_0/boost/asio/detail/impl/epoll_reactor.ipp:500:26: warning: conversion from ‘long int’ to ‘int’ may change value [-Wconversion]
  500 |     timeout = (usec < 0) ? -1 : ((usec - 1) / 1000 + 1);
      |               ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

and

```
In file included from ../subprojects/sdbusplus/include/sdbusplus/server.hpp:17,
                 from ../subprojects/sdbusplus/include/sdbusplus/asio/object_server.hpp:13:
../subprojects/sdbusplus/include/sdbusplus/server/transaction.hpp: In constructor ‘sdbusplus::server::transaction::details::Transaction::Transaction()’:
../subprojects/sdbusplus/include/sdbusplus/server/transaction.hpp:25:35: warning: conversion from ‘time_t’ {aka ‘long int’} to ‘int’ may change value [-Wconversion]
   25 |     Transaction() : time(std::time(nullptr)), thread(std::this_thread::get_id())
      |                          ~~~~~~~~~^~~~~~~~~
```

This is compounded by the project defaulting to `werror=true`. There are
two options to move past the issues:

1. Configure the project with a global `-Dwerror=false`
2. Prevent the build of `raw-peci` with `-Draw-peci=disabled`

Change-Id: Ifc0b99a64b89de6472bbd68e98569774d651f482
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
diff --git a/subprojects/boost.wrap b/subprojects/boost.wrap
new file mode 100644
index 0000000..a25e9f1
--- /dev/null
+++ b/subprojects/boost.wrap
@@ -0,0 +1,11 @@
+[wrap-file]
+directory = boost_1_82_0
+
+source_url = https://boostorg.jfrog.io/artifactory/main/release/1.82.0/source/boost_1_82_0.tar.bz2
+source_hash = a6e1ab9b0860e6a2881dd7b21fe9f737a095e5f33a3a874afc6a345228597ee6
+source_filename = 1_82_0.tar.bz2
+
+patch_directory = boost
+
+[provide]
+boost = boost_dep
diff --git a/subprojects/packagefiles/boost-url/meson.build b/subprojects/packagefiles/boost-url/meson.build
new file mode 100644
index 0000000..7e64115
--- /dev/null
+++ b/subprojects/packagefiles/boost-url/meson.build
@@ -0,0 +1,9 @@
+project('boost-url',
+    'cpp',
+    version : '0.1',
+    license : 'Boost'
+)
+
+boost_url_dep = declare_dependency(
+    include_directories : include_directories('include'),
+)
diff --git a/subprojects/packagefiles/boost/meson.build b/subprojects/packagefiles/boost/meson.build
new file mode 100644
index 0000000..ba95618
--- /dev/null
+++ b/subprojects/packagefiles/boost/meson.build
@@ -0,0 +1,9 @@
+project('boost',
+    'cpp',
+    version : '1.82.0',
+    license : 'Boost'
+)
+
+boost_dep = declare_dependency(
+    include_directories : include_directories('.'),
+)
diff --git a/subprojects/sdbusplus.wrap b/subprojects/sdbusplus.wrap
new file mode 100644
index 0000000..7b076d0
--- /dev/null
+++ b/subprojects/sdbusplus.wrap
@@ -0,0 +1,6 @@
+[wrap-git]
+url = https://github.com/openbmc/sdbusplus.git
+revision = HEAD
+
+[provide]
+sdbusplus = sdbusplus_dep