xinetd: Fix build with musl

musl relies on external rpc implemetation (libtirpc)
and exposed a bug in configury when checking for rlim_t

(From OE-Core rev: bcf7548aacb82d2e14115ced8fa58d35963abe60)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj 2015-12-30 08:06:53 +00:00 committed by Richard Purdie
parent 93fb408e78
commit aaa85169b6
2 changed files with 105 additions and 0 deletions

View File

@ -0,0 +1,100 @@
From e8b0ffc7ea04cc71dba97a38e1a134aaf2285c2d Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 30 Dec 2015 07:14:50 +0000
Subject: [PATCH] configure: Use HAVE_SYS_RESOURCE_H to guard sys/resource.h
inclusion
HAVE_RLIM_T check will not let sys/resource.h to be checked and
rlim_t is defined in sys/resource.h so the check would fail.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Pending
aclocal.m4 | 2 +-
configure | 14 +++++++-------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/aclocal.m4 b/aclocal.m4
index 6e6f32c..70e7076 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -11,7 +11,7 @@ AC_CACHE_VAL(xinetd_cv_type_$1,
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
diff --git a/configure b/configure
index b507d38..bec56ea 100755
--- a/configure
+++ b/configure
@@ -7640,7 +7640,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
@@ -7686,7 +7686,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
@@ -7732,7 +7732,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
@@ -7778,7 +7778,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
@@ -7824,7 +7824,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
@@ -7870,7 +7870,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
@@ -7916,7 +7916,7 @@ cat >>conftest.$ac_ext <<_ACEOF
#if HAVE_NETDB_H
#include <netdb.h>
#endif
-#if HAVE_RLIM_T
+#if HAVE_SYS_RESOURCE_H
#include <sys/resource.h>
#endif
#if HAVE_STDINT_H
--
2.6.4

View File

@ -7,6 +7,7 @@ LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=8ad8615198542444f84d28a6cf226dd8"
DEPENDS = ""
DEPENDS_append_libc-musl = " libtirpc "
PR = "r2"
# Blacklist a bogus tag in upstream check
@ -20,6 +21,7 @@ SRC_URI = "git://github.com/xinetd-org/xinetd.git;protocol=https \
file://Disable-services-from-inetd.conf-if-a-service-with-t.patch \
file://xinetd-should-be-able-to-listen-on-IPv6-even-in-ine.patch \
file://xinetd-CVE-2013-4342.patch \
file://0001-configure-Use-HAVE_SYS_RESOURCE_H-to-guard-sys-resou.patch \
file://xinetd.service \
"
@ -39,6 +41,9 @@ EXTRA_OECONF="--disable-nls"
PACKAGECONFIG ??= "tcp-wrappers"
PACKAGECONFIG[tcp-wrappers] = "--with-libwrap,,tcp-wrappers"
CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc "
LDFLAGS_append_libc-musl = " -ltirpc "
do_configure() {
# Looks like configure.in is broken, so we are skipping
# rebuilding configure and are just using the shipped one