diff --git a/Aegisub.sln b/Aegisub.sln
index 9d156dcad..ba818c3c6 100644
--- a/Aegisub.sln
+++ b/Aegisub.sln
@@ -72,6 +72,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "boost", "aegisub\build\boos
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "icu", "aegisub\build\icu\icu.vcxproj", "{F934AB7B-186B-4E96-B20C-A58C38C1B818}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "googletest", "aegisub\build\googletest\googletest.vcxproj", "{FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -307,6 +309,14 @@ Global
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|Win32.Build.0 = Release|Win32
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|x64.ActiveCfg = Release|x64
{F934AB7B-186B-4E96-B20C-A58C38C1B818}.Release|x64.Build.0 = Release|x64
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|Win32.ActiveCfg = Debug|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|Win32.Build.0 = Debug|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug|x64.ActiveCfg = Debug|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug-MinDep|Win32.ActiveCfg = Debug|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Debug-MinDep|x64.ActiveCfg = Debug|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|Win32.ActiveCfg = Release|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|Win32.Build.0 = Release|Win32
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}.Release|x64.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/aegisub/build/Aegisub/Aegisub.xml b/aegisub/build/Aegisub/Aegisub.xml
index b3e04e116..be3cb67e7 100644
--- a/aegisub/build/Aegisub/Aegisub.xml
+++ b/aegisub/build/Aegisub/Aegisub.xml
@@ -243,6 +243,14 @@
Description="Location of ICU source code."
/>
+
+
..\..\..\deps\freetype2
..\..\..\deps\fribidi
..\..\..\deps\fontconfig
+ ..\..\..\deps\googletest
..\..\..\deps\icu\source
..\..\..\deps\libass
..\..\..\deps\wxWidgets
diff --git a/aegisub/build/googletest/googletest.vcxproj b/aegisub/build/googletest/googletest.vcxproj
new file mode 100644
index 000000000..e68c22b30
--- /dev/null
+++ b/aegisub/build/googletest/googletest.vcxproj
@@ -0,0 +1,62 @@
+
+
+
+ {FBE51B37-8B12-41E8-B5E0-F00A06B4BCD2}
+ googletest
+
+
+
+
+ lib
+
+
+
+
+
+
+
+
+
+ GTEST_HAS_TR1_TUPLE=0;
+ %(PreprocessorDefinitions)
+
+
+ $(GtestSrcDir);
+ %(AdditionalIncludeDirectories)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/aegisub/build/googletest/googletest.vcxproj.filters b/aegisub/build/googletest/googletest.vcxproj.filters
new file mode 100644
index 000000000..54e13bb51
--- /dev/null
+++ b/aegisub/build/googletest/googletest.vcxproj.filters
@@ -0,0 +1,97 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hpp;hxx;hm;inl;inc;xsd
+
+
+ {ad1eaa10-1448-406d-924c-ec1a608cec0b}
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+
+
+ Header Files
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+ Header Files\internal
+
+
+
+
+ Source Files
+
+
+
diff --git a/aegisub/build/standard-settings.props b/aegisub/build/standard-settings.props
index 290e24bd6..b41ab38e0 100644
--- a/aegisub/build/standard-settings.props
+++ b/aegisub/build/standard-settings.props
@@ -27,6 +27,7 @@
$(AegisubSourceBase)src\msvc;
$(AegisubSourceBase)\include;
$(BoostPath);
+ $(GtestSrcDir)\include;
$(IcuSrcDir)\include;
%(AdditionalIncludeDirectories)