aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2016-11-15 05:01:51 +0000
committerArmin Kuster <akuster808@gmail.com>2017-01-29 19:30:42 -0500
commit401326cbdd2e58df2b23e821141885bc3b66c518 (patch)
tree05d97cbeb266edaa447a6d2c4fffc6e9ac94f5c4
parent362fdb3f438d122b029dfe4cb8a206affa9bd7c3 (diff)
downloadmeta-openembedded-contrib-401326cbdd2e58df2b23e821141885bc3b66c518.tar.gz
crda: Fix build with clang
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-networking/recipes-connectivity/crda/crda/make.patch25
-rw-r--r--meta-networking/recipes-connectivity/crda/crda_3.18.bb1
2 files changed, 26 insertions, 0 deletions
diff --git a/meta-networking/recipes-connectivity/crda/crda/make.patch b/meta-networking/recipes-connectivity/crda/crda/make.patch
new file mode 100644
index 0000000000..0b737852c2
--- /dev/null
+++ b/meta-networking/recipes-connectivity/crda/crda/make.patch
@@ -0,0 +1,25 @@
+These headers are not related to any Make rule but they do appear in
+compiling of libreg.so, specifying .h files in compiler cmdline is flagged
+as error by clang
+
+| clang-4.0: error: cannot specify -o when generating multiple output files
+| make: *** [libreg.so] Error 1
+
+This is how we see headers in cmdline
+-O2 -fpic -std=gnu
+99 -Wall -Werror -pedantic -Wall -g -DUSE_GCRYPT -DCONFIG_LIBNL30 `pkg-config --cflags libnl-3.0` -o libreg.so -shared -Wl,-soname,libreg.so
+regdb.h reglib.h reglib.c keys-gcrypt.c -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -L ./ -lm -lgcrypt
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/Makefile.kk 2016-11-15 04:54:53.338670000 +0000
++++ a/Makefile 2016-11-15 04:55:07.718670000 +0000
+@@ -114,7 +114,7 @@ keys-%.c: utils/key2pub.py $(wildcard $(
+ $(NQ) ' Trusted pubkeys:' $(wildcard $(PUBKEY_DIR)/*.pem)
+ $(Q)./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
+
+-$(LIBREG): regdb.h reglib.h reglib.c
++$(LIBREG): reglib.c
+ $(NQ) ' CC ' $@
+ $(Q)$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -shared -Wl,-soname,$(LIBREG) $^ $(LDFLAGS) $(LIBREGLDLIBS)
+
diff --git a/meta-networking/recipes-connectivity/crda/crda_3.18.bb b/meta-networking/recipes-connectivity/crda/crda_3.18.bb
index 00c358dab0..4b704fe5bf 100644
--- a/meta-networking/recipes-connectivity/crda/crda_3.18.bb
+++ b/meta-networking/recipes-connectivity/crda/crda_3.18.bb
@@ -11,6 +11,7 @@ SRC_URI = "https://www.kernel.org/pub/software/network/${BPN}/${BP}.tar.xz \
file://fix-linking-of-libraries-used-by-reglib.patch \
file://fix-gcc-6-unused-variables.patch \
file://0001-Makefile-respect-LDFLAGS-for-libreg.patch \
+ file://make.patch \
"
SRC_URI[md5sum] = "0431fef3067bf503dfb464069f06163a"
SRC_URI[sha256sum] = "43fcb9679f8b75ed87ad10944a506292def13e4afb194afa7aa921b01e8ecdbf"