diff --git a/gtest-warnings-are-not-errors.patch b/gtest-warnings-are-not-errors.patch
new file mode 100644
index 0000000..38df692
--- /dev/null
+++ b/gtest-warnings-are-not-errors.patch
@@ -0,0 +1,20 @@
+diff --git a/googletest/cmake/internal_utils.cmake b/googletest/cmake/internal_utils.cmake
+index 2f70f0b..36cbecb 100644
+--- a/googletest/cmake/internal_utils.cmake
++++ b/googletest/cmake/internal_utils.cmake
+@@ -82,13 +82,13 @@ macro(config_compiler_and_linker)
+     # http://stackoverflow.com/questions/3232669 explains the issue.
+     set(cxx_base_flags "${cxx_base_flags} -wd4702")
+   elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+-    set(cxx_base_flags "-Wall -Wshadow -Werror -Wconversion")
++    set(cxx_base_flags "-Wall -Wshadow -Wconversion")
+     set(cxx_exception_flags "-fexceptions")
+     set(cxx_no_exception_flags "-fno-exceptions")
+     set(cxx_strict_flags "-W -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wredundant-decls")
+     set(cxx_no_rtti_flags "-fno-rtti")
+   elseif (CMAKE_COMPILER_IS_GNUCXX)
+-    set(cxx_base_flags "-Wall -Wshadow -Werror")
++    set(cxx_base_flags "-Wall -Wshadow")
+     if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0.0)
+       set(cxx_base_flags "${cxx_base_flags} -Wno-error=dangling-else")
+     endif()
diff --git a/portfile.cmake b/portfile.cmake
index 30e9dfb..5a94335 100644
--- a/portfile.cmake
+++ b/portfile.cmake
@@ -11,6 +11,7 @@ vcpkg_from_github(
     PATCHES
         0002-Fix-z7-override.patch
         fix-main-lib-path.patch
+        gtest-warnings-are-not-errors.patch
 )
 
 string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" GTEST_FORCE_SHARED_CRT)
