pv: fix build issue with some toolchains

While 'pv' uses autoconf, it does not use automake for its
makefiles. It uses $(LD) $(LDFLAGS) to achieve partial linking, but
using 'ld' directly doesn't work well with some toolchain
configuration, as the ld default emulation may not necessarily be the
correct one. By passing custom values for LD and LDFLAGS, we ensure
that 'gcc' is used to do these partial linking steps.

Fixes the following build failures (x86-64 and mips64) :

  http://autobuild.buildroot.org/results/9ac/9aca276a220ad1460e5b32bd042dd4c93649baf3/build-end.log
  http://autobuild.buildroot.org/results/910/91044c01dcc3c4150aa6e74f5964fff27b9dac79/build-end.log

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Thomas Petazzoni 2013-10-06 18:30:33 +02:00 committed by Peter Korsgaard
parent d57d4a8ede
commit 1980bf056e

View File

@ -9,6 +9,15 @@ PV_SOURCE = pv-$(PV_VERSION).tar.bz2
PV_SITE = http://www.ivarch.com/programs/sources
PV_LICENSE = Artistic-2.0
PV_LICENSE_FILES = doc/COPYING
PV_MAKE_OPT = LD=$(TARGET_LD) # otherwise 'ld' is used
# While 'pv' uses autoconf, it does not use automake for its
# makefiles. It uses $(LD) $(LDFLAGS) to achieve partial linking, but
# using 'ld' directly doesn't work well with some toolchain
# configuration, as the ld default emulation may not necessarily be
# the correct one. By passing the below values for LD and LDFLAGS, we
# ensure that 'gcc' is used to do these partial linking steps.
PV_MAKE_OPT = \
LD=$(TARGET_CC) \
LDFLAGS="-Wl,-r -nostdlib"
$(eval $(autotools-package))