1################################################################################ 2# 3# ltp-testsuite 4# 5################################################################################ 6 7LTP_TESTSUITE_VERSION = 20210927 8LTP_TESTSUITE_SOURCE = ltp-full-$(LTP_TESTSUITE_VERSION).tar.xz 9LTP_TESTSUITE_SITE = https://github.com/linux-test-project/ltp/releases/download/$(LTP_TESTSUITE_VERSION) 10 11LTP_TESTSUITE_LICENSE = GPL-2.0, GPL-2.0+ 12LTP_TESTSUITE_LICENSE_FILES = COPYING 13 14LTP_TESTSUITE_CONF_OPTS += --disable-metadata 15 16ifeq ($(BR2_PACKAGE_LTP_TESTSUITE_OPEN_POSIX),y) 17LTP_TESTSUITE_CONF_OPTS += --with-open-posix-testsuite 18endif 19 20ifeq ($(BR2_PACKAGE_LTP_TESTSUITE_REALTIME),y) 21LTP_TESTSUITE_CONF_OPTS += --with-realtime-testsuite 22endif 23 24ifeq ($(BR2_LINUX_KERNEL),y) 25LTP_TESTSUITE_DEPENDENCIES += linux 26LTP_TESTSUITE_MAKE_ENV += $(LINUX_MAKE_FLAGS) 27LTP_TESTSUITE_CONF_OPTS += --with-linux-dir=$(LINUX_DIR) 28else 29LTP_TESTSUITE_CONF_OPTS += --without-modules 30endif 31 32# We change the prefix to a custom one, otherwise we get scripts and 33# directories directly in /usr, such as /usr/runalltests.sh 34LTP_TESTSUITE_CONF_OPTS += --prefix=/usr/lib/ltp-testsuite 35 36# Needs libcap with file attrs which needs attr, so both required 37ifeq ($(BR2_PACKAGE_LIBCAP)$(BR2_PACKAGE_ATTR),yy) 38LTP_TESTSUITE_DEPENDENCIES += libcap 39else 40LTP_TESTSUITE_CONF_ENV += ac_cv_lib_cap_cap_compare=no 41endif 42 43# No explicit enable/disable options 44ifeq ($(BR2_PACKAGE_NUMACTL),y) 45LTP_TESTSUITE_DEPENDENCIES += numactl 46else 47LTP_TESTSUITE_CONF_ENV += have_numa_headers=no 48endif 49 50# ltp-testsuite uses <fts.h>, which isn't compatible with largefile 51# support. 52LTP_TESTSUITE_CFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS)) 53LTP_TESTSUITE_CPPFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS)) 54LTP_TESTSUITE_LIBS = 55 56ifeq ($(BR2_PACKAGE_LIBTIRPC),y) 57LTP_TESTSUITE_DEPENDENCIES += libtirpc host-pkgconf 58LTP_TESTSUITE_CFLAGS += "`$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc`" 59LTP_TESTSUITE_LIBS += "`$(PKG_CONFIG_HOST_BINARY) --libs libtirpc`" 60endif 61 62ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),) 63LTP_TESTSUITE_DEPENDENCIES += musl-fts 64LTP_TESTSUITE_LIBS += -lfts 65endif 66 67LTP_TESTSUITE_CONF_ENV += \ 68 CFLAGS="$(LTP_TESTSUITE_CFLAGS)" \ 69 CPPFLAGS="$(LTP_TESTSUITE_CPPFLAGS)" \ 70 LIBS="$(LTP_TESTSUITE_LIBS)" \ 71 SYSROOT="$(STAGING_DIR)" 72 73# uclibc: bessel support normally not enabled 74LTP_TESTSUITE_UNSUPPORTED_TEST_CASES_$(BR2_TOOLCHAIN_USES_UCLIBC) += \ 75 testcases/misc/math/float/bessel/ \ 76 testcases/misc/math/float/float_bessel.c 77 78LTP_TESTSUITE_UNSUPPORTED_TEST_CASES_$(BR2_TOOLCHAIN_USES_MUSL) += \ 79 testcases/kernel/syscalls/confstr/confstr01.c \ 80 testcases/kernel/syscalls/fmtmsg/fmtmsg01.c \ 81 testcases/kernel/syscalls/getcontext/getcontext01.c \ 82 testcases/kernel/syscalls/rt_tgsigqueueinfo/rt_tgsigqueueinfo01.c \ 83 testcases/kernel/syscalls/timer_create/timer_create01.c \ 84 testcases/kernel/syscalls/timer_create/timer_create03.c 85 86# ldd command build system tries to build a shared library unconditionally. 87LTP_TESTSUITE_UNSUPPORTED_TEST_CASES_$(BR2_STATIC_LIBS) += \ 88 testcases/commands/ldd 89 90define LTP_TESTSUITE_REMOVE_UNSUPPORTED_TESTCASES 91 $(foreach f,$(LTP_TESTSUITE_UNSUPPORTED_TEST_CASES_y), 92 rm -rf $(@D)/$(f) 93 ) 94endef 95 96LTP_TESTSUITE_POST_PATCH_HOOKS += LTP_TESTSUITE_REMOVE_UNSUPPORTED_TESTCASES 97 98$(eval $(autotools-package)) 99