COMPMID-2646: Wrap thread-related structure to ease bare-metal support

Wraps "lock_guard" and "unique_lock" to ease bare-metal support.
Adds basic armclang compilation flow.

Change-Id: I44ccd042652acd6a9b442c57c879db3891abb0e2
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com>
Reviewed-on: https://review.mlplatform.org/c/1923
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Pablo Marquez <pablo.tello@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
diff --git a/src/core/NEON/kernels/NEHistogramKernel.cpp b/src/core/NEON/kernels/NEHistogramKernel.cpp
index b088a23..211ea1f 100644
--- a/src/core/NEON/kernels/NEHistogramKernel.cpp
+++ b/src/core/NEON/kernels/NEHistogramKernel.cpp
@@ -41,7 +41,7 @@
 
 inline void NEHistogramKernel::merge_histogram(uint32_t *global_hist, const uint32_t *local_hist, size_t bins)
 {
-    std::lock_guard<arm_compute::Mutex> lock(_hist_mtx);
+    arm_compute::lock_guard<arm_compute::Mutex> lock(_hist_mtx);
 
     const unsigned int v_end = (bins / 4) * 4;