libtirpc: respin patches
PATCH v2 1/3 libtirpc: respin patches
Due to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Fix this by redoing the patches. These patches were submitted for upstream master, add backported patches for the current tarball.
--- ...0001-configure.ac-Allow-for-disabling-NIS.patch | 169 ++++++++++++++++ ...configure.ac-Allow-for-disabling-auth-DES.patch | 203 ++++++++++++++++++++ .../libtirpc/0003-debug.h-Include-stdarg.patch | 20 ++ .../libtirpc/libtirpc/remove-des-uclibc.patch | 38 ---- meta/recipes-extended/libtirpc/libtirpc_0.2.5.bb | 6 +- 5 files changed, 397 insertions(+), 39 deletions(-) create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0001-configure.ac-Allow-for-disabling-NIS.patch create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0002-configure.ac-Allow-for-disabling-auth-DES.patch create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0003-debug.h-Include-stdarg.patch delete mode 100644 meta/recipes-extended/libtirpc/libtirpc/remove-des-uclibc.patch
meta/recipes-extended/libtirpc/libtirpc/0001-configure.ac-Allow-for-disabling-NIS.patch new file +169 -0
@@ -0,0 +1,169 @@ +From b562294d35d8a87af2bcdbc32c15cc973e50ed4e Mon Sep 17 00:00:00 2001 +From: Bernhard Reutner-Fischer <[email protected]> +Date: Sun, 1 Mar 2015 12:18:05 +0100 +Subject: [PATCH 1/2] configure.ac: Allow for disabling NIS +To: [email protected] +Cc: Steve Dickson <[email protected]> + +Yellow Pages might not be available, provide a config knob to disable +it. + +Upstream-Status: Submitted + +Signed-off-by: Bernhard Reutner-Fischer <[email protected]> +--- + configure.ac | 16 ++++++++++++++++ + src/Makefile.am | 6 +++++- + src/auth_des.c | 18 +++++++++++++++++- + src/auth_time.c | 3 ++- + 4 files changed, 40 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 10d17ea..d006ac9 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -32,6 +32,22 @@ AC_CHECK_HEADERS([arpa/inet.h fcntl.h libintl.h limits.h locale.h netdb.h netine + AC_CHECK_LIB([pthread], [pthread_create]) + AC_CHECK_LIB([nsl], [yp_get_default_domain]) + ++AC_ARG_ENABLE([nis], ++ [AC_HELP_STRING([--disable-nis], ++ [Disable Yellow Pages (NIS) support @<:@default=no@:>@])], ++ [],[enable_nis=yes]) ++if test "x$enable_nis" != xno; then ++ AC_CHECK_HEADERS([rpcsvc/nis.h]) ++ if test "x$ac_cv_header_rpcsvc_nis_h" != xyes; then ++ AC_WARN([NIS enabled but no rpcsvc/nis.h header found]) ++ AC_WARN([Turning off NIS / YP support]) ++ enable_nis="no" ++ fi ++fi ++if test "x$enable_nis" != xno; then ++ AC_DEFINE([YP], [1], [Define to 1 if NIS is available]) ++fi ++AM_CONDITIONAL([YP], [test "x$enable_nis" != xno]) + + AC_CONFIG_FILES([Makefile src/Makefile man/Makefile doc/Makefile]) + AC_OUTPUT(libtirpc.pc) +diff --git a/src/Makefile.am b/src/Makefile.am +index de57c8f..7861057 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -51,7 +51,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln + rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ + rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ + svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ +- auth_time.c auth_des.c authdes_prot.c debug.c ++ auth_des.c authdes_prot.c debug.c + + ## XDR + libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c +@@ -63,6 +63,10 @@ if GSS + libtirpc_la_CFLAGS = -DHAVE_RPCSEC_GSS $(GSSAPI_CFLAGS) + endif + ++if YP ++ libtirpc_la_SOURCES += auth_time.c ++endif ++ + ## libtirpc_a_SOURCES += key_call.c key_prot_xdr.c getpublickey.c + ## libtirpc_a_SOURCES += netname.c netnamer.c rpcdname.c \ + ## libtirpc_a_SOURCES += rtime.c \ +diff --git a/src/auth_des.c b/src/auth_des.c +index cff777c..be9d364 100644 +--- a/src/auth_des.c ++++ b/src/auth_des.c +@@ -48,7 +48,9 @@ + #include <rpc/xdr.h> + #include <sys/socket.h> + #undef NIS ++#ifdef HAVE_RPCSVC_NIS_H + #include <rpcsvc/nis.h> ++#endif + + #if defined(LIBC_SCCS) && !defined(lint) + #endif +@@ -68,8 +70,13 @@ extern bool_t xdr_authdes_cred( XDR *, struct authdes_cred *); + extern bool_t xdr_authdes_verf( XDR *, struct authdes_verf *); + extern int key_encryptsession_pk(); + ++#ifdef YP + extern bool_t __rpc_get_time_offset(struct timeval *, nis_server *, char *, + char **, char **); ++#else ++# define __rpc_get_time_offset(__a,__b,__c,__d, __e) (1) /* always valid */ ++# define nis_server char ++#endif + + /* + * DES authenticator operations vector +@@ -103,7 +110,9 @@ struct ad_private { + u_char ad_pkey[1024]; /* Server's actual public key */ + char *ad_netid; /* Timehost netid */ + char *ad_uaddr; /* Timehost uaddr */ ++#ifdef YP + nis_server *ad_nis_srvr; /* NIS+ server struct */ ++#endif + }; + + AUTH *authdes_pk_seccreate(const char *, netobj *, u_int, const char *, +@@ -148,7 +157,8 @@ authdes_seccreate(const char *servername, const u_int win, + */ + AUTH * + authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, +- const char *timehost, const des_block *ckey, nis_server *srvr) ++ const char *timehost, const des_block *ckey, nis_server *srvr ++ ) + { + AUTH *auth; + struct ad_private *ad; +@@ -171,7 +181,9 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, + ad->ad_timehost = NULL; + ad->ad_netid = NULL; + ad->ad_uaddr = NULL; ++#ifdef YP + ad->ad_nis_srvr = NULL; ++#endif + ad->ad_timediff.tv_sec = 0; + ad->ad_timediff.tv_usec = 0; + memcpy(ad->ad_pkey, pkey->n_bytes, pkey->n_len); +@@ -194,9 +206,11 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, + } + memcpy(ad->ad_timehost, timehost, strlen(timehost) + 1); + ad->ad_dosync = TRUE; ++#ifdef YP + } else if (srvr != NULL) { + ad->ad_nis_srvr = srvr; /* transient */ + ad->ad_dosync = TRUE; ++#endif + } else { + ad->ad_dosync = FALSE; + } +@@ -224,7 +238,9 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, + if (!authdes_refresh(auth, NULL)) { + goto failed; + } ++#ifdef YP + ad->ad_nis_srvr = NULL; /* not needed any longer */ ++#endif + auth_get(auth); /* Reference for caller */ + return (auth); + +diff --git a/src/auth_time.c b/src/auth_time.c +index 7cfbb7e..111de90 100644 +--- a/src/auth_time.c ++++ b/src/auth_time.c +@@ -43,8 +43,9 @@ + //#include <clnt_soc.h> + #include <sys/select.h> + #undef NIS ++#ifdef HAVE_RPCSVC_NIS_H + #include <rpcsvc/nis.h> +- ++#endif + + #ifdef TESTING + #define msg(x) printf("ERROR: %s\n", x) +-- +2.1.4 +
meta/recipes-extended/libtirpc/libtirpc/0002-configure.ac-Allow-for-disabling-auth-DES.patch new file +203 -0
203 lines not on this page · raw message
meta/recipes-extended/libtirpc/libtirpc/0003-debug.h-Include-stdarg.patch new file +20 -0
@@ -0,0 +1,20 @@ +Subject: [PATCH] debug.h: add missing include + +Upstream-Status: Pending + +In file included from src/clnt_bcast.c:67:0: +src/debug.h:39:47: error: unknown type name 'va_list' + vlibtirpc_log_dbg(int level, const char *fmt, va_list args) + + +diff -rdup libtirpc-0.2.5.oorig/src/debug.h libtirpc-0.2.5/src/debug.h +--- libtirpc-0.2.5.oorig/src/debug.h 2014-08-08 18:24:34.000000000 +0200 ++++ libtirpc-0.2.5/src/debug.h 2015-03-11 20:55:29.141397172 +0100 +@@ -21,6 +21,7 @@ + + #ifndef _DEBUG_H + #define _DEBUG_H ++#include <stdarg.h> + #include <syslog.h> + + extern int libtirpc_debug_level;
meta/recipes-extended/libtirpc/libtirpc/remove-des-uclibc.patch deleted +0 -38
@@ -1,38 +0,0 @@ -uclibc does not provide des functionality unlike eglibc so lets disable ssl support - -Upstream-Status: Inappropriate [uclibc specific] -Signed-off-by: Khem Raj <[email protected]> - -Index: libtirpc-0.2.3/src/rpc_soc.c -=================================================================== ---- libtirpc-0.2.3.orig/src/rpc_soc.c 2013-03-10 16:00:51.355282153 -0700 -+++ libtirpc-0.2.3/src/rpc_soc.c 2013-03-10 16:00:51.703282148 -0700 -@@ -520,6 +520,7 @@ - (resultproc_t) rpc_wrap_bcast, "udp"); - } - -+#if 0 - /* - * Create the client des authentication object. Obsoleted by - * authdes_seccreate(). -@@ -551,6 +552,7 @@ - dummy = authdes_seccreate(servername, window, NULL, ckey); - return (dummy); - } -+#endif - - /* - * Create a client handle for a unix connection. Obsoleted by clnt_vc_create() -Index: libtirpc-0.2.3/src/Makefile.am -=================================================================== ---- libtirpc-0.2.3.orig/src/Makefile.am 2013-03-10 16:00:51.355282153 -0700 -+++ libtirpc-0.2.3/src/Makefile.am 2013-03-10 16:00:51.703282148 -0700 -@@ -50,7 +50,7 @@ - rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ - rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ - svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ -- auth_time.c auth_des.c authdes_prot.c -+ auth_time.c - - ## XDR - libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c
meta/recipes-extended/libtirpc/libtirpc_0.2.5.bb +5 -1
@@ -10,12 +10,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=f835cce8852481e4b2bbbdd23b5e47f3 \ DEPENDS += "xz-native" PROVIDES = "virtual/librpc" +PR = "r1" SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2;name=libtirpc \ ${GENTOO_MIRROR}/${BPN}-glibc-nfs.tar.xz;name=glibc-nfs \ file://libtirpc-0.2.1-fortify.patch \ + file://0001-configure.ac-Allow-for-disabling-NIS.patch \ + file://0002-configure.ac-Allow-for-disabling-auth-DES.patch \ + file://0003-debug.h-Include-stdarg.patch \ " -SRC_URI_append_libc-uclibc = " file://remove-des-uclibc.patch" +EXTRA_OECONF_append_libc-uclibc = " --disable-nis --disable-authdes" SRC_URI[libtirpc.md5sum] = "8cd41a5ef5a9b50d0fb6abb98af15368" SRC_URI[libtirpc.sha256sum] = "62f9de7c2c8686c568757730e1fef66502a0e00d6cacf33546d0267984e002db"
Signature · 1 line
1.7.10.4
PATCH v2 2/3 rpcbind: respin patches
Due to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Fix this by redoing the patches. These patches were submitted for upstream master, add backported patches for the current tarball.
--- ...001-configure.ac-Check-for-rpcsvc-mount.h.patch | 64 ++++++++++++++++++++ .../rpcbind/rpcbind/0001-uclibc-nss.patch | 30 --------- .../rpcbind/0002-uclibc-rpcsvc-defines.patch | 60 ------------------ meta/recipes-extended/rpcbind/rpcbind_0.2.2.bb | 8 +-- 4 files changed, 66 insertions(+), 96 deletions(-) create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-configure.ac-Check-for-rpcsvc-mount.h.patch delete mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch delete mode 100644 meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch
meta/recipes-extended/rpcbind/rpcbind/0001-configure.ac-Check-for-rpcsvc-mount.h.patch new file +64 -0
@@ -0,0 +1,64 @@ +From 8c5e97b9ff5699a5eafad6c4348bbb0b84ec30e0 Mon Sep 17 00:00:00 2001 +From: Bernhard Reutner-Fischer <[email protected]> +Date: Tue, 3 Mar 2015 01:59:50 +0100 +Subject: [PATCH,rpcbind 2/4] configure.ac: Check for rpcsvc/mount.h +To: Steve Dickson <[email protected]> +Cc: [email protected] + +The function check_callit() attempts to reference a number of defines +from files that might not be available for everything but glibc. + +For simplicity assume that if there is no rpcsvc/mount.h all the other +includes do not exist either. + +Upstream-Status: Submitted + +Signed-off-by: Bernhard Reutner-Fischer <[email protected]> +--- + configure.ac | 2 +- + src/security.c | 17 +++++++++++++++++ + 2 files changed, 18 insertions(+), 1 deletion(-) + +diff -rdup rpcbind-0.2.2.orig/configure.ac rpcbind-0.2.2/configure.ac +--- rpcbind-0.2.2.orig/configure.ac 2014-11-25 21:34:48.000000000 +0100 ++++ rpcbind-0.2.2/configure.ac 2015-03-12 10:47:12.613608115 +0100 +@@ -55,4 +55,6 @@ AS_IF([test x$enable_libwrap = xyes], [ + + AC_SEARCH_LIBS([pthread_create], [pthread]) + ++AC_CHECK_HEADERS([nss.h rpcsvc/mount.h]) ++ + AC_OUTPUT([Makefile]) +diff -rdup rpcbind-0.2.2.orig/src/security.c rpcbind-0.2.2/src/security.c +--- rpcbind-0.2.2.orig/src/security.c 2014-11-25 21:34:48.000000000 +0100 ++++ rpcbind-0.2.2/src/security.c 2015-03-12 10:45:40.580434845 +0100 +@@ -20,12 +20,29 @@ + /* + * XXX for special case checks in check_callit. + */ ++#ifdef HAVE_RPCSVC_MOUNT_H + #include <rpcsvc/mount.h> + #include <rpcsvc/rquota.h> + #include <rpcsvc/nfs_prot.h> + #include <rpcsvc/yp.h> + #include <rpcsvc/ypclnt.h> + #include <rpcsvc/yppasswd.h> ++#else ++# define MOUNTPROC_MNT 1 ++# define MOUNTPROC_UMNT 3 ++# define NFS_PROGRAM 100003 ++# define YPPROG 100004 ++# define MOUNTPROG 100005 ++# define YPBINDPROG 100007 ++# define YPPASSWDPROG 100009 ++# define RQUOTAPROG 100011 ++ ++# define YPBINDPROC_SETDOM 2 ++# define YPPROC_MATCH 3 ++# define YPPROC_FIRST 4 ++# define YPPROC_NEXT 5 ++# define YPPROC_ALL 8 ++#endif + + #include "rpcbind.h" +
meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch deleted +0 -30
@@ -1,30 +0,0 @@ -Upstream-Status: Pending - -From b8f0d7b7318ba344c25785d6f5cf3f8de98012d4 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <[email protected]> -Date: Tue, 2 Feb 2010 09:36:03 +0000 -Subject: [PATCH 1/2] uclibc-nss - ---- - src/rpcbind.c | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/src/rpcbind.c b/src/rpcbind.c -index 525ffba..1fe1a60 100644 ---- a/src/rpcbind.c -+++ b/src/rpcbind.c -@@ -67,7 +67,11 @@ - #include <pwd.h> - #include <string.h> - #include <errno.h> -+#if defined(__UCLIBC__) -+#define __nss_configure_lookup(x,y) -+#else - #include <nss.h> -+#endif - #include "config.h" - #include "rpcbind.h" - --- -1.6.6.1 -
meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch deleted +0 -60
60 lines not on this page · raw message
meta/recipes-extended/rpcbind/rpcbind_0.2.2.bb +2 -6
@@ -10,19 +10,15 @@ LICENSE = "BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \ file://src/rpcinfo.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" +PR = "r1" SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \ file://init.d \ - ${UCLIBCPATCHES} \ + file://0001-configure.ac-Check-for-rpcsvc-mount.h.patch \ file://rpcbind.conf \ file://rpcbind.socket \ file://rpcbind.service \ " -UCLIBCPATCHES_libc-uclibc = "file://0001-uclibc-nss.patch \ - file://0002-uclibc-rpcsvc-defines.patch \ - " -UCLIBCPATCHES ?= "" - SRC_URI[md5sum] = "8acf839bfef2364a05fbd6be5f8edf9a" SRC_URI[sha256sum] = "13dbc8c796dbe0ce8df873007bea0490c8460b56202d918c9eb6fa0358a08f29"
Signature · 1 line
1.7.10.4
Re: [PATCH 2/3] rpcbind: respin patches
Quoted 7 lines · Bernhard Reutner-Fischer
Due to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Fix this by redoing the patches. These patches were submitted for upstream master, add backported patches for the current tarball.
The autobuilder is failing on this recipe (
http://errors.yoctoproject.org/Errors/Details/9409/):
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-skeleton/build/build/tmp/sysroots/qemux86-64/usr/lib/../lib/libtirpc.so:
undefined reference to `_yp_check'
Ross
Re: [PATCH 2/3] rpcbind: respin patches
Quoted 12 lines · Ross
Quoted 7 lines · Bernhard Reutner-Fischer
Due to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Fix this by redoing the patches. These patches were submitted for upstream master, add backported patches for the current tarball.
Quoted 5 lines
The autobuilder is failing on this recipe
(http://errors.yoctoproject.org/Errors/Details/9409/):
/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-skeleton/build/build/tmp/sysroots/qemux86-64/usr/lib/../lib/libtirpc.so:
undefined reference to `_yp_check'
yes. I suggest you disable NIS / YP support for glibc too. Alternatively you most likely want upstream to sed -i -e "s/_yp_check/__yp_check/g" src/getrpcent.c
This IMO is a pre-existing bug in the upstream libtirpc that i deliberately did not fix since i don't do YP anymore nowadays.
thanks,
PATCH v2 3/3 packagegroup zeroconf: nss-mdns is libc dependant
In reply to Bernhard Reutner-Fischerglibc provides NSS, other libc do not, so only add libnss-mdns to the zeroconf package group for glibc.
This fixes the build of core-image-sato for e.g. uClibc
--- meta/recipes-core/packagegroups/packagegroup-base.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
meta/recipes-core/packagegroups/packagegroup-base.bb +3 -1
@@ -347,8 +347,10 @@ RRECOMMENDS_packagegroup-base-nfs = "\ SUMMARY_packagegroup-base-zeroconf = "Zeroconf support" RDEPENDS_packagegroup-base-zeroconf = "\ - libnss-mdns \ avahi-daemon" +RDEPENDS_packagegroup-base-zeroconf_append_libc-glibc = "\ + libnss-mdns \ + " SUMMARY_packagegroup-base-ipv6 = "IPv6 support" RDEPENDS_packagegroup-base-ipv6 = "\
Signature · 1 line
1.7.10.4
Quoted 2 lines · Bernhard Reutner-Fischer
+PR = "r1"
No need to bump PR, remove this line please.
Ross
Quoted 8 lines · Ross
Quoted 2 lines · Bernhard Reutner-Fischer
+PR = "r1"
No need to bump PR, remove this line please.
yea, i'm not changing anything from installed binaries perspective, right?
Quoted 3 lines · Bernhard Reutner-Fischer
yea, i'm not changing anything from installed binaries perspective, right?
Even if you were we haven't needed explicit PR bumps for quite a while now. The PR service will automatically increase the PR if required.
Ross
Quoted 9 lines · Ross
Quoted 3 lines · Bernhard Reutner-Fischer
yea, i'm not changing anything from installed binaries perspective, right?
Even if you were we haven't needed explicit PR bumps for quite a while now. The PR service will automatically increase the PR if required.
k, thanks!
(obviously remove the PR bumps from the entire series, thanks)
Quoted 16 lines · Bernhard Reutner-Fischer
Quoted 2 lines · Ross
On 16 March 2015 at 13:49, Bernhard Reutner-Fischer <
Quoted 3 lines
Quoted 2 lines · wrote:
yea, i'm not changing anything from installed binaries perspective,
right?
Quoted 3 lines
Quoted 1 line
Even if you were we haven't needed explicit PR bumps for quite a while
now.
Quoted 1 line
The PR service will automatically increase the PR if required.
k, thanks!
v2 cover misc uClibc-related tweaks
Changes from v2:
- drop PR bumps
The following changes since commit fb29441216435b9bae47ca9cd42db5a6b1fe77d8:
oeqa/parselogs: Skip hda opcode errors (2015-03-12 12:49:22 +0000)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib aldot/fixes
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=aldot/fixes
Bernhard Reutner-Fischer (3):
libtirpc: respin patches
rpcbind: respin patches
packagegroup zeroconf: nss-mdns is libc dependant
.../packagegroups/packagegroup-base.bb | 4 +- ...0001-configure.ac-Allow-for-disabling-NIS.patch | 169 +++++++++++++++++ ...configure.ac-Allow-for-disabling-auth-DES.patch | 203 +++++++++++++++++++++ .../libtirpc/0003-debug.h-Include-stdarg.patch | 20 ++ .../libtirpc/libtirpc/remove-des-uclibc.patch | 38 ---- meta/recipes-extended/libtirpc/libtirpc_0.2.5.bb | 5 +- ...001-configure.ac-Check-for-rpcsvc-mount.h.patch | 64 +++++++ .../rpcbind/rpcbind/0001-uclibc-nss.patch | 30 --- .../rpcbind/0002-uclibc-rpcsvc-defines.patch | 60 ------ meta/recipes-extended/rpcbind/rpcbind_0.2.2.bb | 7 +- 10 files changed, 464 insertions(+), 136 deletions(-) create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0001-configure.ac-Allow-for-disabling-NIS.patch create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0002-configure.ac-Allow-for-disabling-auth-DES.patch create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0003-debug.h-Include-stdarg.patch delete mode 100644 meta/recipes-extended/libtirpc/libtirpc/remove-des-uclibc.patch create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-configure.ac-Check-for-rpcsvc-mount.h.patch delete mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch delete mode 100644 meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch
Signature · 1 line
2.1.4
PATCH v2 1/3 libtirpc: respin patches
Due to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Fix this by redoing the patches. These patches were submitted for upstream master, add backported patches for the current tarball.
--- ...0001-configure.ac-Allow-for-disabling-NIS.patch | 169 +++++++++++++++++ ...configure.ac-Allow-for-disabling-auth-DES.patch | 203 +++++++++++++++++++++ .../libtirpc/0003-debug.h-Include-stdarg.patch | 20 ++ .../libtirpc/libtirpc/remove-des-uclibc.patch | 38 ---- meta/recipes-extended/libtirpc/libtirpc_0.2.5.bb | 5 +- 5 files changed, 396 insertions(+), 39 deletions(-) create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0001-configure.ac-Allow-for-disabling-NIS.patch create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0002-configure.ac-Allow-for-disabling-auth-DES.patch create mode 100644 meta/recipes-extended/libtirpc/libtirpc/0003-debug.h-Include-stdarg.patch delete mode 100644 meta/recipes-extended/libtirpc/libtirpc/remove-des-uclibc.patch
meta/recipes-extended/libtirpc/libtirpc/0001-configure.ac-Allow-for-disabling-NIS.patch new file +169 -0
@@ -0,0 +1,169 @@ +From b562294d35d8a87af2bcdbc32c15cc973e50ed4e Mon Sep 17 00:00:00 2001 +From: Bernhard Reutner-Fischer <[email protected]> +Date: Sun, 1 Mar 2015 12:18:05 +0100 +Subject: [PATCH 1/2] configure.ac: Allow for disabling NIS +To: [email protected] +Cc: Steve Dickson <[email protected]> + +Yellow Pages might not be available, provide a config knob to disable +it. + +Upstream-Status: Submitted + +Signed-off-by: Bernhard Reutner-Fischer <[email protected]> +--- + configure.ac | 16 ++++++++++++++++ + src/Makefile.am | 6 +++++- + src/auth_des.c | 18 +++++++++++++++++- + src/auth_time.c | 3 ++- + 4 files changed, 40 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 10d17ea..d006ac9 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -32,6 +32,22 @@ AC_CHECK_HEADERS([arpa/inet.h fcntl.h libintl.h limits.h locale.h netdb.h netine + AC_CHECK_LIB([pthread], [pthread_create]) + AC_CHECK_LIB([nsl], [yp_get_default_domain]) + ++AC_ARG_ENABLE([nis], ++ [AC_HELP_STRING([--disable-nis], ++ [Disable Yellow Pages (NIS) support @<:@default=no@:>@])], ++ [],[enable_nis=yes]) ++if test "x$enable_nis" != xno; then ++ AC_CHECK_HEADERS([rpcsvc/nis.h]) ++ if test "x$ac_cv_header_rpcsvc_nis_h" != xyes; then ++ AC_WARN([NIS enabled but no rpcsvc/nis.h header found]) ++ AC_WARN([Turning off NIS / YP support]) ++ enable_nis="no" ++ fi ++fi ++if test "x$enable_nis" != xno; then ++ AC_DEFINE([YP], [1], [Define to 1 if NIS is available]) ++fi ++AM_CONDITIONAL([YP], [test "x$enable_nis" != xno]) + + AC_CONFIG_FILES([Makefile src/Makefile man/Makefile doc/Makefile]) + AC_OUTPUT(libtirpc.pc) +diff --git a/src/Makefile.am b/src/Makefile.am +index de57c8f..7861057 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -51,7 +51,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln + rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ + rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ + svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ +- auth_time.c auth_des.c authdes_prot.c debug.c ++ auth_des.c authdes_prot.c debug.c + + ## XDR + libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c +@@ -63,6 +63,10 @@ if GSS + libtirpc_la_CFLAGS = -DHAVE_RPCSEC_GSS $(GSSAPI_CFLAGS) + endif + ++if YP ++ libtirpc_la_SOURCES += auth_time.c ++endif ++ + ## libtirpc_a_SOURCES += key_call.c key_prot_xdr.c getpublickey.c + ## libtirpc_a_SOURCES += netname.c netnamer.c rpcdname.c \ + ## libtirpc_a_SOURCES += rtime.c \ +diff --git a/src/auth_des.c b/src/auth_des.c +index cff777c..be9d364 100644 +--- a/src/auth_des.c ++++ b/src/auth_des.c +@@ -48,7 +48,9 @@ + #include <rpc/xdr.h> + #include <sys/socket.h> + #undef NIS ++#ifdef HAVE_RPCSVC_NIS_H + #include <rpcsvc/nis.h> ++#endif + + #if defined(LIBC_SCCS) && !defined(lint) + #endif +@@ -68,8 +70,13 @@ extern bool_t xdr_authdes_cred( XDR *, struct authdes_cred *); + extern bool_t xdr_authdes_verf( XDR *, struct authdes_verf *); + extern int key_encryptsession_pk(); + ++#ifdef YP + extern bool_t __rpc_get_time_offset(struct timeval *, nis_server *, char *, + char **, char **); ++#else ++# define __rpc_get_time_offset(__a,__b,__c,__d, __e) (1) /* always valid */ ++# define nis_server char ++#endif + + /* + * DES authenticator operations vector +@@ -103,7 +110,9 @@ struct ad_private { + u_char ad_pkey[1024]; /* Server's actual public key */ + char *ad_netid; /* Timehost netid */ + char *ad_uaddr; /* Timehost uaddr */ ++#ifdef YP + nis_server *ad_nis_srvr; /* NIS+ server struct */ ++#endif + }; + + AUTH *authdes_pk_seccreate(const char *, netobj *, u_int, const char *, +@@ -148,7 +157,8 @@ authdes_seccreate(const char *servername, const u_int win, + */ + AUTH * + authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, +- const char *timehost, const des_block *ckey, nis_server *srvr) ++ const char *timehost, const des_block *ckey, nis_server *srvr ++ ) + { + AUTH *auth; + struct ad_private *ad; +@@ -171,7 +181,9 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, + ad->ad_timehost = NULL; + ad->ad_netid = NULL; + ad->ad_uaddr = NULL; ++#ifdef YP + ad->ad_nis_srvr = NULL; ++#endif + ad->ad_timediff.tv_sec = 0; + ad->ad_timediff.tv_usec = 0; + memcpy(ad->ad_pkey, pkey->n_bytes, pkey->n_len); +@@ -194,9 +206,11 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, + } + memcpy(ad->ad_timehost, timehost, strlen(timehost) + 1); + ad->ad_dosync = TRUE; ++#ifdef YP + } else if (srvr != NULL) { + ad->ad_nis_srvr = srvr; /* transient */ + ad->ad_dosync = TRUE; ++#endif + } else { + ad->ad_dosync = FALSE; + } +@@ -224,7 +238,9 @@ authdes_pk_seccreate(const char *servername, netobj *pkey, u_int window, + if (!authdes_refresh(auth, NULL)) { + goto failed; + } ++#ifdef YP + ad->ad_nis_srvr = NULL; /* not needed any longer */ ++#endif + auth_get(auth); /* Reference for caller */ + return (auth); + +diff --git a/src/auth_time.c b/src/auth_time.c +index 7cfbb7e..111de90 100644 +--- a/src/auth_time.c ++++ b/src/auth_time.c +@@ -43,8 +43,9 @@ + //#include <clnt_soc.h> + #include <sys/select.h> + #undef NIS ++#ifdef HAVE_RPCSVC_NIS_H + #include <rpcsvc/nis.h> +- ++#endif + + #ifdef TESTING + #define msg(x) printf("ERROR: %s\n", x) +-- +2.1.4 +
meta/recipes-extended/libtirpc/libtirpc/0002-configure.ac-Allow-for-disabling-auth-DES.patch new file +203 -0
203 lines not on this page · raw message
meta/recipes-extended/libtirpc/libtirpc/0003-debug.h-Include-stdarg.patch new file +20 -0
@@ -0,0 +1,20 @@ +Subject: [PATCH] debug.h: add missing include + +Upstream-Status: Pending + +In file included from src/clnt_bcast.c:67:0: +src/debug.h:39:47: error: unknown type name 'va_list' + vlibtirpc_log_dbg(int level, const char *fmt, va_list args) + + +diff -rdup libtirpc-0.2.5.oorig/src/debug.h libtirpc-0.2.5/src/debug.h +--- libtirpc-0.2.5.oorig/src/debug.h 2014-08-08 18:24:34.000000000 +0200 ++++ libtirpc-0.2.5/src/debug.h 2015-03-11 20:55:29.141397172 +0100 +@@ -21,6 +21,7 @@ + + #ifndef _DEBUG_H + #define _DEBUG_H ++#include <stdarg.h> + #include <syslog.h> + + extern int libtirpc_debug_level;
meta/recipes-extended/libtirpc/libtirpc/remove-des-uclibc.patch deleted +0 -38
@@ -1,38 +0,0 @@ -uclibc does not provide des functionality unlike eglibc so lets disable ssl support - -Upstream-Status: Inappropriate [uclibc specific] -Signed-off-by: Khem Raj <[email protected]> - -Index: libtirpc-0.2.3/src/rpc_soc.c -=================================================================== ---- libtirpc-0.2.3.orig/src/rpc_soc.c 2013-03-10 16:00:51.355282153 -0700 -+++ libtirpc-0.2.3/src/rpc_soc.c 2013-03-10 16:00:51.703282148 -0700 -@@ -520,6 +520,7 @@ - (resultproc_t) rpc_wrap_bcast, "udp"); - } - -+#if 0 - /* - * Create the client des authentication object. Obsoleted by - * authdes_seccreate(). -@@ -551,6 +552,7 @@ - dummy = authdes_seccreate(servername, window, NULL, ckey); - return (dummy); - } -+#endif - - /* - * Create a client handle for a unix connection. Obsoleted by clnt_vc_create() -Index: libtirpc-0.2.3/src/Makefile.am -=================================================================== ---- libtirpc-0.2.3.orig/src/Makefile.am 2013-03-10 16:00:51.355282153 -0700 -+++ libtirpc-0.2.3/src/Makefile.am 2013-03-10 16:00:51.703282148 -0700 -@@ -50,7 +50,7 @@ - rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ - rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ - svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ -- auth_time.c auth_des.c authdes_prot.c -+ auth_time.c - - ## XDR - libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c
meta/recipes-extended/libtirpc/libtirpc_0.2.5.bb +4 -1
@@ -13,9 +13,12 @@ PROVIDES = "virtual/librpc" SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2;name=libtirpc \ ${GENTOO_MIRROR}/${BPN}-glibc-nfs.tar.xz;name=glibc-nfs \ file://libtirpc-0.2.1-fortify.patch \ + file://0001-configure.ac-Allow-for-disabling-NIS.patch \ + file://0002-configure.ac-Allow-for-disabling-auth-DES.patch \ + file://0003-debug.h-Include-stdarg.patch \ " -SRC_URI_append_libc-uclibc = " file://remove-des-uclibc.patch" +EXTRA_OECONF_append_libc-uclibc = " --disable-nis --disable-authdes" SRC_URI[libtirpc.md5sum] = "8cd41a5ef5a9b50d0fb6abb98af15368" SRC_URI[libtirpc.sha256sum] = "62f9de7c2c8686c568757730e1fef66502a0e00d6cacf33546d0267984e002db"
Signature · 1 line
2.1.4
PATCH v2 2/3 rpcbind: respin patches
In reply to Bernhard Reutner-FischerDue to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Fix this by redoing the patches. These patches were submitted for upstream master, add backported patches for the current tarball.
v2: Remove PR bump
--- ...001-configure.ac-Check-for-rpcsvc-mount.h.patch | 64 ++++++++++++++++++++++ .../rpcbind/rpcbind/0001-uclibc-nss.patch | 30 ---------- .../rpcbind/0002-uclibc-rpcsvc-defines.patch | 60 -------------------- meta/recipes-extended/rpcbind/rpcbind_0.2.2.bb | 7 +-- 4 files changed, 65 insertions(+), 96 deletions(-) create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-configure.ac-Check-for-rpcsvc-mount.h.patch delete mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch delete mode 100644 meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch
meta/recipes-extended/rpcbind/rpcbind/0001-configure.ac-Check-for-rpcsvc-mount.h.patch new file +64 -0
@@ -0,0 +1,64 @@ +From 8c5e97b9ff5699a5eafad6c4348bbb0b84ec30e0 Mon Sep 17 00:00:00 2001 +From: Bernhard Reutner-Fischer <[email protected]> +Date: Tue, 3 Mar 2015 01:59:50 +0100 +Subject: [PATCH,rpcbind 2/4] configure.ac: Check for rpcsvc/mount.h +To: Steve Dickson <[email protected]> +Cc: [email protected] + +The function check_callit() attempts to reference a number of defines +from files that might not be available for everything but glibc. + +For simplicity assume that if there is no rpcsvc/mount.h all the other +includes do not exist either. + +Upstream-Status: Submitted + +Signed-off-by: Bernhard Reutner-Fischer <[email protected]> +--- + configure.ac | 2 +- + src/security.c | 17 +++++++++++++++++ + 2 files changed, 18 insertions(+), 1 deletion(-) + +diff -rdup rpcbind-0.2.2.orig/configure.ac rpcbind-0.2.2/configure.ac +--- rpcbind-0.2.2.orig/configure.ac 2014-11-25 21:34:48.000000000 +0100 ++++ rpcbind-0.2.2/configure.ac 2015-03-12 10:47:12.613608115 +0100 +@@ -55,4 +55,6 @@ AS_IF([test x$enable_libwrap = xyes], [ + + AC_SEARCH_LIBS([pthread_create], [pthread]) + ++AC_CHECK_HEADERS([nss.h rpcsvc/mount.h]) ++ + AC_OUTPUT([Makefile]) +diff -rdup rpcbind-0.2.2.orig/src/security.c rpcbind-0.2.2/src/security.c +--- rpcbind-0.2.2.orig/src/security.c 2014-11-25 21:34:48.000000000 +0100 ++++ rpcbind-0.2.2/src/security.c 2015-03-12 10:45:40.580434845 +0100 +@@ -20,12 +20,29 @@ + /* + * XXX for special case checks in check_callit. + */ ++#ifdef HAVE_RPCSVC_MOUNT_H + #include <rpcsvc/mount.h> + #include <rpcsvc/rquota.h> + #include <rpcsvc/nfs_prot.h> + #include <rpcsvc/yp.h> + #include <rpcsvc/ypclnt.h> + #include <rpcsvc/yppasswd.h> ++#else ++# define MOUNTPROC_MNT 1 ++# define MOUNTPROC_UMNT 3 ++# define NFS_PROGRAM 100003 ++# define YPPROG 100004 ++# define MOUNTPROG 100005 ++# define YPBINDPROG 100007 ++# define YPPASSWDPROG 100009 ++# define RQUOTAPROG 100011 ++ ++# define YPBINDPROC_SETDOM 2 ++# define YPPROC_MATCH 3 ++# define YPPROC_FIRST 4 ++# define YPPROC_NEXT 5 ++# define YPPROC_ALL 8 ++#endif + + #include "rpcbind.h" +
meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch deleted +0 -30
@@ -1,30 +0,0 @@ -Upstream-Status: Pending - -From b8f0d7b7318ba344c25785d6f5cf3f8de98012d4 Mon Sep 17 00:00:00 2001 -From: Natanael Copa <[email protected]> -Date: Tue, 2 Feb 2010 09:36:03 +0000 -Subject: [PATCH 1/2] uclibc-nss - ---- - src/rpcbind.c | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/src/rpcbind.c b/src/rpcbind.c -index 525ffba..1fe1a60 100644 ---- a/src/rpcbind.c -+++ b/src/rpcbind.c -@@ -67,7 +67,11 @@ - #include <pwd.h> - #include <string.h> - #include <errno.h> -+#if defined(__UCLIBC__) -+#define __nss_configure_lookup(x,y) -+#else - #include <nss.h> -+#endif - #include "config.h" - #include "rpcbind.h" - --- -1.6.6.1 -
meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch deleted +0 -60
60 lines not on this page · raw message
meta/recipes-extended/rpcbind/rpcbind_0.2.2.bb +1 -6
@@ -12,17 +12,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \ SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \ file://init.d \ - ${UCLIBCPATCHES} \ + file://0001-configure.ac-Check-for-rpcsvc-mount.h.patch \ file://rpcbind.conf \ file://rpcbind.socket \ file://rpcbind.service \ " -UCLIBCPATCHES_libc-uclibc = "file://0001-uclibc-nss.patch \ - file://0002-uclibc-rpcsvc-defines.patch \ - " -UCLIBCPATCHES ?= "" - SRC_URI[md5sum] = "8acf839bfef2364a05fbd6be5f8edf9a" SRC_URI[sha256sum] = "13dbc8c796dbe0ce8df873007bea0490c8460b56202d918c9eb6fa0358a08f29"
Signature · 1 line
2.1.4
PATCH v2 3/3 packagegroup zeroconf: nss-mdns is libc dependant
In reply to Bernhard Reutner-Fischerglibc provides NSS, other libc do not, so only add libnss-mdns to the zeroconf package group for glibc.
This fixes the build of core-image-sato for e.g. uClibc
--- meta/recipes-core/packagegroups/packagegroup-base.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
meta/recipes-core/packagegroups/packagegroup-base.bb +3 -1
@@ -347,8 +347,10 @@ RRECOMMENDS_packagegroup-base-nfs = "\ SUMMARY_packagegroup-base-zeroconf = "Zeroconf support" RDEPENDS_packagegroup-base-zeroconf = "\ - libnss-mdns \ avahi-daemon" +RDEPENDS_packagegroup-base-zeroconf_append_libc-glibc = "\ + libnss-mdns \ + " SUMMARY_packagegroup-base-ipv6 = "IPv6 support" RDEPENDS_packagegroup-base-ipv6 = "\
Signature · 1 line
2.1.4
Quoted 6 lines · Bernhard Reutner-Fischer
Due to libc-dependant conditional patching (which should be completely forbidden -- fix it properly instead) the last PV bump forgot to adjust patches so they failed to apply.
Patches are fine in this series, however I just want to set the expectations right here. While having that libc-independent goal is fine. Sometimes we just can not do it, since uclibc or musl
does not have all the features that glibc has and an app might also be using it.
making glibc users not have those features is unfair
given that we have a strong mechanism of overrides in OE, it should be used to this advantage.
Quoted 9 lines · Khem Raj
Patches are fine in this series, however I just want to set the expectations right here. While having that libc-independent goal is fine. Sometimes we just can not do it, since uclibc or musl
does not have all the features that glibc has and an app might also be using it.
making glibc users not have those features is unfair
given that we have a strong mechanism of overrides in OE, it should be used to this advantage.
But these patches, which add configure options to enable/disable the relevant functionality and have been sent upstream - represent the ideal case as once they're merged won't cost us any effort in the future.
Ross
Quoted 13 lines · Ross
On 16 March 2015 at 18:24, Khem Raj <[email protected] <mailto:[email protected]>> wrote:
Patches are fine in this series, however I just want to set the expectations right here. While having that libc-independent goal is fine. Sometimes we just can not do it, since uclibc or musl
does not have all the features that glibc has and an app might also be using it.
making glibc users not have those features is unfair
given that we have a strong mechanism of overrides in OE, it should be used to this advantage.But these patches, which add configure options to enable/disable the relevant functionality and have been sent upstream - represent the ideal case as once they're merged won't cost us any effort in the future.
yes, you might have read the first line in my reply.
Quoted 1 line
Ross
Quoted 13 lines · Ross
Quoted 9 lines · Khem Raj
Patches are fine in this series, however I just want to set the expectations right here. While having that libc-independent goal is fine. Sometimes we just can not do it, since uclibc or musl
does not have all the features that glibc has and an app might also be using it.
making glibc users not have those features is unfair
given that we have a strong mechanism of overrides in OE, it should be used to this advantage.
Quoted 3 lines
But these patches, which add configure options to enable/disable the relevant functionality and have been sent upstream - represent the ideal case as once they're merged won't cost us any effort in the future.
I just disable NIS / YP for uClibc and leave glibc (or any other libc for that matter) to do what they previously did.
libtirpc is an excellent example for this unchanged behaviour:
src/getrpcent.c: if (!__yp_nomap && _yp_check(&d->domain)) {
and i did not change that since first, i don't care and second, maybe glibc-users do fun stuff to let _yp_check resolv to the proper __yp_check, i don't know nor really care ATM.
I think uClibc-users do not expect to have NIS support, we never implemented Yellow Pages support since that is usually way out of scope for those setups.
Maybe i misread your comment, though, Khem?
Or do you refer to a glitch i introduced? If so, what did i botch? :)
thanks,
Quoted 31 lines · Bernhard Reutner-Fischer
Quoted 13 lines · Ross
Quoted 9 lines · Khem Raj
Patches are fine in this series, however I just want to set the expectations right here. While having that libc-independent goal is fine. Sometimes we just can not do it, since uclibc or musl
does not have all the features that glibc has and an app might also be using it.
making glibc users not have those features is unfair
given that we have a strong mechanism of overrides in OE, it should be used to this advantage.Quoted 3 lines
But these patches, which add configure options to enable/disable the relevant functionality and have been sent upstream - represent the ideal case as once they're merged won't cost us any effort in the future.
I just disable NIS / YP for uClibc and leave glibc (or any other libc for that matter) to do what they previously did.
libtirpc is an excellent example for this unchanged behaviour:
src/getrpcent.c: if (!__yp_nomap &&_yp_check(&d->domain)) {and i did not change that since first, i don't care and second, maybe glibc-users do fun stuff to let
_yp_checkresolv to the proper__yp_check, i don't know nor really care ATM.
Quoted 6 lines
I think uClibc-users do not expect to have NIS support, we never implemented Yellow Pages support since that is usually way out of scope for those setups.
Maybe i misread your comment, though, Khem?
Or do you refer to a glitch i introduced? If so, what did i botch? :)
patches are fine. I was merely pointing on the sweeping statement regarding patches should be always libc-independent.
Quoted 2 lines
thanks,
Quoted 1 line · Khem Raj
patches are fine. I was merely pointing on the sweeping statement regarding patches should be always libc-independent.
yep.
IMO patches should always be applied and not depend on a certain architecture nor a certain libc or the like,
There may be a very, very few legit exceptions to this rule but from my experience conditional patching usually papers over low-quality patches.
cheers,