[oe-commits] [meta-openembedded] 01/15: yp-tools: fix compile errors
git at git.openembedded.org
git at git.openembedded.org
Thu Aug 18 16:11:58 UTC 2016
martin_jansa pushed a commit to branch master-next
in repository meta-openembedded.
commit 5c57ce4a2ac34d3ea072c3bb98a7f3456f80bd30
Author: Joe Slater <jslater at windriver.com>
AuthorDate: Wed Aug 17 13:22:14 2016 -0700
yp-tools: fix compile errors
Fix two fatal warnings. The cast error only
occurs for some architectures.
Signed-off-by: Joe Slater <jslater at windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
---
.../nis/yp-tools/alignment-cheat.patch | 58 ++++++++++++++++++++++
.../recipes-support/nis/yp-tools_3.3.bb | 3 +-
2 files changed, 59 insertions(+), 2 deletions(-)
diff --git a/meta-networking/recipes-support/nis/yp-tools/alignment-cheat.patch b/meta-networking/recipes-support/nis/yp-tools/alignment-cheat.patch
new file mode 100644
index 0000000..856e42e
--- /dev/null
+++ b/meta-networking/recipes-support/nis/yp-tools/alignment-cheat.patch
@@ -0,0 +1,58 @@
+yp-tools: avoid fatal cast warning
+
+The way casting is done, we will get a fatal alignment warning on some
+architectures. This patch cheats our way around this.
+
+We also eliminate an unused constant which causes a fatal warning.
+
+Upstream-status: Pending
+
+Signed-off-by: Joe Slater <jslater at windriver.com>
+
+
+--- a/lib/do_ypcall.c
++++ b/lib/do_ypcall.c
+@@ -44,7 +44,9 @@ struct dom_binding
+ typedef struct dom_binding dom_binding;
+
+ static const struct timeval RPCTIMEOUT = {25, 0};
++#if 0
+ static const struct timeval UDPTIMEOUT = {5, 0};
++#endif
+ static int const MAXTRIES = 2;
+ static pthread_mutex_t ypbindlist_lock = PTHREAD_MUTEX_INITIALIZER;
+ static dom_binding *ypbindlist = NULL;
+@@ -381,7 +383,7 @@ __ypclnt_call (u_long prog, xdrproc_t xa
+
+ int
+ do_ypcall (const char *domain, u_long prog, xdrproc_t xargs,
+- caddr_t req, xdrproc_t xres, caddr_t resp)
++ caddr_t req, xdrproc_t xres, void *resp)
+ {
+ dom_binding *ydb;
+ int status;
+@@ -450,9 +452,9 @@ do_ypcall (const char *domain, u_long pr
+ /* Like do_ypcall, but translate the status value if necessary. */
+ int
+ do_ypcall_tr (const char *domain, u_long prog, xdrproc_t xargs,
+- caddr_t req, xdrproc_t xres, caddr_t resp)
++ caddr_t req, xdrproc_t xres, void *resp)
+ {
+- int status = do_ypcall (domain, prog, xargs, req, xres, resp);
++ int status = do_ypcall (domain, prog, xargs, req, xres, (void *) resp);
+ if (status == YPERR_SUCCESS)
+ /* We cast to ypresp_val although the pointer could also be of
+ type ypresp_key_val or ypresp_master or ypresp_order or
+--- a/lib/internal.h
++++ b/lib/internal.h
+@@ -17,8 +17,8 @@
+ #define _INTERNAL_H_
+
+ extern int do_ypcall (const char *domain, u_long prog, xdrproc_t xargs,
+- caddr_t req, xdrproc_t xres, caddr_t resp);
++ caddr_t req, xdrproc_t xres, void *resp);
+ extern int do_ypcall_tr (const char *domain, u_long prog, xdrproc_t xargs,
+- caddr_t req, xdrproc_t xres, caddr_t resp);
++ caddr_t req, xdrproc_t xres, void *resp);
+ extern int yp_maplist (const char *, struct ypmaplist **);
+ #endif
diff --git a/meta-networking/recipes-support/nis/yp-tools_3.3.bb b/meta-networking/recipes-support/nis/yp-tools_3.3.bb
index b89f0b8..69217fa 100644
--- a/meta-networking/recipes-support/nis/yp-tools_3.3.bb
+++ b/meta-networking/recipes-support/nis/yp-tools_3.3.bb
@@ -11,11 +11,10 @@ ypwhich, yppasswd, domainname, nisdomainname \
and ypdomainname. \
"
-PNBLACKLIST[yp-tools] ?= "BROKEN: fails to build for qemuarm."
-
SRC_URI = "http://www.linux-nis.org/download/yp-tools/${BP}.tar.bz2 \
file://domainname.service \
file://yp-tools-ipv4-ipv6-Provide-an-in-place-version-of-mapv4v6addr.patch \
+ file://alignment-cheat.patch \
"
SRC_URI[md5sum] = "acebeecc11a73fb8097503670344834c"
SRC_URI[sha256sum] = "812be817df3d4c25813552be336c6c6ad5aedaf65611b81af3ad9f98fb3c2e50"
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list