bmcweb: depends on shared-memory

Added the shared-memory recipe which builds the tlbmc shared memory
library.

Made bmcweb depends on shared-memory library that shared-memory recipe
provides.

Note, shared memory is compiled but not enabled if tlbmc is not enabled.

Intel platform:
https://fusion2.corp.google.com/38fc4cec-436a-3f21-894f-2ad6b05ffd94
Intel platform:
https://fusion2.corp.google.com/fd99fbd2-9e9e-371b-96c0-b24ee3138534
AMD platform:
https://fusion2.corp.google.com/99380550-8135-3523-b2f4-bc61fc2f50d0
ARM platform:
https://fusion2.corp.google.com/293793f9-c49e-31a3-a51b-9a855652dbc2

Fusion-Link: see above; only IF expand failed which is not related to this CL
Google-Bug-Id: 388297038
Tested: bmcweb builds and run normally.
Change-Id: Iab764d230e049452bb280f54e705012c357ba18e
Signed-off-by: Nan Zhou <nanzhou@google.com>
diff --git a/recipes-google/g3-shared-libs/shared-memory_git.bb b/recipes-google/g3-shared-libs/shared-memory_git.bb
new file mode 100644
index 0000000..be49995
--- /dev/null
+++ b/recipes-google/g3-shared-libs/shared-memory_git.bb
@@ -0,0 +1,12 @@
+SUMMARY = "Shared memory library"
+DESCRIPTION = "Shared memory IPC library for tlBMC."
+
+require g3-shared-libs.inc
+G3_PROJ="shared_memory"
+DEPENDS:append = " boost abseil-cpp"
+
+FILES:${PN} = " \
+  ${libdir}/libshared_memory${SOLIBS} \
+  ${includedir}/shared_memory/* \
+"
+
diff --git a/recipes-phosphor/interfaces/bmcweb_%.bbappend b/recipes-phosphor/interfaces/bmcweb_%.bbappend
index 54557f1..6b38a5f 100644
--- a/recipes-phosphor/interfaces/bmcweb_%.bbappend
+++ b/recipes-phosphor/interfaces/bmcweb_%.bbappend
@@ -94,6 +94,7 @@
   jwt-cpp \
   systemd \
   one \
+  shared-memory \
 "
 
 DEPENDS:append = '${@bb.utils.contains_any("DISTRO_FEATURES", "federation-policy", " certificate-authority-policy", "", d)}'