Skip to contentSkip to conversation

package/libtirpc: bump and add new dependencies (branch yem/libtirpc)

PATCH Superseded Yann E. MORIN 3 participants 7 messages Jun 14, 2015 – Jul 8, 2015

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

v2 cover package/libtirpc: bump and add new dependencies (branch yem/libtirpc)

Hello All!

This sseries bumps libtirpc to the latest release.

Besides, libtirpc does not build on musl, because musl is lacking two headers:
- sys/cdefs.h on ARM,
- sys/queue.h on all architectures.

So, libtirpc is disabled on musl. That dependency is propagated to all packages that depend on libtirpc.

Changes v1 -> v2:
- add dependency patch

Regards,
Yann E. MORIN.

The following changes since commit d6d237c8c2313829b6f7b4f06d55a5a4c89a870b:

uclibc: remove Xtensa specific version (2015-06-14 14:51:06 +0200)

are available in the git repository at:

git://git.busybox.net/~ymorin/git/buildroot yem/libtirpc

for you to fetch changes up to a13a154a08aa3fd09400a2b1ae3571544a86f3db:

package/libtirpc: does not build with musl libc (2015-06-14 16:21:57 +0200)

----------------------------------------------------------------
Yann E. MORIN (2):
package/libtirpc: bump version package/libtirpc: does not build with musl libc

 package/argus/Config.in                            |  5 +-
 package/conntrack-tools/Config.in                  |  5 +-
 ...able-parts-of-TIRPC-requiring-NIS-support.patch | 66 ++++------------------
 ...out-RPC-support-does-not-install-rpcent.h.patch | 18 +++---
 ...dd-rpcgen-program-from-nfs-utils-sources.patch} | 19 ++++---
 ...y-generate-XDR-header-files-from-.x-sour.patch} | 53 ++++++++---------
 ...-files-needed-to-build-rpcbind-on-top-of.patch} | 27 +++++----
 ...g-config-needs-pthread-as-private-library.patch | 36 ------------
 package/libtirpc/Config.in                         |  5 +-
 package/libtirpc/libtirpc.hash                     |  4 +-
 package/libtirpc/libtirpc.mk                       |  2 +-
 package/lmbench/Config.in                          |  6 +-
 package/nfs-utils/Config.in                        |  6 +-
 package/quota/Config.in                            |  6 +-
 package/rpcbind/Config.in                          |  5 +-
 15 files changed, 101 insertions(+), 162 deletions(-)
 rename package/libtirpc/{0004-Add-rpcgen-program-from-nfs-utils-sources.patch => 0003-Add-rpcgen-program-from-nfs-utils-sources.patch} (99%)
 rename package/libtirpc/{0005-Automatically-generate-XDR-header-files-from-.x-sour.patch => 0004-Automatically-generate-XDR-header-files-from-.x-sour.patch} (97%)
 rename package/libtirpc/{0006-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch => 0005-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch} (98%)
 delete mode 100644 package/libtirpc/0007-pkg-config-needs-pthread-as-private-library.patch
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#1 lore raw

PATCH v2 1/2 package/libtirpc: bump version

Bump to version 0.3.1:
- update our patches
- rename patches for proper numbering
- drop patch 0007, applied upstream

Cc Thomas Petazzoni <[email protected]>
Cc Baruch Siach <[email protected]>

---
Changes v1 -> v2:
- fix title (Baruch)

---
Notes:
libtirpc does not build with musl. This is not a regression compared to the previous version, which did already fail. Thus, no new dependency has been added to libtirpc in this patch. A separate will be coming, which adds such additional dependencies (that need to be propagated to a few packages...).

---
 ...able-parts-of-TIRPC-requiring-NIS-support.patch | 66 ++++------------------
 ...out-RPC-support-does-not-install-rpcent.h.patch | 18 +++---
 ...dd-rpcgen-program-from-nfs-utils-sources.patch} | 19 ++++---
 ...y-generate-XDR-header-files-from-.x-sour.patch} | 53 ++++++++---------
 ...-files-needed-to-build-rpcbind-on-top-of.patch} | 27 +++++----
 ...g-config-needs-pthread-as-private-library.patch | 36 ------------
 package/libtirpc/libtirpc.hash                     |  4 +-
 package/libtirpc/libtirpc.mk                       |  2 +-
 8 files changed, 77 insertions(+), 148 deletions(-)
 rename package/libtirpc/{0004-Add-rpcgen-program-from-nfs-utils-sources.patch => 0003-Add-rpcgen-program-from-nfs-utils-sources.patch} (99%)
 rename package/libtirpc/{0005-Automatically-generate-XDR-header-files-from-.x-sour.patch => 0004-Automatically-generate-XDR-header-files-from-.x-sour.patch} (97%)
 rename package/libtirpc/{0006-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch => 0005-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch} (98%)
 delete mode 100644 package/libtirpc/0007-pkg-config-needs-pthread-as-private-library.patch
package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch +12 -54
index 9bcca8a..78d363b 100644
@@ -1,70 +1,28 @@
-From 4285205401faeb12b4ed7ebbc4658af9eae73eb4 Mon Sep 17 00:00:00 2001
+From 609d0faa80afb1e391397c1029b67516281d6600 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 Date: Sat, 23 Jun 2012 21:57:39 +0200
-Subject: [PATCH] Disable parts of TIRPC requiring NIS support
+Subject: [PATCH 1/5] Disable parts of TIRPC requiring NIS support
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
+[yann.morin.1998 at free.fr: update for 0.3.1]
+Signed-off-by: "Yann E. MORIN" <[email protected]>
 ---
- src/Makefile.am  | 3 +--
- src/rpc_soc.c    | 2 ++
- tirpc/rpc/auth.h | 3 +++
- 3 files changed, 6 insertions(+), 2 deletions(-)
+ src/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/src/Makefile.am b/src/Makefile.am
-index 3029b78..b5db263 100644
+index 75bd4bf..7428e92 100644
 --- a/src/Makefile.am
 +++ b/src/Makefile.am
-@@ -50,8 +50,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln
-         pmap_prot.c pmap_prot2.c pmap_rmt.c rpc_prot.c rpc_commondata.c \
+@@ -52,7 +52,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
-+        svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c
+         svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \
+-        auth_time.c debug.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
-diff --git a/src/rpc_soc.c b/src/rpc_soc.c
-index 4213ca0..2603548 100644
---- a/src/rpc_soc.c
-+++ b/src/rpc_soc.c
-@@ -520,6 +520,7 @@ clnt_broadcast(prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult)
- 	    (resultproc_t) rpc_wrap_bcast, "udp");
- }
- 
-+#if 0
- /*
-  * Create the client des authentication object. Obsoleted by
-  * authdes_seccreate().
-@@ -551,6 +552,7 @@ fallback:
- 	dummy = authdes_seccreate(servername, window, NULL, ckey);
- 	return (dummy);
- }
-+#endif
- 
- /*
-  * Create a client handle for a unix connection. Obsoleted by clnt_vc_create()
-diff --git a/tirpc/rpc/auth.h b/tirpc/rpc/auth.h
-index 4ce11f0..b894e44 100644
---- a/tirpc/rpc/auth.h
-+++ b/tirpc/rpc/auth.h
-@@ -305,6 +305,8 @@ extern AUTH *authunix_create(char *, uid_t, uid_t, int, uid_t *);
- extern AUTH *authunix_create_default(void);	/* takes no parameters */
- extern AUTH *authnone_create(void);		/* takes no parameters */
- __END_DECLS
-+
-+#if 0
- /*
-  * DES style authentication
-  * AUTH *authsecdes_create(servername, window, timehost, ckey)
-@@ -318,6 +320,7 @@ extern AUTH *authdes_create (char *, u_int, struct sockaddr *, des_block *);
- extern AUTH *authdes_seccreate (const char *, const u_int, const  char *,
-     const  des_block *);
- __END_DECLS
-+#endif
- 
- __BEGIN_DECLS
- extern bool_t xdr_opaque_auth		(XDR *, struct opaque_auth *);
 -- 
-2.0.0
+1.9.1
 
package/libtirpc/0002-uClibc-without-RPC-support-does-not-install-rpcent.h.patch +10 -8
index 6ec5d8e..a1df333 100644
@@ -1,23 +1,25 @@
-From a20f33ad121fb1e9d1fbc31a0044546450677e7a Mon Sep 17 00:00:00 2001
+From d5a47f89f5bad1ed7292b4ca8dbb7ffb6cb43d22 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 Date: Sat, 23 Jun 2012 21:58:07 +0200
-Subject: [PATCH] uClibc without RPC support does not install rpcent.h
+Subject: [PATCH 2/5] uClibc without RPC support does not install rpcent.h
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
+[yann.morin.1998 at free.fr: update for 0.3.1]
+Signed-off-by: "Yann E. MORIN" <[email protected]>
 ---
  tirpc/rpc/rpcent.h | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/tirpc/rpc/rpcent.h b/tirpc/rpc/rpcent.h
-index c865e51..45775ed 100644
+index 147f909..39ab41c 100644
 --- a/tirpc/rpc/rpcent.h
 +++ b/tirpc/rpc/rpcent.h
-@@ -46,8 +46,9 @@
- 
- __BEGIN_DECLS
+@@ -48,8 +48,9 @@
+ extern "C" {
+ #endif
  
 -/* These are defined in /usr/include/rpc/netdb.h */
--#if 0
+-#if !defined(__GLIBC__)
 +/* These are defined in /usr/include/rpc/netdb.h, unless we are using
 +   the C library without RPC support. */
 +#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_RPC__)
@@ -25,5 +27,5 @@ index c865e51..45775ed 100644
  	char	*r_name;	/* name of server for this rpc program */
  	char	**r_aliases;	/* alias list */
 -- 
-2.0.0
+1.9.1
 
package/libtirpc/0003-Add-rpcgen-program-from-nfs-utils-sources.patch renamed from package/libtirpc/0004-Add-rpcgen-program-from-nfs-utils-sources.patch +11 -8
similarity index 99%
rename from package/libtirpc/0004-Add-rpcgen-program-from-nfs-utils-sources.patch
rename to package/libtirpc/0003-Add-rpcgen-program-from-nfs-utils-sources.patch
index 195803c..388e036 100644
@@ -1,9 +1,11 @@
-From c4c4550dafabda05d78ca4aa9969db8a4f70affe Mon Sep 17 00:00:00 2001
+From 8c8e5ccc7529963ab05c83948d8abe952792bf3f Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 Date: Sat, 10 Nov 2012 16:21:01 +0100
-Subject: [PATCH] Add rpcgen program from nfs-utils sources
+Subject: [PATCH 3/5] Add rpcgen program from nfs-utils sources
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
+[yann.morin.1998 at free.fr: update for 0.3.1]
+Signed-off-by: "Yann E. MORIN" <[email protected]>
 ---
  Makefile.am          |    2 +-
  configure.ac         |   14 +-
@@ -42,7 +44,7 @@ Signed-off-by: Thomas Petazzoni <[email protected]>
  create mode 100644 rpcgen/rpcgen.1
 
 diff --git a/Makefile.am b/Makefile.am
-index 9b812eb..6edf029 100644
+index 2bf725c..330ebf9 100644
 --- a/Makefile.am
 +++ b/Makefile.am
 @@ -1,4 +1,4 @@
@@ -52,12 +54,12 @@ index 9b812eb..6edf029 100644
  
  noinst_HEADERS	       = tirpc/reentrant.h \
 diff --git a/configure.ac b/configure.ac
-index 11df020..4110225 100644
+index 711b054..225f1c7 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -34,5 +34,17 @@ AC_CHECK_LIB([pthread], [pthread_create])
- AC_CHECK_LIB([nsl], [yp_get_default_domain])
- 
+@@ -49,6 +49,18 @@ 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_FUNCS([getrpcbyname getrpcbynumber setrpcent endrpcent getrpcent])
  
 -AC_CONFIG_FILES([Makefile src/Makefile man/Makefile doc/Makefile])
 +AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
@@ -74,6 +76,7 @@ index 11df020..4110225 100644
 +AC_CONFIG_FILES([Makefile src/Makefile man/Makefile doc/Makefile rpcgen/Makefile])
 +
  AC_OUTPUT(libtirpc.pc)
+ 
 diff --git a/rpcgen/Makefile.am b/rpcgen/Makefile.am
 new file mode 100644
 index 0000000..2277b6f
@@ -6501,5 +6504,5 @@ index 0000000..89df7ed
 +.%T The rpcgen chapter in the NETP manual
 +.Re
 -- 
-2.0.0
+1.9.1
 
package/libtirpc/0004-Automatically-generate-XDR-header-files-from-.x-sour.patch renamed from package/libtirpc/0005-Automatically-generate-XDR-header-files-from-.x-sour.patch +25 -28

105 lines not on this page · raw message

package/libtirpc/0005-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch renamed from package/libtirpc/0006-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch +15 -12
similarity index 98%
rename from package/libtirpc/0006-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch
rename to package/libtirpc/0005-Add-more-XDR-files-needed-to-build-rpcbind-on-top-of.patch
index 638918b..d4627fa 100644
@@ -1,9 +1,12 @@
-From 008a9c8ac3a84ffcc46a0eedb5b13862b279190c Mon Sep 17 00:00:00 2001
+From 44dca872476b2dc1de097974d3916765296e434b Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <[email protected]>
 Date: Sat, 10 Nov 2012 17:45:03 +0100
-Subject: [PATCH] Add more XDR files needed to build rpcbind on top of libtirpc
+Subject: [PATCH 5/5] Add more XDR files needed to build rpcbind on top of
+ libtirpc
 
 Signed-off-by: Thomas Petazzoni <[email protected]>
+[yann.morin.1998 at free.fr: update for 0.3.1]
+Signed-off-by: "Yann E. MORIN" <[email protected]>
 ---
  Makefile.am             |    6 +
  tirpc/rpcsvc/mount.x    |  257 ++++++++++
@@ -15,20 +18,20 @@ Signed-off-by: Thomas Petazzoni <[email protected]>
  create mode 100644 tirpc/rpcsvc/rquota.x
 
 diff --git a/Makefile.am b/Makefile.am
-index 4e4dc32..b7ae979 100644
+index ee5578d..6803682 100644
 --- a/Makefile.am
 +++ b/Makefile.am
-@@ -3,6 +3,9 @@ ACLOCAL_AMFLAGS = -I m4
+@@ -2,6 +2,9 @@ SUBDIRS = src man doc rpcgen
+ ACLOCAL_AMFLAGS = -I m4
  
- GENFILES = \
- 			tirpc/rpcsvc/crypt.h \
-+			tirpc/rpcsvc/mount.h \
-+			tirpc/rpcsvc/nfs_prot.h \
-+			tirpc/rpcsvc/rquota.h \
- 			tirpc/rpc/rpcb_prot.h
+ GENFILES	       = tirpc/rpcsvc/crypt.h \
++			 tirpc/rpcsvc/mount.h \
++			 tirpc/rpcsvc/nfs_prot.h \
++			 tirpc/rpcsvc/rquota.h \
+ 			 tirpc/rpc/rpcb_prot.h
  
  noinst_HEADERS	       = tirpc/reentrant.h \
-@@ -12,6 +15,9 @@ noinst_HEADERS	       = tirpc/reentrant.h \
+@@ -11,6 +14,9 @@ noinst_HEADERS	       = tirpc/reentrant.h \
  
  nobase_include_HEADERS = tirpc/netconfig.h \
  			 tirpc/rpcsvc/crypt.x \
@@ -1647,5 +1650,5 @@ index 0000000..72864d1
 +	} = 1;
 +} = 100011;
 -- 
-2.0.0
+1.9.1
 
package/libtirpc/0007-pkg-config-needs-pthread-as-private-library.patch deleted +0 -36
deleted file mode 100644
index f83b9e2..0000000
@@ -1,36 +0,0 @@
-From 308705710d40ced3ea2a913d24ab99cc61bef01f Mon Sep 17 00:00:00 2001
-From: "Yann E. MORIN" <[email protected]>
-Date: Sun, 5 Apr 2015 18:11:25 +0200
-Subject: [PATCH] pkg-config: needs pthread as private library
-
-libtirpc needs pthreads. This is automatically pulled in when linking
-with the shared library, thanks to the DT_NEEDED ELF tags.
-
-But for a static library, there is no such mechanism to identify
-required libraries.
-
-Thus, add -pthread to the private libraries in the pkg-config file.
-
-Signed-off-by: "Yann E. MORIN" <[email protected]>
----
-Patch sent upstream:
-    http://sourceforge.net/p/libtirpc/mailman/message/33072076/
-
-Signed-off-by: Thomas Petazzoni <[email protected]>
----
- libtirpc.pc.in | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/libtirpc.pc.in b/libtirpc.pc.in
-index ec4cf75..1dc85ea 100644
---- a/libtirpc.pc.in
-+++ b/libtirpc.pc.in
-@@ -8,4 +8,5 @@ Description: Transport Independent RPC Library
- Requires:
- Version: @PACKAGE_VERSION@
- Libs: -L at libdir@ -ltirpc
-+Libs.private: -pthread
- Cflags: -I at includedir@/tirpc
--- 
-2.1.0
-
package/libtirpc/libtirpc.hash +3 -1
index 34fb0af..0a1cc98 100644
@@ -1,2 +1,4 @@
+# From sourceforge's info on download page:
+sha1   0e0ef9123cf28cd0940148fabd23952476a8fcd6  libtirpc-0.3.1.tar.bz2
 # Locally computed
-sha256 45c3e21dfc23a5ba501f9dfc6671678316fdfdb8355a1ec404ae2aa2f81943a1  libtirpc-0.2.4.tar.bz2
+sha256 a8838fe180deb8a6f6e491ee665325a28dee4100ec6b1f0b86d611dbfe3a2bb8  libtirpc-0.3.1.tar.bz2
package/libtirpc/libtirpc.mk +1 -1
index 5ad427b..f1ad395 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-LIBTIRPC_VERSION = 0.2.4
+LIBTIRPC_VERSION = 0.3.1
 LIBTIRPC_SOURCE = libtirpc-$(LIBTIRPC_VERSION).tar.bz2
 LIBTIRPC_SITE = http://downloads.sourceforge.net/project/libtirpc/libtirpc/$(LIBTIRPC_VERSION)
 LIBTIRPC_LICENSE = BSD-3c
Signature · 1 line
1.9.1
#2 lore raw

PATCH v2 1/2 package/libtirpc: bump version

Dear Yann E. MORIN,

Quoted 4 lines · Yann E. MORIN

Bump to version 0.3.1:
- update our patches
- rename patches for proper numbering
- drop patch 0007, applied upstream

It looks all good, but...

package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch line 4

Quoted 2 lines
package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch +1 -1
-Subject: [PATCH] Disable parts of TIRPC requiring NIS support
+Subject: [PATCH 1/5] Disable parts of TIRPC requiring NIS support

could you use "git format-patch -N" to avoid the numbering inside the patches themselves? It generally quickly gets wrong when we add more patches, and is a bit unnecessary due to the numbering already being present through the file names.

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#3 lore raw

PATCH v2 2/2 package/libtirpc: does not build with musl libc

In reply to Yann E. MORIN

Previously-packaged libtirpc version, 0.2.4, did not build with musl on ARM (see build failures, below) because of missing header sys/cdefs.h

Newly-packaged version, 0.3.1, does not build on musl, on ARM for the same reason as 0.2.4, and on whatever the architecture (ARM included) because of the extra-missing header sys/queue.h .

Fixes:

    http://autobuild.buildroot.org/results/331/331c84b322c6a0205c15f9c5237047f0e2a63ef8/
    http://autobuild.buildroot.org/results/d30/d30993a7cfb4874159eab83c73e360d518471bf2/
    ...
Cc Thomas Petazzoni <[email protected]>
---
 package/argus/Config.in           | 5 +++--
 package/conntrack-tools/Config.in | 5 +++--
 package/libtirpc/Config.in        | 5 +++--
 package/lmbench/Config.in         | 6 ++++--
 package/nfs-utils/Config.in       | 6 ++++--
 package/quota/Config.in           | 6 ++++--
 package/rpcbind/Config.in         | 5 +++--
 7 files changed, 24 insertions(+), 14 deletions(-)
package/argus/Config.in +3 -2
index 7a7d2b6..ebcbce0 100644
@@ -2,6 +2,7 @@ config BR2_PACKAGE_ARGUS
 	bool "argus"
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_USE_MMU # fork()
+	depends on !BR2_TOOLCHAIN_USES_MUSL # libtirpc
 	select BR2_PACKAGE_LIBPCAP
 	select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
 	help
@@ -9,6 +10,6 @@ config BR2_PACKAGE_ARGUS
 
 	  http://qosient.com/argus/
 
-comment "argus needs a toolchain w/ threads"
-	depends on !BR2_TOOLCHAIN_HAS_THREADS
+comment "argus needs a uClibc or (e)glibc toolchain w/ threads"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
 	depends on BR2_USE_MMU
package/conntrack-tools/Config.in +3 -2
index 87bf2d0..cbfbddf 100644
@@ -2,6 +2,7 @@ config BR2_PACKAGE_CONNTRACK_TOOLS
 	bool "conntrack-tools"
 	depends on BR2_USE_MMU # fork()
 	depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS # libtirpc
+	depends on !BR2_TOOLCHAIN_USES_MUSL # libtirpc
 	depends on !BR2_STATIC_LIBS # dlopen()
 	select BR2_PACKAGE_LIBNETFILTER_CONNTRACK
 	select BR2_PACKAGE_LIBNETFILTER_CTHELPER
@@ -16,7 +17,7 @@ config BR2_PACKAGE_CONNTRACK_TOOLS
 
 	  http://www.netfilter.org/projects/conntrack-tools/
 
-comment "conntrack-tools needs a toolchain w/ threads, dynamic library"
+comment "conntrack-tools needs a uClibc or (e)glibc toolchain w/ threads, dynamic library"
 	depends on BR2_USE_MMU
 	depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) || \
-		BR2_STATIC_LIBS
+		BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
package/libtirpc/Config.in +3 -2
index a8e6dd3..e5abd68 100644
@@ -7,12 +7,13 @@ config BR2_PACKAGE_LIBTIRPC
 	# used instead of libtirpc.
 	depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2
 	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_TOOLCHAIN_USES_MUSL
 	help
 	  Libtirpc is a port of Sun's Transport-Independent RPC
 	  library to Linux.
 
 	  http://sourceforge.net/projects/libtirpc/
 
-comment "libtirpc needs a toolchain w/ threads"
+comment "libtirpc needs a uClibc or (e)glibc toolchain w/ threads"
 	depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2
-	depends on !BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
package/lmbench/Config.in +4 -2
index c4ea522..7cc9d73 100644
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_LMBENCH
 	bool "lmbench"
 	depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS # libtirpc
+	depends on !BR2_TOOLCHAIN_USES_MUSL # libtirpc
 	select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
 	depends on BR2_USE_MMU # fork()
 	help
@@ -9,6 +10,7 @@ config BR2_PACKAGE_LMBENCH
 
 	  http://sourceforge.net/projects/lmbench/
 
-comment "lmbench needs a toolchain w/ threads"
+comment "lmbench needs a uClibc or (e)glibc toolchain w/ threads"
 	depends on BR2_USE_MMU
-	depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC)
+	depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) \
+		|| BR2_TOOLCHAIN_USES_MUSL
package/nfs-utils/Config.in +4 -2
index 66f9c21..e5ed3b5 100644
@@ -1,10 +1,12 @@
-comment "nfs-utils needs a toolchain w/ threads"
+comment "nfs-utils needs a uClibc or (e)glibc toolchain w/ threads"
 	depends on BR2_USE_MMU
-	depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC)
+	depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) \
+		|| BR2_TOOLCHAIN_USES_MUSL
 
 config BR2_PACKAGE_NFS_UTILS
 	bool "nfs-utils"
 	depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS # libtirpc
+	depends on !BR2_TOOLCHAIN_USES_MUSL # libtirpc
 	select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
 	depends on BR2_USE_MMU # fork()
 	help
package/quota/Config.in +4 -2
index c8ab0d7..a1e9155 100644
@@ -3,6 +3,7 @@ config BR2_PACKAGE_QUOTA
 	depends on BR2_USE_WCHAR
 	depends on BR2_USE_MMU # fork()
 	depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS # libtirpc
+	depends on !BR2_TOOLCHAIN_USES_MUSL # libtirpc
 	select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
 	select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
 	help
@@ -10,7 +11,8 @@ config BR2_PACKAGE_QUOTA
 
 	  http://sourceforge.net/projects/linuxquota/
 
-comment "quota needs a toolchain w/ wchar, threads"
+comment "quota needs a uClibc or (e)glibc toolchain w/ wchar, threads"
 	depends on BR2_USE_MMU
 	depends on !BR2_USE_WCHAR || \
-		!(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC)
+		!(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) || \
+		BR2_TOOLCHAIN_USES_MUSL
package/rpcbind/Config.in +3 -2
index 2a79bdc..a385020 100644
@@ -3,6 +3,7 @@ config BR2_PACKAGE_RPCBIND
 	# We really need libtirpc and can't work with the native RPC
 	# implementation of toolchains.
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc
+	depends on !BR2_TOOLCHAIN_USES_MUSL # libtirpc
 	select BR2_PACKAGE_LIBTIRPC
 	# uClibc toolchains provided by ADI don't have AI_ADDRCONFIG
 	# support, needed for libtirpc
@@ -13,7 +14,7 @@ config BR2_PACKAGE_RPCBIND
 	  The rpcbind utility is a server that converts RPC program numbers
 	  into universal addresses.
 
-comment "rpcbind needs a toolchain w/ threads"
+comment "rpcbind needs a uClibc or (e)glibc toolchain w/ threads"
 	depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2
-	depends on !BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
 	depends on BR2_USE_MMU
Signature · 1 line
1.9.1
#4 lore raw

PATCH v2 2/2 package/libtirpc: does not build with musl libc

Dear Yann E. MORIN,

Quoted 6 lines · Yann E. MORIN

Previously-packaged libtirpc version, 0.2.4, did not build with musl on ARM (see build failures, below) because of missing header sys/cdefs.h

Newly-packaged version, 0.3.1, does not build on musl, on ARM for the same reason as 0.2.4, and on whatever the architecture (ARM included) because of the extra-missing header sys/queue.h .

At
http://git.free-electrons.com/users/thomas-petazzoni/buildroot/log/?h=libtirpc-musl-fix,
I have a patch that makes libtirpc 0.2.4 build fine with musl. Unfortunately, it breaks glibc build :)

I think the patch set can be simplified on top of libtirpc 0.3.1, because:

* the cdefs.h issue is fixed upstream already:
http://git.linux-nfs.org/?p=cel/libtirpc.git;a=commit;h=7228a9482b92ff0305f7e7ccd0276c638bee1884

* the IPPORT_RESERVED issue is also fixed upstream:
http://git.linux-nfs.org/?p=cel/libtirpc.git;a=commit;h=4d3263ca3b64de8acdcaf71d36bfb0eda06b8710

So maybe that leaves only the sys/queue.h issue, for which my patch contains a proposal.

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#5 lore raw

PATCH v2 2/2 package/libtirpc: does not build with musl libc

Dear Thomas, Yann,

Quoted 28 lines · Thomas Petazzoni

Dear Yann E. MORIN,

Quoted 10 lines · Yann E. MORIN

Previously-packaged libtirpc version, 0.2.4, did not build with musl on
ARM (see build failures, below) because of missing header sys/cdefs.h

Newly-packaged version, 0.3.1, does not build on musl, on ARM for the
same reason as 0.2.4, and on whatever the architecture (ARM included)
because of the extra-missing header sys/queue.h .

At
http://git.free-electrons.com/users/thomas
-petazzoni/buildroot/log/?h=libtirpc-musl-fix,
I have a patch that makes libtirpc 0.2.4 build fine with musl. Unfortunately, it breaks glibc build :)

I think the patch set can be simplified on top of libtirpc 0.3.1, because:

* the cdefs.h issue is fixed upstream already:
http://git.linux
-nfs.org/?p=cel/libtirpc.git;a=commit;h=7228a9482b92ff0305f7e7ccd0276 c638bee1884

Quoted 8 lines

* the IPPORT_RESERVED issue is also fixed upstream:
http://git.linux
-nfs.org/?p=cel/libtirpc.git;a=commit;h=4d3263ca3b64de8acdcaf71d36bfb 0eda06b8710

So maybe that leaves only the sys/queue.h issue, for which my patch contains a proposal.

I submitted a patchset for libtirpc 0.2.4 too:
http://patchwork.ozlabs.org/patch/468161/

I tested this patchset with eglibc and uClibc.

Note there is also another patch for libtirpc in the queue:
http://patchwork.ozlabs.org/patch/468160/

Best regards
J?rg Krause

#6 lore raw

PATCH v2 2/2 package/libtirpc: does not build with musl libc

Dear J?rg Krause,

Quoted 4 lines · J?rg Krause

I submitted a patchset for libtirpc 0.2.4 too:
http://patchwork.ozlabs.org/patch/468161/

I tested this patchset with eglibc and uClibc.

But libtirpc has been bumped to 0.3.1 in the mean time. I'll mark your patch as Changes Requested. Can you respin it on top of 0.3.1 ? Less patches should be needed, because several libtirpc/musl build issues have been fixed upstream. Thanks!

Quoted 2 lines

Note there is also another patch for libtirpc in the queue:
http://patchwork.ozlabs.org/patch/468160/

I'll merge.

Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com