diff --git a/.gitignore b/.gitignore
index 547b6ed..59f76fd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 *.sw*
 /build
+/subprojects/googletest
diff --git a/meson.build b/meson.build
index 02cd994..202f6d2 100644
--- a/meson.build
+++ b/meson.build
@@ -1,6 +1,6 @@
 # OpenBMC openpower-libhei project, see README.md for details.
 project('openpower-libhei', '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 e780a2e..cbe7fbc 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
+
 # build simulator
 subdir('simulator')
 
@@ -12,13 +34,9 @@
     'operator_register_test',
 ]
 
-gtest = dependency('gtest', main : true, required : false, method : 'system')
-
-if gtest.found()
-    foreach g : gtests
-        test(g, executable(g.underscorify(), g + '.cpp', test_src, \
-                            dependencies : gtest, \
-                            include_directories : incdir))
-  endforeach
-endif
+foreach g : gtests
+  test(g, executable(g.underscorify(), g + '.cpp', test_src,
+                     dependencies : gtest_dep,
+                     include_directories : incdir))
+endforeach
 
diff --git a/test/simulator/meson.build b/test/simulator/meson.build
index 82e2336..87b2d80 100644
--- a/test/simulator/meson.build
+++ b/test/simulator/meson.build
@@ -7,13 +7,9 @@
 
 subdir('testcases')
 
-gtest = dependency('gtest', main : true, required : false, method : 'system')
-
 # Build simulator linked locally
-if gtest.found()
-    test('simulator',
-         executable('simulator', sim_src, test_src,
-                    dependencies : gtest,
-                    link_with : libhei_static,
-                    include_directories: [ incdir, '.' ]))
-endif
+test('simulator',
+     executable('simulator', sim_src, test_src,
+                dependencies : gtest_dep,
+                link_with : libhei_static,
+                include_directories: [ incdir, '.' ]))
