summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2017-04-18 01:27:59 -0700
committerRobert Yang <liezhi.yang@windriver.com>2017-04-18 01:32:23 -0700
commitd1812ddb571443f56260e0a81567cc1165941fe0 (patch)
tree6f95f31c95d580a45d29ae099cc7961b1f14e86c
parentba2884f6ad3a4e746fc80cbd707f83fa8abd4210 (diff)
downloadopenembedded-core-contrib-rbt/acl.tar.gz
openembedded-core-contrib-rbt/acl.tar.bz2
openembedded-core-contrib-rbt/acl.zip
acl: fix race issue when do_compilerbt/acl
Fixed race issue: In file included from acl_copy_entry.c:22:0: libacl.h:19:21: fatal error: sys/acl.h: No such file or directory #include <sys/acl.h> [snip] compilation terminated. acl_get_file.c:27:24: fatal error: acl/libacl.h: No such file or directory #include <acl/libacl.h> ^ The acl.h is in "include" directory, and include/Makefile creates symlink "sys" and "acl" poinst to current dirctory: $ ls include/ -l acl -> . sys -> . So if "libacl" target runs before "include", the error would happen since no "acl" or "sys" directory. Let libacl depend on include can fix the problem. [YOCTO #11349] Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-rw-r--r--meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch51
-rw-r--r--meta/recipes-support/attr/acl_2.2.52.bb4
2 files changed, 54 insertions, 1 deletions
diff --git a/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch b/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
new file mode 100644
index 0000000000..4c7cba3b88
--- /dev/null
+++ b/meta/recipes-support/attr/acl/Makefile-libacl-should-depend-on-include.patch
@@ -0,0 +1,51 @@
+From d82457ce5ca7455e336da5e244d95f90e52aaef8 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Tue, 18 Apr 2017 01:17:26 -0700
+Subject: [PATCH] Makefile: libacl should depend on include
+
+Fixed race issue:
+ In file included from acl_copy_entry.c:22:0:
+ libacl.h:19:21: fatal error: sys/acl.h: No such file or directory
+ #include <sys/acl.h>
+
+[snip]
+
+ compilation terminated.
+ acl_get_file.c:27:24: fatal error: acl/libacl.h: No such file or directory
+ #include <acl/libacl.h>
+ ^
+
+The acl.h is in "include" directory, and include/Makefile creates
+symlink "sys" and "acl" poinst to current dirctory:
+$ ls include/ -l
+acl -> .
+sys -> .
+
+So if "libacl" target runs before "include", the error would happen
+since no "acl" or "sys" directory.
+
+Let libacl depend on include can fix the problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index dce32d3..8a79379 100644
+--- a/Makefile
++++ b/Makefile
+@@ -48,7 +48,7 @@ else
+ endif
+
+ # tool/lib dependencies
+-libacl: libmisc
++libacl: include libmisc
+ getfacl setfacl chacl: libacl
+
+ ifeq ($(HAVE_BUILDDEFS), yes)
+--
+2.10.2
+
diff --git a/meta/recipes-support/attr/acl_2.2.52.bb b/meta/recipes-support/attr/acl_2.2.52.bb
index 9ab5853d53..306c7b5cda 100644
--- a/meta/recipes-support/attr/acl_2.2.52.bb
+++ b/meta/recipes-support/attr/acl_2.2.52.bb
@@ -16,7 +16,9 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.src.tar.gz \
file://acl-fix-the-order-of-expected-output-of-getfacl.patch \
file://test-fix-insufficient-quoting-of.patch \
file://test-fixups-on-SELinux-machines-for-root-testcases.patch \
- file://test-fix-directory-permissions.patch"
+ file://test-fix-directory-permissions.patch \
+ file://Makefile-libacl-should-depend-on-include.patch \
+"
SRC_URI[md5sum] = "a61415312426e9c2212bd7dc7929abda"
SRC_URI[sha256sum] = "179074bb0580c06c4b4137be4c5a92a701583277967acdb5546043c7874e0d23"