<div dir="ltr">This breaks systemd:<div><br></div><div><div>| In file included from ../git/src/basic/cap-list.c:31:0:</div><div>| ./src/basic/cap-from-name.h:141:1: error: conflicting types for &#39;lookup_capability&#39;</div><div>|  lookup_capability (register const char *str, register size_t len)</div><div>|  ^~~~~~~~~~~~~~~~~</div><div>| ../git/src/basic/cap-list.c:29:38: note: previous declaration of &#39;lookup_capability&#39; was here</div><div>|  static const struct capability_name* lookup_capability(register const char *str, register unsigned int len);</div><div>|                                       ^~~~~~~~~~~~~~~~~</div></div><div><br></div><div>Ross</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 27 July 2017 at 15:40, Alexander Kanavin <span dir="ltr">&lt;<a href="mailto:alexander.kanavin@linux.intel.com" target="_blank">alexander.kanavin@linux.intel.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Signed-off-by: Alexander Kanavin &lt;<a href="mailto:alexander.kanavin@linux.intel.com">alexander.kanavin@linux.<wbr>intel.com</a>&gt;<br>
---<br>
 .../files/0001-Fix-build-with-<wbr>gperf-3.1.patch      | 41 ++++++++++++++++++++++<br>
 meta/recipes-support/libcap/<a href="http://libcap_2.25.bb" rel="noreferrer" target="_blank">li<wbr>bcap_2.25.bb</a>         |  3 +-<br>
 2 files changed, 43 insertions(+), 1 deletion(-)<br>
 create mode 100644 meta/recipes-support/libcap/<wbr>files/0001-Fix-build-with-<wbr>gperf-3.1.patch<br>
<br>
diff --git a/meta/recipes-support/libcap/<wbr>files/0001-Fix-build-with-<wbr>gperf-3.1.patch b/meta/recipes-support/libcap/<wbr>files/0001-Fix-build-with-<wbr>gperf-3.1.patch<br>
new file mode 100644<br>
index 00000000000..110ef902da2<br>
--- /dev/null<br>
+++ b/meta/recipes-support/libcap/<wbr>files/0001-Fix-build-with-<wbr>gperf-3.1.patch<br>
@@ -0,0 +1,41 @@<br>
+From a05eba68c42222f02465d7ba376015<wbr>926433c531 Mon Sep 17 00:00:00 2001<br>
+From: Alexander Kanavin &lt;<a href="mailto:alex.kanavin@gmail.com">alex.kanavin@gmail.com</a>&gt;<br>
+Date: Wed, 26 Jul 2017 13:37:49 +0300<br>
+Subject: [PATCH] Fix build with gperf 3.1<br>
+<br>
+The generated gperf file refers to size_t which needs to be<br>
+provided by stddef.h include. Also, adjust the makefile<br>
+to match the declaration in the gperf file.<br>
+<br>
+Upstream-Status: Pending<br>
+Signed-off-by: Alexander Kanavin &lt;<a href="mailto:alex.kanavin@gmail.com">alex.kanavin@gmail.com</a>&gt;<br>
+<br>
+---<br>
+ libcap/Makefile | 4 ++--<br>
+ 1 file changed, 2 insertions(+), 2 deletions(-)<br>
+<br>
+diff --git a/libcap/Makefile b/libcap/Makefile<br>
+index d189777..1a57206 100644<br>
+--- a/libcap/Makefile<br>
++++ b/libcap/Makefile<br>
+@@ -22,7 +22,7 @@ all: $(MINLIBNAME) $(STALIBNAME) libcap.pc<br>
+<br>
+ ifeq ($(BUILD_GPERF),yes)<br>
+ USE_GPERF_OUTPUT = $(GPERF_OUTPUT)<br>
+-INCLUDE_GPERF_OUTPUT = -include $(GPERF_OUTPUT)<br>
++INCLUDE_GPERF_OUTPUT = -include stddef.h -include $(GPERF_OUTPUT)<br>
+ endif<br>
+<br>
+ libcap.pc: <a href="http://libcap.pc.in" rel="noreferrer" target="_blank">libcap.pc.in</a><br>
+@@ -41,7 +41,7 @@ cap_names.h: _makenames<br>
+       ./_makenames &gt; cap_names.h<br>
+<br>
+ $(GPERF_OUTPUT): cap_names.list.h<br>
+-      perl -e &#39;print &quot;struct __cap_token_s { const char *name; int index; };\n%{\nconst struct __cap_token_s *__cap_lookup_name(const char *, unsigned int);\n%}\n%%\n&quot;; while ($$l = &lt;&gt;) { $$l =~ s/[\{\&quot;]//g; $$l =~ s/\}.*// ; print $$l; }&#39; &lt; $&lt; | gperf --ignore-case --language=ANSI-C --readonly --null-strings --global-table --hash-function-name=__cap_<wbr>hash_name --lookup-function-name=&quot;__cap_<wbr>lookup_name&quot; -c -t -m20 $(INDENT) &gt; $@<br>
++      perl -e &#39;print &quot;struct __cap_token_s { const char *name; int index; };\n%{\nconst struct __cap_token_s *__cap_lookup_name(const char *, register size_t);\n%}\n%%\n&quot;; while ($$l = &lt;&gt;) { $$l =~ s/[\{\&quot;]//g; $$l =~ s/\}.*// ; print $$l; }&#39; &lt; $&lt; | gperf --ignore-case --language=ANSI-C --readonly --null-strings --global-table --hash-function-name=__cap_<wbr>hash_name --lookup-function-name=&quot;__cap_<wbr>lookup_name&quot; -c -t -m20 $(INDENT) &gt; $@<br>
+<br>
+ cap_names.list.h: Makefile $(KERNEL_HEADERS)/linux/<wbr>capability.h<br>
+       @echo &quot;=&gt; making $@ from $(KERNEL_HEADERS)/linux/<wbr>capability.h&quot;<br>
+--<br>
+2.13.2<br>
+<br>
diff --git a/meta/recipes-support/libcap/<a href="http://libcap_2.25.bb" rel="noreferrer" target="_blank"><wbr>libcap_2.25.bb</a> b/meta/recipes-support/libcap/<a href="http://libcap_2.25.bb" rel="noreferrer" target="_blank"><wbr>libcap_2.25.bb</a><br>
index 5c2765f343a..d619a2eb4cc 100644<br>
--- a/meta/recipes-support/libcap/<a href="http://libcap_2.25.bb" rel="noreferrer" target="_blank"><wbr>libcap_2.25.bb</a><br>
+++ b/meta/recipes-support/libcap/<a href="http://libcap_2.25.bb" rel="noreferrer" target="_blank"><wbr>libcap_2.25.bb</a><br>
@@ -9,7 +9,8 @@ DEPENDS = &quot;hostperl-runtime-native gperf-native&quot;<br>
<br>
 SRC_URI = &quot;${KERNELORG_MIRROR}/linux/<wbr>libs/security/linux-privs/${<wbr>BPN}2/${BPN}-${PV}.tar.xz \<br>
            file://0001-ensure-the-XATTR_<wbr>NAME_CAPS-is-defined-when-it-<wbr>is-use.patch \<br>
-&quot;<br>
+           file://0001-Fix-build-with-<wbr>gperf-3.1.patch \<br>
+           &quot;<br>
 SRC_URI[md5sum] = &quot;<wbr>6666b839e5d46c2ad33fc8aa2ceb5f<wbr>77&quot;<br>
 SRC_URI[sha256sum] = &quot;<wbr>693c8ac51e983ee678205571ef2724<wbr>39d83afe62dd8e424ea14ad9790bc3<wbr>5162&quot;<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
2.13.2<br>
<br>
--<br>
______________________________<wbr>_________________<br>
Openembedded-core mailing list<br>
<a href="mailto:Openembedded-core@lists.openembedded.org">Openembedded-core@lists.<wbr>openembedded.org</a><br>
<a href="http://lists.openembedded.org/mailman/listinfo/openembedded-core" rel="noreferrer" target="_blank">http://lists.openembedded.org/<wbr>mailman/listinfo/openembedded-<wbr>core</a><br>
</font></span></blockquote></div><br></div>