noinst_PROGRAMS = \
	gem_alive \
	gem_stress \
	$(TESTS_progs) \
	$(TESTS_progs_M) \
	$(HANG) \
	$(TESTS_testsuite) \
	$(NULL)

NOUVEAU_TESTS_M = \
	prime_nv_api \
	prime_nv_pcopy \
	prime_nv_test \
	$(NULL)

TESTS_progs_M = \
	core_get_client_auth \
	drv_suspend \
	drv_hangman \
	gem_bad_reloc \
	gem_basic \
	gem_caching \
	gem_close_race \
	gem_concurrent_blit \
	gem_cs_tlb \
	gem_ctx_bad_exec \
	gem_ctx_exec \
	gem_dummy_reloc_loop \
	gem_evict_alignment \
	gem_evict_everything \
	gem_exec_bad_domains \
	gem_exec_faulting_reloc \
	gem_exec_nop \
	gem_exec_params \
	gem_exec_parse \
	gem_fenced_exec_thrash \
	gem_fence_thrash \
	gem_fence_upload \
	gem_flink \
	gem_flink_race \
	gem_linear_blits \
	gem_madvise \
	gem_mmap \
	gem_mmap_gtt \
	gem_mmap_wc \
	gem_partial_pwrite_pread \
	gem_persistent_relocs \
	gem_pipe_control_store_loop \
	gem_ppgtt \
	gem_pread \
	gem_pread_after_blit \
	gem_pwrite \
	gem_pwrite_pread \
	gem_readwrite \
	gem_reloc_overflow \
	gem_reloc_vs_gpu \
	gem_render_copy_redux \
	gem_reset_stats \
	gem_ringfill \
	gem_set_tiling_vs_blt \
	gem_storedw_batches_loop \
	gem_tiled_blits \
	gem_tiled_partial_pwrite_pread \
	gem_userptr_blits \
	gem_write_read_ring_switch \
	kms_addfb \
	kms_cursor_crc \
	kms_fbc_crc \
	kms_flip \
	kms_flip_event_leak \
	kms_flip_tiling \
	kms_mmio_vs_cs_flip \
	kms_pipe_crc_basic \
	kms_plane \
	kms_psr_sink_crc \
	kms_render \
	kms_rotation_crc \
	kms_setmode \
	kms_universal_plane \
	pm_lpsp \
	pm_rpm \
	pm_rps \
	pm_rc6_residency \
	prime_self_import \
	template \
	$(NULL)

TESTS_progs = \
	core_getclient \
	core_getstats \
	core_getversion \
	drm_import_export \
	drm_read \
	drm_vma_limiter \
	drm_vma_limiter_cached \
	drm_vma_limiter_cpu \
	drm_vma_limiter_gtt \
	gem_bad_length \
	gem_cpu_reloc \
	gem_cs_prefetch \
	gem_ctx_bad_destroy \
	gem_ctx_basic \
	gem_ctx_create \
	gem_ctx_thrash \
	gem_double_irq_loop \
	gem_exec_big \
	gem_exec_blt \
	gem_exec_lut_handle \
	gem_fd_exhaustion \
	gem_gtt_cpu_tlb \
	gem_gtt_hog \
	gem_gtt_speed \
	gem_hangcheck_forcewake \
	gem_largeobject \
	gem_lut_handle \
	gem_mmap_offset_exhaustion \
	gem_media_fill \
	gem_gpgpu_fill \
	gem_pin \
	gem_reg_read \
	gem_render_copy \
	gem_render_linear_blits \
	gem_render_tiled_blits \
	gem_ring_sync_copy \
	gem_ring_sync_loop \
	gem_multi_bsd_sync_loop \
	gem_seqno_wrap \
	gem_set_tiling_vs_gtt \
	gem_set_tiling_vs_pwrite \
	gem_storedw_loop_blt \
	gem_storedw_loop_bsd \
	gem_storedw_loop_render \
	gem_storedw_loop_vebox \
	gem_threaded_access_tiled \
	gem_tiled_fence_blits \
	gem_tiled_pread \
	gem_tiled_pread_pwrite \
	gem_tiled_swapping \
	gem_tiled_wb \
	gem_tiled_wc \
	gem_tiling_max_stride \
	gem_unfence_active_buffers \
	gem_unref_active_buffers \
	gem_wait \
	gem_workarounds \
	gen3_mixed_blits \
	gen3_render_linear_blits \
	gen3_render_mixed_blits \
	gen3_render_tiledx_blits \
	gen3_render_tiledy_blits \
	gen7_forcewake_mt \
	kms_3d \
	kms_fence_pin_leak \
	kms_force_connector \
	kms_pwrite_crc \
	kms_sink_crc_basic \
	prime_udl \
	$(NULL)

# IMPORTANT: The ZZ_ tests need to be run last!
# ... and make can't deal with inlined comments ...
TESTS_scripts_M = \
	$(NULL)

TESTS_scripts = \
	debugfs_emon_crash \
	drv_debugfs_reader \
	drv_missed_irq_hang \
	drv_module_reload \
	kms_sysfs_edid_timing \
	sysfs_l3_parity \
	test_rte_check \
	tools_test \
	$(NULL)

# This target contains testcases which support automagic subtest enumeration
# from the piglit testrunner with --list-subtests and running individual
# subtests with --run-subtest <testname>
#
# Your testcase should probably use an igt_main and igt_fixture and should have
# a pile of igt_subtest blocks.
multi_kernel_tests = \
	$(TESTS_progs_M) \
	$(TESTS_scripts_M) \
	$(NULL)

# This target is for simple testcase which don't expose any subtest.
#
# Your testcase should probably use igt_simple_main, but none of the other magic
# blocks like igt_fixture or igt_subtest.
single_kernel_tests = \
	$(TESTS_progs) \
	$(TESTS_scripts) \
	$(NULL)

kernel_tests = \
	$(single_kernel_tests) \
	$(multi_kernel_tests) \
	$(NULL)

# Test that exercise specific asserts in the test framework library and are
# hence expected to fail.
XFAIL_TESTS = \
	igt_no_exit \
	igt_no_exit_list_only \
	igt_no_subtest \
	$(NULL)

# IMPORTANT: These tests here are all disabled because the result in sometime
# unrecoverable gpu hangs. Don't put real testcases here.
HANG = \
	gem_bad_batch \
	gem_hang \
	gem_bad_blit \
	gem_bad_address \
	gem_non_secure_batch \
	$(NULL)

scripts = \
	check_drm_clients \
	ddx_intel_after_fbdev \
	debugfs_wedged \
	drm_lib.sh \
	$(NULL)

IMAGES = pass.png 1080p-left.png 1080p-right.png

testdisplay_SOURCES = \
	testdisplay.c \
	testdisplay.h \
	testdisplay_hotplug.c \
	$(NULL)

TESTS_progs += testdisplay

common_files = \
	       eviction_common.c \
	       $(NULL)