mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 05:09:24 +00:00
libnsl2: Add recipe
NIS functionality has been split out into independent library from glibc (From OE-Core rev: b73de31cbf58efb303006125f8cd22f130e21d8c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
From 508a0ff690dfebc17c4f55a5f81824ed549bed66 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 18 Apr 2017 09:13:33 -0700
|
||||
Subject: [PATCH 1/2] include sys/cdefs.h explicitly
|
||||
|
||||
glibc includes this header indirectly but not musl
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
Upstream_status: Pending
|
||||
|
||||
src/rpcsvc/nis.h | 1 +
|
||||
src/rpcsvc/nislib.h | 1 +
|
||||
src/rpcsvc/ypclnt.h | 1 +
|
||||
src/rpcsvc/ypupd.h | 1 +
|
||||
4 files changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/rpcsvc/nis.h b/src/rpcsvc/nis.h
|
||||
index 933c4d9..88cbca0 100644
|
||||
--- a/src/rpcsvc/nis.h
|
||||
+++ b/src/rpcsvc/nis.h
|
||||
@@ -32,6 +32,7 @@
|
||||
#ifndef _RPCSVC_NIS_H
|
||||
#define _RPCSVC_NIS_H 1
|
||||
|
||||
+#include <sys/cdefs.h>
|
||||
#include <features.h>
|
||||
#include <rpc/rpc.h>
|
||||
#include <rpcsvc/nis_tags.h>
|
||||
diff --git a/src/rpcsvc/nislib.h b/src/rpcsvc/nislib.h
|
||||
index a59c19b..a53fab3 100644
|
||||
--- a/src/rpcsvc/nislib.h
|
||||
+++ b/src/rpcsvc/nislib.h
|
||||
@@ -19,6 +19,7 @@
|
||||
#ifndef __RPCSVC_NISLIB_H__
|
||||
#define __RPCSVC_NISLIB_H__
|
||||
|
||||
+#include <sys/cdefs.h>
|
||||
#include <features.h>
|
||||
|
||||
__BEGIN_DECLS
|
||||
diff --git a/src/rpcsvc/ypclnt.h b/src/rpcsvc/ypclnt.h
|
||||
index fe43fd4..a686b61 100644
|
||||
--- a/src/rpcsvc/ypclnt.h
|
||||
+++ b/src/rpcsvc/ypclnt.h
|
||||
@@ -20,6 +20,7 @@
|
||||
#ifndef __RPCSVC_YPCLNT_H__
|
||||
#define __RPCSVC_YPCLNT_H__
|
||||
|
||||
+#include <sys/cdefs.h>
|
||||
#include <features.h>
|
||||
|
||||
/* Some defines */
|
||||
diff --git a/src/rpcsvc/ypupd.h b/src/rpcsvc/ypupd.h
|
||||
index d07fd4d..2c57301 100644
|
||||
--- a/src/rpcsvc/ypupd.h
|
||||
+++ b/src/rpcsvc/ypupd.h
|
||||
@@ -33,6 +33,7 @@
|
||||
#ifndef __RPCSVC_YPUPD_H__
|
||||
#define __RPCSVC_YPUPD_H__
|
||||
|
||||
+#include <sys/cdefs.h>
|
||||
#include <features.h>
|
||||
|
||||
#include <rpc/rpc.h>
|
||||
--
|
||||
2.12.2
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
From 60282514ea01af004d7f9e66dd3929223b7d2e7b Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 18 Apr 2017 09:16:12 -0700
|
||||
Subject: [PATCH 2/2] Define glibc specific macros
|
||||
|
||||
Check and define
|
||||
rawmemchr, __asprintf, __mempcpy, __strtok_r
|
||||
__always_inline, TEMP_FAILURE_RETRY
|
||||
|
||||
if not existing. Helps compiling with musl
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
Upstream_status: Pending
|
||||
|
||||
diff --git a/src/rpcsvc/nis.h b/src/rpcsvc/nis.h
|
||||
index 88cbca0..23fc20c 100644
|
||||
--- a/src/rpcsvc/nis.h
|
||||
+++ b/src/rpcsvc/nis.h
|
||||
@@ -57,6 +57,34 @@ __BEGIN_DECLS
|
||||
* <kukuk@suse.de>
|
||||
*/
|
||||
|
||||
+#ifndef rawmemchr
|
||||
+#define rawmemchr(s,c) memchr((s),(size_t)-1,(c))
|
||||
+#endif
|
||||
+
|
||||
+#ifndef __asprintf
|
||||
+#define __asprintf asprintf
|
||||
+#endif
|
||||
+
|
||||
+#ifndef __mempcpy
|
||||
+#define __mempcpy mempcpy
|
||||
+#endif
|
||||
+
|
||||
+#ifndef __strtok_r
|
||||
+#define __strtok_r strtok_r
|
||||
+#endif
|
||||
+
|
||||
+#ifndef __always_inline
|
||||
+#define __always_inline __attribute__((__always_inline__))
|
||||
+#endif
|
||||
+
|
||||
+#ifndef TEMP_FAILURE_RETRY
|
||||
+#define TEMP_FAILURE_RETRY(exp) ({ \
|
||||
+typeof (exp) _rc; \
|
||||
+ do { \
|
||||
+ _rc = (exp); \
|
||||
+ } while (_rc == -1 && errno == EINTR); \
|
||||
+ _rc; })
|
||||
+#endif
|
||||
|
||||
#ifndef __nis_object_h
|
||||
#define __nis_object_h
|
||||
--
|
||||
2.12.2
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
# Copyright (C) 2017 Khem Raj <raj.khem@gmail.com>
|
||||
# Released under the MIT license (see COPYING.MIT for the terms)
|
||||
|
||||
SUMMARY = "Library containing NIS functions using TI-RPC (IPv6 enabled)"
|
||||
DESCRIPTION = "This library contains the public client interface for NIS(YP) and NIS+\
|
||||
it was part of glibc and now is standalone packages. it also supports IPv6"
|
||||
HOMEPAGE = "https://github.com/thkukuk/libnsl"
|
||||
LICENSE = "LGPL-2.1"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
SECTION = "libs"
|
||||
DEPENDS = "libtirpc"
|
||||
DEPENDS_append_libc-musl = " bsd-headers"
|
||||
|
||||
PV = "1.0.5+git${SRCPV}"
|
||||
|
||||
SRCREV = "dfa2f313524aff9243c4d8ce1bace73786478356"
|
||||
|
||||
SRC_URI = "git://github.com/thkukuk/libnsl \
|
||||
file://0001-include-sys-cdefs.h-explicitly.patch \
|
||||
file://0002-Define-glibc-specific-macros.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit autotools pkgconfig gettext
|
||||
|
||||
EXTRA_OECONF += "--libdir=${libdir}/nsl --includedir=${includedir}/nsl"
|
||||
|
||||
do_install_append() {
|
||||
install -d ${D}${libdir}
|
||||
mv ${D}${libdir}/nsl/pkgconfig ${D}${libdir}
|
||||
}
|
||||
|
||||
FILES_${PN} += "${libdir}/nsl/*.so.*"
|
||||
FILES_${PN}-dev += "${includedir}/nsl ${libdir}/nsl/*.so"
|
||||
Reference in New Issue
Block a user