summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2018-03-11 21:40:51 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-03-15 15:47:59 -0700
commit8fed6fc343f60ea199561161b13776ee84dd854e (patch)
tree9c2beb7ef7b0afcc32582ee2094d6fe6be443670
parent1379647a05332b28b7823a65a34ab8aed37785a4 (diff)
downloadpoky-8fed6fc343f60ea199561161b13776ee84dd854e.tar.gz
unfs3: Fix build with musl
Should also fix build on new build hosts where with glibc 2.27 rpc support is dropped in favor of libtirpc (From OE-Core rev: 62552a76b65b7ab5fa71b188537ae0582c3cbaea) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/conf/distro/include/world-broken.inc5
-rw-r--r--meta/recipes-devtools/unfs3/unfs3/0001-daemon.c-Libtirpc-porting-fixes.patch37
-rw-r--r--meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb10
3 files changed, 44 insertions, 8 deletions
diff --git a/meta/conf/distro/include/world-broken.inc b/meta/conf/distro/include/world-broken.inc
index d4bdddfcfe..0166963329 100644
--- a/meta/conf/distro/include/world-broken.inc
+++ b/meta/conf/distro/include/world-broken.inc
@@ -5,11 +5,6 @@
5# rt-tests needs PI mutex support in libc 5# rt-tests needs PI mutex support in libc
6EXCLUDE_FROM_WORLD_pn-rt-tests_libc-musl = "1" 6EXCLUDE_FROM_WORLD_pn-rt-tests_libc-musl = "1"
7 7
8# error: no member named 'sin_port' in 'struct sockaddr_in6'
9# this is due to libtirpc using ipv6 but portmap rpc expecting ipv4
10EXCLUDE_FROM_WORLD_pn-portmap_libc-musl = "1"
11EXCLUDE_FROM_WORLD_pn-unfs3_libc-musl = "1"
12
13# error: use of undeclared identifier '_STAT_VER' 8# error: use of undeclared identifier '_STAT_VER'
14EXCLUDE_FROM_WORLD_pn-pseudo_libc-musl = "1" 9EXCLUDE_FROM_WORLD_pn-pseudo_libc-musl = "1"
15 10
diff --git a/meta/recipes-devtools/unfs3/unfs3/0001-daemon.c-Libtirpc-porting-fixes.patch b/meta/recipes-devtools/unfs3/unfs3/0001-daemon.c-Libtirpc-porting-fixes.patch
new file mode 100644
index 0000000000..6eee6748f9
--- /dev/null
+++ b/meta/recipes-devtools/unfs3/unfs3/0001-daemon.c-Libtirpc-porting-fixes.patch
@@ -0,0 +1,37 @@
1From c7a2a65d6c2a433312540c207860740d6e4e7629 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 11 Mar 2018 17:32:54 -0700
4Subject: [PATCH] daemon.c: Libtirpc porting fixes
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8Upstream-Status: Pending
9
10 daemon.c | 4 ++--
11 1 file changed, 2 insertions(+), 2 deletions(-)
12
13diff --git a/daemon.c b/daemon.c
14index 22f30f6..028a181 100644
15--- a/daemon.c
16+++ b/daemon.c
17@@ -117,7 +117,7 @@ void logmsg(int prio, const char *fmt, ...)
18 */
19 struct in_addr get_remote(struct svc_req *rqstp)
20 {
21- return (svc_getcaller(rqstp->rq_xprt))->sin_addr;
22+ return ((struct sockaddr_in*)svc_getcaller(rqstp->rq_xprt))->sin_addr;
23 }
24
25 /*
26@@ -125,7 +125,7 @@ struct in_addr get_remote(struct svc_req *rqstp)
27 */
28 short get_port(struct svc_req *rqstp)
29 {
30- return (svc_getcaller(rqstp->rq_xprt))->sin_port;
31+ return ((struct sockaddr_in*)svc_getcaller(rqstp->rq_xprt))->sin_port;
32 }
33
34 /*
35--
362.16.2
37
diff --git a/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb b/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb
index e7574fb72a..fd9a5cddb2 100644
--- a/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb
+++ b/meta/recipes-devtools/unfs3/unfs3_0.9.22.r497.bb
@@ -9,9 +9,11 @@ RECIPE_UPSTREAM_DATE = "Oct 08, 2015"
9CHECK_DATE = "Dec 10, 2015" 9CHECK_DATE = "Dec 10, 2015"
10 10
11DEPENDS = "flex-native bison-native flex" 11DEPENDS = "flex-native bison-native flex"
12DEPENDS_append_libc-musl = " libtirpc" 12DEPENDS += "libtirpc"
13DEPENDS_append_class-nativesdk = " flex-nativesdk" 13DEPENDS_append_class-nativesdk = " flex-nativesdk"
14 14
15ASNEEDED = ""
16
15MOD_PV = "497" 17MOD_PV = "497"
16S = "${WORKDIR}/trunk" 18S = "${WORKDIR}/trunk"
17SRC_URI = "svn://svn.code.sf.net/p/unfs3/code;module=trunk;rev=${MOD_PV};protocol=http \ 19SRC_URI = "svn://svn.code.sf.net/p/unfs3/code;module=trunk;rev=${MOD_PV};protocol=http \
@@ -22,7 +24,8 @@ SRC_URI = "svn://svn.code.sf.net/p/unfs3/code;module=trunk;rev=${MOD_PV};protoco
22 file://rename_fh_cache.patch \ 24 file://rename_fh_cache.patch \
23 file://relative_max_socket_path_len.patch \ 25 file://relative_max_socket_path_len.patch \
24 file://tcp_no_delay.patch \ 26 file://tcp_no_delay.patch \
25 " 27 file://0001-daemon.c-Libtirpc-porting-fixes.patch \
28 "
26SRC_URI[md5sum] = "3687acc4ee992e536472365dd99712a7" 29SRC_URI[md5sum] = "3687acc4ee992e536472365dd99712a7"
27SRC_URI[sha256sum] = "274b43ada9c6eea1da26eb7010d72889c5278984ba0b50dff4e093057d4d64f8" 30SRC_URI[sha256sum] = "274b43ada9c6eea1da26eb7010d72889c5278984ba0b50dff4e093057d4d64f8"
28 31
@@ -30,7 +33,8 @@ BBCLASSEXTEND = "native nativesdk"
30 33
31inherit autotools 34inherit autotools
32EXTRA_OECONF_append_class-native = " --sbindir=${bindir}" 35EXTRA_OECONF_append_class-native = " --sbindir=${bindir}"
33CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc" 36CFLAGS += " -I${STAGING_INCDIR}/tirpc"
37LDFLAGS += " -ltirpc"
34 38
35# Turn off these header detects else the inode search 39# Turn off these header detects else the inode search
36# will walk entire file systems and this is a real problem 40# will walk entire file systems and this is a real problem