ltp-testsuite: support building with toolchains without native RPC
PATCH v2 1/1 ltp-testsuite: support building with toolchains without native RPC
From: Thomas De Schampheleire <[email protected]>
ltp-testsuite needs RPC, but this could also be provided by libtirpc.
The dependency of libtirpc on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 does not need to be propagated, because it is always satisfied: ltp-testsuite depends on BR2_USE_MMU which is always unset for Blackfin targets.
Since musl toolchains never have RPC support, this change would now allow building of ltp-testsuite on musl toolchains. Unfortunately, ltp-testsuite does not build yet with musl, so a specific check on musl is added. This is deemed more conceptually correct than checking on glibc||uclibc.
--- package/ltp-testsuite/Config.in | 7 ++++--- package/ltp-testsuite/ltp-testsuite.mk | 15 +++++++++++++-- 2 files changed, 17 insertions(+), 5 deletions(-)
v2:
- clarify dependency propagation for blackfin in commit msg (Yann)
- clarify intentional wording of non-musl.
- use pkg-config instead of fixed C/LDFLAGS (Yann)
package/ltp-testsuite/Config.in +4 -3
@@ -6,7 +6,8 @@ config BR2_PACKAGE_LTP_TESTSUITE bool "ltp-testsuite" depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + depends on !BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC # does not build, cachectl.h issue depends on !BR2_nios2 help
@@ -21,7 +22,7 @@ config BR2_PACKAGE_LTP_TESTSUITE http://ltp.sourceforge.net/ -comment "ltp-testsuite needs a toolchain w/ RPC, threads" +comment "ltp-testsuite needs a non-musl toolchain w/ threads" depends on !BR2_nios2 depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HAS_NATIVE_RPC + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
package/ltp-testsuite/ltp-testsuite.mk +13 -2
@@ -19,8 +19,19 @@ endif # ltp-testsuite uses <fts.h>, which isn't compatible with largefile # support. +LTP_TESTSUITE_CFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS)) +LTP_TESTSUITE_CPPFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS)) +LTP_TESTSUITE_LIBS = + +ifeq ($(BR2_PACKAGE_LIBTIRPC),y) +LTP_TESTSUITE_DEPENDENCIES += libtirpc host-pkgconf +LTP_TESTSUITE_CFLAGS += "`$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc`" +LTP_TESTSUITE_LIBS += "`$(PKG_CONFIG_HOST_BINARY) --libs libtirpc`" +endif + LTP_TESTSUITE_CONF_ENV += \ - CFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS))" \ - CPPFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS))" + CFLAGS="$(LTP_TESTSUITE_CFLAGS)" \ + CPPFLAGS="$(LTP_TESTSUITE_CPPFLAGS)" \ + LIBS="$(LTP_TESTSUITE_LIBS)" $(eval $(autotools-package))
Signature · 1 line
1.8.5.1
Thomas Petazzoni
AppliedPATCH v2 1/1 ltp-testsuite: support building with toolchains without native RPC
Dear Thomas De Schampheleire,
Quoted 14 lines · Thomas De Schampheleire
From: Thomas De Schampheleire <[email protected]>
ltp-testsuite needs RPC, but this could also be provided by libtirpc.
The dependency of libtirpc on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 does not need to be propagated, because it is always satisfied: ltp-testsuite depends on
BR2_USE_MMUwhich is always unset for Blackfin targets.Since musl toolchains never have RPC support, this change would now allow building of ltp-testsuite on musl toolchains. Unfortunately, ltp-testsuite does not build yet with musl, so a specific check on musl is added. This is deemed more conceptually correct than checking on glibc||uclibc.
Quoted 7 lines
Signed-off-by Thomas De Schampheleire <[email protected]>Cc "Yann E. Morin" <[email protected]>--- package/ltp-testsuite/Config.in | 7 ++++--- package/ltp-testsuite/ltp-testsuite.mk | 15 +++++++++++++-- 2 files changed, 17 insertions(+), 5 deletions(-)
Applied, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com