From 8790099ba94a5faeaffd0de11b50cf5eb47670ff Mon Sep 17 00:00:00 2001 From: Vlad Sytchenko Date: Wed, 3 Jun 2020 13:48:39 -0400 Subject: [PATCH] Add cmake targets to run ocltst test modules Tests are now excluded from the main build, however ocltst can still be built by running `cmake --build . --target ocltst`. Test modules can be run by invoking the test_${module_name} target, for example `cmake --build . --target test_oclruntime`. Change-Id: I6f40d3bd318e821e4fbf35ccfa395dc7036673cb --- opencl/CMakeLists.txt | 2 +- opencl/tests/ocltst/env/CMakeLists.txt | 3 ++- opencl/tests/ocltst/log/CMakeLists.txt | 3 ++- opencl/tests/ocltst/module/gl/CMakeLists.txt | 13 ++++++++++++- opencl/tests/ocltst/module/perf/CMakeLists.txt | 13 ++++++++++++- opencl/tests/ocltst/module/runtime/CMakeLists.txt | 13 ++++++++++++- 6 files changed, 41 insertions(+), 6 deletions(-) diff --git a/opencl/CMakeLists.txt b/opencl/CMakeLists.txt index 7aefd46a25..25b7e031f6 100644 --- a/opencl/CMakeLists.txt +++ b/opencl/CMakeLists.txt @@ -23,7 +23,7 @@ if(DEFINED USE_COMGR_LIBRARY) endif() option(USE_COMGR_LIBRARY "Use comgr library" ON) -option(BUILD_TESTS "Enable building OpenCL tests" OFF) +option(BUILD_TESTS "Enable building OpenCL tests" ON) set(THREADS_PREFER_PTHREAD_FLAG ON) find_package(Threads REQUIRED) diff --git a/opencl/tests/ocltst/env/CMakeLists.txt b/opencl/tests/ocltst/env/CMakeLists.txt index 50f94abaa3..122c0fddcb 100644 --- a/opencl/tests/ocltst/env/CMakeLists.txt +++ b/opencl/tests/ocltst/env/CMakeLists.txt @@ -12,7 +12,8 @@ set_target_properties(ocltst PROPERTIES CXX_STANDARD 14 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF - RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst) + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst + EXCLUDE_FROM_ALL TRUE) target_compile_definitions(ocltst PRIVATE diff --git a/opencl/tests/ocltst/log/CMakeLists.txt b/opencl/tests/ocltst/log/CMakeLists.txt index 23fc37bdbe..d33d6f069f 100644 --- a/opencl/tests/ocltst/log/CMakeLists.txt +++ b/opencl/tests/ocltst/log/CMakeLists.txt @@ -5,7 +5,8 @@ set_target_properties(TestLog PROPERTIES CXX_STANDARD 14 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF - LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst) + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst + EXCLUDE_FROM_ALL TRUE) target_include_directories(TestLog PRIVATE diff --git a/opencl/tests/ocltst/module/gl/CMakeLists.txt b/opencl/tests/ocltst/module/gl/CMakeLists.txt index 8b5703575d..b0c213b099 100644 --- a/opencl/tests/ocltst/module/gl/CMakeLists.txt +++ b/opencl/tests/ocltst/module/gl/CMakeLists.txt @@ -14,7 +14,8 @@ set_target_properties(oclgl PROPERTIES CXX_STANDARD 14 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF - LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst) + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst + EXCLUDE_FROM_ALL TRUE) target_compile_definitions(oclgl PRIVATE @@ -37,3 +38,13 @@ add_custom_command( ${CMAKE_BINARY_DIR}/tests/ocltst/ogl.exclude) add_dependencies(ocltst oclgl) + +add_custom_target(test_oclgl + COMMAND + ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/lib:$ENV{LD_LIBRARY_PATH}" + $ -m $ -A oclgl.exclude + DEPENDS + ocltst oclgl amdocl64 + WORKING_DIRECTORY + ${CMAKE_BINARY_DIR}/tests/ocltst + USES_TERMINAL) diff --git a/opencl/tests/ocltst/module/perf/CMakeLists.txt b/opencl/tests/ocltst/module/perf/CMakeLists.txt index 4fc5a6af04..f9d3334fce 100644 --- a/opencl/tests/ocltst/module/perf/CMakeLists.txt +++ b/opencl/tests/ocltst/module/perf/CMakeLists.txt @@ -84,7 +84,8 @@ set_target_properties(oclperf PROPERTIES CXX_STANDARD 14 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF - LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst) + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst + EXCLUDE_FROM_ALL TRUE) target_compile_definitions(oclperf PRIVATE @@ -112,3 +113,13 @@ add_custom_command( ${CMAKE_BINARY_DIR}/tests/ocltst/oclperf.exclude) add_dependencies(ocltst oclperf) + +add_custom_target(test_oclperf + COMMAND + ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/lib:$ENV{LD_LIBRARY_PATH}" + $ -m $ -A oclperf.exclude + DEPENDS + ocltst oclperf amdocl64 + WORKING_DIRECTORY + ${CMAKE_BINARY_DIR}/tests/ocltst + USES_TERMINAL) diff --git a/opencl/tests/ocltst/module/runtime/CMakeLists.txt b/opencl/tests/ocltst/module/runtime/CMakeLists.txt index 5ef6298ec0..4de6a8cc70 100644 --- a/opencl/tests/ocltst/module/runtime/CMakeLists.txt +++ b/opencl/tests/ocltst/module/runtime/CMakeLists.txt @@ -49,7 +49,8 @@ set_target_properties(oclruntime PROPERTIES CXX_STANDARD 14 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF - LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst) + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests/ocltst + EXCLUDE_FROM_ALL TRUE) target_compile_definitions(oclruntime PRIVATE @@ -77,3 +78,13 @@ add_custom_command( ${CMAKE_BINARY_DIR}/tests/ocltst/oclruntime.exclude) add_dependencies(ocltst oclruntime) + +add_custom_target(test_oclruntime + COMMAND + ${CMAKE_COMMAND} -E env "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/lib:$ENV{LD_LIBRARY_PATH}" + $ -m $ -A oclruntime.exclude + DEPENDS + ocltst oclruntime amdocl64 + WORKING_DIRECTORY + ${CMAKE_BINARY_DIR}/tests/ocltst + USES_TERMINAL)