config BR2_PACKAGE_RT_TESTS
	bool "rt-tests"
	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # __sync_*_4 intrisics
	depends on BR2_TOOLCHAIN_HAS_ATOMIC # numactl
	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
	depends on BR2_USE_MMU # fork(), numactl
	depends on !BR2_STATIC_LIBS # dlopen
	depends on !BR2_TOOLCHAIN_USES_MUSL # cyclictest
	select BR2_PACKAGE_NUMACTL
	help
	  Set of utilities for testing the real-time behaviour of a
	  Linux system.

	  All tools are simple C programs with no dependencies, except
	  the hwlatdetect utility, which is a Python script and
	  therefore requires the Python interpreter. It will only be
	  installed if a Python interpreter has been selected in the
	  Buildroot configuration.

	  Note that this package requires a toolchain built with the
	  NPTL implementation of the pthread API (this is always the
	  case with glibc toolchains, but may not necessarily be the
	  case with uClibc toolchains, since the thread implementation
	  is configurable).

	  https://wiki.linuxfoundation.org/realtime/documentation/howto/tools/rt-tests

comment "rt-tests may not work on MIPS with an external uClibc toolchain"
	depends on BR2_PACKAGE_RT_TESTS
	depends on BR2_TOOLCHAIN_EXTERNAL_UCLIBC
	depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el

comment "rt-tests needs a uClibc or glibc toolchain w/ NPTL, headers >= 4.5, dynamic library"
	depends on BR2_TOOLCHAIN_HAS_SYNC_4
	depends on BR2_TOOLCHAIN_HAS_ATOMIC
	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
		|| BR2_TOOLCHAIN_USES_MUSL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
	depends on BR2_USE_MMU
