xref: /OK3568_Linux_fs/buildroot/package/kvm-unit-tests/Config.in (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyunconfig BR2_PACKAGE_KVM_UNIT_TESTS_ARCH_SUPPORTS
2*4882a593Smuzhiyun	bool
3*4882a593Smuzhiyun	# On ARM, it uses virtualization extensions
4*4882a593Smuzhiyun	default y if BR2_cortex_a7 || BR2_cortex_a12 || \
5*4882a593Smuzhiyun		BR2_cortex_a15 || BR2_cortex_a15_a7 || \
6*4882a593Smuzhiyun		BR2_cortex_a17 || BR2_cortex_a17_a7
7*4882a593Smuzhiyun	default y if BR2_i386 || BR2_x86_64
8*4882a593Smuzhiyun	default y if BR2_powerpc64 || BR2_powerpc64le
9*4882a593Smuzhiyun
10*4882a593Smuzhiyunconfig BR2_PACKAGE_KVM_UNIT_TESTS
11*4882a593Smuzhiyun	bool "kvm-unit-tests"
12*4882a593Smuzhiyun	depends on BR2_PACKAGE_KVM_UNIT_TESTS_ARCH_SUPPORTS
13*4882a593Smuzhiyun	# on i386 and x86-64, __builtin_reachable is used, so we need
14*4882a593Smuzhiyun	# gcc 4.5 at least. on i386, we use the target gcc, while on
15*4882a593Smuzhiyun	# x86-64 we use the host gcc (see .mk file for details)
16*4882a593Smuzhiyun	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || !BR2_i386
17*4882a593Smuzhiyun	depends on BR2_HOSTARCH = "x86_64" || !BR2_x86_64
18*4882a593Smuzhiyun	select BR2_HOSTARCH_NEEDS_IA32_COMPILER if BR2_x86_64=y
19*4882a593Smuzhiyun	help
20*4882a593Smuzhiyun	  kvm-unit-tests is a project as old as KVM. As its name
21*4882a593Smuzhiyun	  suggests, it's purpose is to provide unit tests for KVM. The
22*4882a593Smuzhiyun	  unit tests are tiny guest operating systems that generally
23*4882a593Smuzhiyun	  execute only tens of lines of C and assembler test code in
24*4882a593Smuzhiyun	  order to obtain its PASS/FAIL result. Unit tests provide KVM
25*4882a593Smuzhiyun	  and virt hardware functional testing by targeting the
26*4882a593Smuzhiyun	  features through minimal implementations of their use per
27*4882a593Smuzhiyun	  the hardware specification. The simplicity of unit tests
28*4882a593Smuzhiyun	  make them easy to verify they are correct, easy to maintain,
29*4882a593Smuzhiyun	  and easy to use in timing measurements. Unit tests are also
30*4882a593Smuzhiyun	  often used for quick and dirty bug reproducers. The
31*4882a593Smuzhiyun	  reproducers may then be kept as regression tests.  It's
32*4882a593Smuzhiyun	  strongly encouraged that patches implementing new KVM
33*4882a593Smuzhiyun	  features are submitted with accompanying unit tests.
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun	  http://www.linux-kvm.org/page/KVM-unit-tests
36*4882a593Smuzhiyun
37*4882a593Smuzhiyuncomment "kvm-unit-tests needs a toolchain w/ gcc >= 4.5"
38*4882a593Smuzhiyun	depends on BR2_i386
39*4882a593Smuzhiyun	depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
40