tests: Only run valgrind tests if valgrind was found

valgrind is not present on all architectures (eg riscv64) and might
not be installed even on supported architectures.

Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6033415..58eca22 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -66,6 +66,8 @@
     endif()
 endif(CCACHE_FOUND)
 
+find_program(VALGRIND_FOUND valgrind)
+
 if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
     if(RAPIDJSON_ENABLE_INSTRUMENTATION_OPT AND NOT CMAKE_CROSSCOMPILING)
         if(CMAKE_SYSTEM_PROCESSOR STREQUAL "powerpc" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64le")
diff --git a/test/unittest/CMakeLists.txt b/test/unittest/CMakeLists.txt
index 565ed98..87c0468 100644
--- a/test/unittest/CMakeLists.txt
+++ b/test/unittest/CMakeLists.txt
@@ -80,7 +80,7 @@
     COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest
     WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
 
-if(NOT MSVC)
+if(NOT MSVC AND VALGRIND_FOUND)
     # Not running SIMD.* unit test cases for Valgrind
     add_test(NAME valgrind_unittest
         COMMAND valgrind --suppressions=${CMAKE_SOURCE_DIR}/test/valgrind.supp --leak-check=full --error-exitcode=1 ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest --gtest_filter=-SIMD.*