security-manager: Fix build error that causes gcc v7.0
authorChanghyeok Bae <changhyeok.bae@gmail.com>
Sun, 17 Dec 2017 15:44:16 +0000 (15:44 +0000)
committerJosé Bollo <jose.bollo@iot.bzh>
Tue, 13 Feb 2018 10:01:59 +0000 (11:01 +0100)
gcc v7 requires include <functional> for std::function.

Bug-AGL: SPEC-1181

Change-Id: Id5deb6f5ea5c2c82ae4a26889f209e1d7619000e
Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
meta-app-framework/recipes-core/security-manager/security-manager/0001-gcc-7-requires-include-functional-for-std-function.patch [new file with mode: 0644]
meta-app-framework/recipes-core/security-manager/security-manager_%.bbappend

diff --git a/meta-app-framework/recipes-core/security-manager/security-manager/0001-gcc-7-requires-include-functional-for-std-function.patch b/meta-app-framework/recipes-core/security-manager/security-manager/0001-gcc-7-requires-include-functional-for-std-function.patch
new file mode 100644 (file)
index 0000000..7b6845a
--- /dev/null
@@ -0,0 +1,51 @@
+From ed1c105db9d7b1ceb52ec16f35b0a2c959c19c6d Mon Sep 17 00:00:00 2001
+From: Changhyeok Bae <changhyeok.bae@gmail.com>
+Date: Sun, 17 Dec 2017 15:40:58 +0000
+Subject: [PATCH] gcc-7 requires include <functional> for std::function
+
+Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
+---
+ src/client/client-common.cpp      | 1 +
+ src/common/smack-labels.cpp       | 1 +
+ src/dpl/core/src/binary_queue.cpp | 1 +
+ 3 files changed, 3 insertions(+)
+
+diff --git a/src/client/client-common.cpp b/src/client/client-common.cpp
+index 883ab8d..1babdf7 100644
+--- a/src/client/client-common.cpp
++++ b/src/client/client-common.cpp
+@@ -31,6 +31,7 @@
+ #include <sys/xattr.h>
+ #include <linux/xattr.h>
+ #include <unistd.h>
++#include <functional>
+ #include <dpl/log/log.h>
+ #include <dpl/serialization.h>
+diff --git a/src/common/smack-labels.cpp b/src/common/smack-labels.cpp
+index 0294a42..1598099 100644
+--- a/src/common/smack-labels.cpp
++++ b/src/common/smack-labels.cpp
+@@ -29,6 +29,7 @@
+ #include <sys/xattr.h>
+ #include <linux/xattr.h>
+ #include <memory>
++#include <functional>
+ #include <fts.h>
+ #include <cstring>
+ #include <string>
+diff --git a/src/dpl/core/src/binary_queue.cpp b/src/dpl/core/src/binary_queue.cpp
+index 72817a6..838409f 100644
+--- a/src/dpl/core/src/binary_queue.cpp
++++ b/src/dpl/core/src/binary_queue.cpp
+@@ -26,6 +26,7 @@
+ #include <malloc.h>
+ #include <cstring>
+ #include <new>
++#include <functional>
+ namespace SecurityManager {
+ BinaryQueue::BinaryQueue() :
+-- 
+2.7.4
+
index bd1a43e..92b7957 100644 (file)
@@ -7,6 +7,7 @@ SRC_URI += " file://0001-Adapt-rules-to-AGL.patch \
             file://init-security-manager-db.sh \
              file://0001-Fix-gcc6-build.patch \
              file://0001-Fix-Cmake-conf-for-gcc6-build.patch \
+             file://0001-gcc-7-requires-include-functional-for-std-function.patch \
 "
 
 FILES_${PN}_append = "${bindir}/init-security-manager-db.sh \