diff --git a/.gitignore b/.gitignore
index 471453d..8d2357a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 *.sw*
 /build
+/subprojects/googletest
 /subprojects/libhei
diff --git a/meson.build b/meson.build
index 9837e17..75d56df 100644
--- a/meson.build
+++ b/meson.build
@@ -1,6 +1,6 @@
 # See README.md for details.
 project('openpower-hw-diags', 'cpp',
-        version: '0.1', meson_version: '>=0.50.0',
+        version: '0.1', meson_version: '>=0.51.0',
         default_options: [
           'warning_level=3',
           'werror=true',
diff --git a/subprojects/googletest.wrap b/subprojects/googletest.wrap
new file mode 100644
index 0000000..56da9ef
--- /dev/null
+++ b/subprojects/googletest.wrap
@@ -0,0 +1,3 @@
+[wrap-git]
+url = https://github.com/google/googletest
+revision = HEAD
diff --git a/test/meson.build b/test/meson.build
index dc374fb..730c19a 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -1,3 +1,25 @@
+# Get the gtest/gmock dependencies.
+gtest_dep = dependency('gtest', main: true, disabler: true, required: false)
+gmock_dep = dependency('gmock', disabler: true, required: false)
+if not gtest_dep.found() or not gmock_dep.found()
+    cmake = import('cmake')
+    gtest_proj = cmake.subproject('googletest',
+                                  required: false)
+    if gtest_proj.found()
+        gtest_dep = declare_dependency(
+            dependencies: [
+                dependency('threads'),
+                gtest_proj.dependency('gtest'),
+                gtest_proj.dependency('gtest_main'),
+            ]
+        )
+        gmock_dep = gtest_proj.dependency('gmock')
+    else
+        assert(not get_option('tests').enabled(),
+               'Googletest is required if tests are enabled')
+    endif
+endif
+
 test_arg = [
     '-DTEST_TRACE',
 ]
@@ -15,14 +37,10 @@
   '../analyzer/service_data.cpp',
 )
 
-gtest = dependency('gtest', main : true, required : false, method : 'system')
-
-if gtest.found()
-    foreach t : tests
-        test(t, executable(t.underscorify(), [ t + '.cpp', analyzer_src ],
-                           link_with : [ util_lib ],
-                           dependencies : [ libhei_dep, gtest ],
-                           cpp_args : test_arg,
-                           include_directories : incdir))
-    endforeach
-endif
+foreach t : tests
+    test(t, executable(t.underscorify(), [ t + '.cpp', analyzer_src ],
+                       link_with : [ util_lib ],
+                       dependencies : [ libhei_dep, gtest_dep ],
+                       cpp_args : test_arg,
+                       include_directories : incdir))
+endforeach
