libtirpc: prevent selection when ADI Blackfin external toolchains are used
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 28 May 2013 09:45:35 +0000 (09:45 +0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Wed, 29 May 2013 19:22:12 +0000 (21:22 +0200)
libtirpc fails to build with the Blackfin external toolchains provided
by Analog Devices, because their uClibc configuration doesn't include
AI_ADDRCONFIG. In order to prevent such build failures to happen, we
simply prevent libtirpc from being selected when such toolchains are
used. This is not a big problem, since they provide native RPC
support.

Also, since they provide native RPC, we don't have to propagate this
new dependency to the reverse dependencies of libtirpc, because they
all use native RPC when available. The exception to this rule is the
rpcbind package, which can only use the libtirpc implementation of
RPCs, and not the native one of C libraries. Therefore, the dependency
is propagated to the rpcbind package.

Fixes:

  http://autobuild.buildroot.org/results/58b/58b16449065c16afce11ba120db56839efb2b1ea/build-end.log

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
package/libtirpc/Config.in
package/rpcbind/Config.in

index 7e891b494f388dab492547da6bcfd6b0c2612164..b9db5aa4c16986a5b307f083828a56c3aeb921df 100644 (file)
@@ -1,5 +1,12 @@
 config BR2_PACKAGE_LIBTIRPC
        bool "libtirpc"
+       # uClibc toolchains provided by ADI don't have AI_ADDRCONFIG
+       # support. Note that since they provide native RPC support, we
+       # don't need to propagate this dependency to reverse
+       # dependencies of libtirpc for which native RPC support can be
+       # used instead of libtirpc.
+       depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 && \
+               !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R1
        help
          Libtirpc is a port of Sun's Transport-Independent RPC
          library to Linux.
index 1bdcd9ed4f21cfb1d11943dba3b8ba1b8d509699..cbe53af3a2417380987c4478c72a906f567a6873 100644 (file)
@@ -3,6 +3,10 @@ config BR2_PACKAGE_RPCBIND
        # We really need libtirpc and can't work with the native RPC
        # implementation of toolchains.
        select BR2_PACKAGE_LIBTIRPC
+       # uClibc toolchains provided by ADI don't have AI_ADDRCONFIG
+       # support, needed for libtirpc
+       depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 && \
+               !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R1
        help
          The rpcbind utility is a server that converts RPC program numbers
          into universal addresses.