libselinux: add patch to fix Blackfin build issue
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 8 Feb 2015 21:02:03 +0000 (22:02 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Sun, 8 Feb 2015 21:19:45 +0000 (22:19 +0100)
Fixes:

  http://autobuild.buildroot.org/results/165/165a227a0a8ecd4cb3f96761aacdf90ae974fea7/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/libselinux/0001-workaround-blackfin-issue.patch [new file with mode: 0644]

diff --git a/package/libselinux/0001-workaround-blackfin-issue.patch b/package/libselinux/0001-workaround-blackfin-issue.patch
new file mode 100644 (file)
index 0000000..5d00c69
--- /dev/null
@@ -0,0 +1,24 @@
+Do not make symbols hidden on Blackfin
+
+The libselinux logic to hide internal symbols from the DSO doesn't
+work properly on Blackfin due to the USER_LABEL_PREFIX not being
+handled properly. A real fix is not that simple, so this patch simply
+disables the internal symbol hiding mechanism. This means that those
+symbols are visible in the final DSO, which is not a problem for
+proper execution, it just isn't as clean.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/dso.h
+===================================================================
+--- a/src/dso.h
++++ b/src/dso.h
+@@ -1,7 +1,7 @@
+ #ifndef _SELINUX_DSO_H
+ #define _SELINUX_DSO_H        1
+-#ifdef SHARED
++#if defined(SHARED) && !defined(__bfin__)
+ # define hidden __attribute__ ((visibility ("hidden")))
+ # define hidden_proto(fct) __hidden_proto (fct, fct##_internal)
+ # define __hidden_proto(fct, internal)        \