diff --git a/.gitmodules b/.gitmodules
index 35fca6536e4..d61e9563060 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -13,3 +13,6 @@
[submodule "src/Externals/lzo"]
path = src/Externals/lzo
url = https://github.com/alexgdi/lzo.git
+[submodule "src/Externals/zlib"]
+ path = src/Externals/zlib
+ url = https://github.com/madler/zlib.git
diff --git a/src/Externals/.gitignore b/src/Externals/.gitignore
index 34429deded9..c40f9f383da 100644
--- a/src/Externals/.gitignore
+++ b/src/Externals/.gitignore
@@ -12,4 +12,3 @@ maya
nvapi
OpenAutomate
OpenSSL
-zlib
diff --git a/src/Externals/zlib b/src/Externals/zlib
new file mode 160000
index 00000000000..cacf7f1d4e3
--- /dev/null
+++ b/src/Externals/zlib
@@ -0,0 +1 @@
+Subproject commit cacf7f1d4e3d44d871b605da3b647f07d718623f
diff --git a/src/Externals/zlib.vcxproj b/src/Externals/zlib.vcxproj
new file mode 100644
index 00000000000..401e66a5c83
--- /dev/null
+++ b/src/Externals/zlib.vcxproj
@@ -0,0 +1,213 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}
+ 8.1
+
+
+
+ StaticLibrary
+ v140
+ MultiByte
+
+
+ StaticLibrary
+ v140
+ MultiByte
+
+
+ StaticLibrary
+ false
+ v140
+
+
+ StaticLibrary
+ false
+ v140
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Disabled
+ zlib;zlib\contrib\masmx86;%(AdditionalIncludeDirectories)
+ WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)
+
+
+ MultiThreadedDebugDLL
+ false
+ $(IntDir)zlibstat.pch
+ $(IntDir)
+ $(IntDir)
+ $(OutDir)
+ Level3
+ true
+ OldStyle
+
+
+ 0x040c
+
+
+ /MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)
+ $(OutDir)zlibstat.lib
+ true
+
+
+
+
+ OnlyExplicitInline
+ zlib;zlib\contrib\masmx86;%(AdditionalIncludeDirectories)
+ WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)
+ true
+
+
+ MultiThreaded
+ false
+ true
+ $(IntDir)zlibstat.pch
+ $(IntDir)
+ $(IntDir)
+ $(OutDir)
+ Level3
+ true
+
+
+ 0x040c
+
+
+ /MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)
+ zlib\contrib\masmx86\match686.obj;zlib\contrib\masmx86\inffas32.obj;%(AdditionalDependencies)
+ $(OutDir)zlibstat.lib
+ true
+
+
+
+
+ X64
+
+
+ Disabled
+ zlib;zlib\contrib\masmx86;%(AdditionalIncludeDirectories)
+ ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)
+
+
+ MultiThreadedDebugDLL
+ false
+ $(IntDir)zlibstat.pch
+ $(IntDir)
+ $(IntDir)
+ $(OutDir)
+ Level3
+ true
+ OldStyle
+
+
+ 0x040c
+
+
+ /MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)
+ $(OutDir)zlibstat.lib
+ true
+
+
+
+
+ X64
+
+
+ OnlyExplicitInline
+ zlib;zlib\contrib\masmx86;%(AdditionalIncludeDirectories)
+ ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)
+ true
+
+
+ MultiThreadedDLL
+ false
+ true
+ $(IntDir)zlibstat.pch
+ $(IntDir)
+ $(IntDir)
+ $(OutDir)
+ Level3
+ true
+
+
+ 0x040c
+
+
+ /MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)
+ zlib\contrib\masmx64\gvmat64.obj;zlib\contrib\masmx64\inffasx64.obj;%(AdditionalDependencies)
+ $(OutDir)zlibstat.lib
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/engine.sln b/src/engine.sln
index a6e8193684b..ac7530bf3b4 100644
--- a/src/engine.sln
+++ b/src/engine.sln
@@ -166,6 +166,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lzo2", "Externals\lzo.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "luajit", "Externals\luajit\src\luajit.vcxproj", "{632AEEB6-DC06-4E15-9551-B2B09A4B73C5}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib", "Externals\zlib.vcxproj", "{745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug_Dedicated|Mixed Platforms = Debug_Dedicated|Mixed Platforms
@@ -1452,6 +1454,30 @@ Global
{632AEEB6-DC06-4E15-9551-B2B09A4B73C5}.Release|Mixed Platforms.Build.0 = Release|Win32
{632AEEB6-DC06-4E15-9551-B2B09A4B73C5}.Release|Win32.ActiveCfg = Release|Win32
{632AEEB6-DC06-4E15-9551-B2B09A4B73C5}.Release|Win32.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug_Dedicated|Mixed Platforms.ActiveCfg = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug_Dedicated|Mixed Platforms.Build.0 = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug_Dedicated|Win32.ActiveCfg = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug_Dedicated|Win32.Build.0 = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Mixed Platforms.Build.0 = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Win32.ActiveCfg = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|Win32.Build.0 = Debug|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed_Dedicated|Mixed Platforms.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed_Dedicated|Mixed Platforms.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed_Dedicated|Win32.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed_Dedicated|Win32.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed|Mixed Platforms.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed|Mixed Platforms.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed|Win32.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Mixed|Win32.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release_Dedicated|Mixed Platforms.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release_Dedicated|Mixed Platforms.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release_Dedicated|Win32.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release_Dedicated|Win32.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Mixed Platforms.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Mixed Platforms.Build.0 = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Win32.ActiveCfg = Release|Win32
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -1505,6 +1531,7 @@ Global
{67FF193E-2C20-402A-9026-9F5F6327503C} = {2BFC806B-CE92-4EA4-8FE8-5F2EA54BA348}
{614AA57F-58D7-45A8-A5FF-93F04B05FAC6} = {2BFC806B-CE92-4EA4-8FE8-5F2EA54BA348}
{632AEEB6-DC06-4E15-9551-B2B09A4B73C5} = {2BFC806B-CE92-4EA4-8FE8-5F2EA54BA348}
+ {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8} = {2BFC806B-CE92-4EA4-8FE8-5F2EA54BA348}
EndGlobalSection
GlobalSection(DPCodeReviewSolutionGUID) = preSolution
DPCodeReviewSolutionGUID = {00000000-0000-0000-0000-000000000000}
diff --git a/src/utils/xrLCUtil/xrLCUtil.vcxproj b/src/utils/xrLCUtil/xrLCUtil.vcxproj
index a1f3dd21036..6c3806b2904 100644
--- a/src/utils/xrLCUtil/xrLCUtil.vcxproj
+++ b/src/utils/xrLCUtil/xrLCUtil.vcxproj
@@ -68,7 +68,7 @@
Disabled
- $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\include;%(AdditionalIncludeDirectories)
+ $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib;%(AdditionalIncludeDirectories)
_USRDLL;LEVEL_COMPILER;XRLCUTIL_EXPORTS;_USE_MATH_DEFINES;FORCE_NO_EXCEPTIONS;%(PreprocessorDefinitions)
true
true
@@ -90,7 +90,7 @@
false
$(xrLibDir)$(TargetName).lib
MachineX86
- zlibMS.lib;%(AdditionalDependencies)
+ zlibstat.lib;%(AdditionalDependencies)
@@ -101,7 +101,7 @@
Speed
true
true
- $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\include;%(AdditionalIncludeDirectories)
+ $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib;%(AdditionalIncludeDirectories)
_USRDLL;LEVEL_COMPILER;XRLCUTIL_EXPORTS;%(PreprocessorDefinitions)
MultiThreadedDLL
StreamingSIMDExtensions2
@@ -122,13 +122,13 @@
false
$(xrLibDir)$(TargetName).lib
MachineX86
- zlibMS.lib;%(AdditionalDependencies)
+ zlibstat.lib;%(AdditionalDependencies)
Disabled
- $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\include;%(AdditionalIncludeDirectories)
+ $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib;%(AdditionalIncludeDirectories)
_USRDLL;LEVEL_COMPILER;XRLCUTIL_EXPORTS;_USE_MATH_DEFINES;%(PreprocessorDefinitions)
true
true
@@ -151,7 +151,7 @@
false
$(xrLibDir)$(TargetName).lib
MachineX86
- zlibMS.lib;%(AdditionalDependencies)
+ zlibstat.lib;%(AdditionalDependencies)
diff --git a/src/utils/xrLC_Light/xrLC_Light.vcxproj b/src/utils/xrLC_Light/xrLC_Light.vcxproj
index 07ead45ae9c..5db97fbf9df 100644
--- a/src/utils/xrLC_Light/xrLC_Light.vcxproj
+++ b/src/utils/xrLC_Light/xrLC_Light.vcxproj
@@ -67,7 +67,7 @@
Disabled
- $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\include;%(AdditionalIncludeDirectories)
+ $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib;%(AdditionalIncludeDirectories)
_USRDLL;LEVEL_COMPILER;_USE_MATH_DEFINES;XRLC_LIGHT_EXPORTS;FORCE_NO_EXCEPTIONS;%(PreprocessorDefinitions)
true
true
@@ -78,13 +78,13 @@
Level3
- $(DXSDK_DIR)Lib\x86;$(xrSdkDir)libraries;$(xrLibDir);$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\bin;%(AdditionalLibraryDirectories)
+ $(DXSDK_DIR)Lib\x86;$(xrSdkDir)libraries;$(xrLibDir);$(SolutionDir)Externals\FreeImage\Dist;%(AdditionalLibraryDirectories)
Windows
true
false
$(xrLibDir)$(TargetName).lib
MachineX86
- zlibMS.lib;%(AdditionalDependencies)
+ zlibstat.lib;%(AdditionalDependencies)
@@ -95,7 +95,7 @@
Speed
true
true
- $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\include;%(AdditionalIncludeDirectories)
+ $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib;%(AdditionalIncludeDirectories)
_USRDLL;LEVEL_COMPILER;XRLC_LIGHT_EXPORTS;%(PreprocessorDefinitions)
MultiThreadedDLL
StreamingSIMDExtensions2
@@ -104,20 +104,20 @@
Level3
- $(DXSDK_DIR)Lib\x86;$(xrSdkDir)libraries;$(xrLibDir);$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\bin;%(AdditionalLibraryDirectories)
+ $(DXSDK_DIR)Lib\x86;$(xrSdkDir)libraries;$(xrLibDir);$(SolutionDir)Externals\FreeImage\Dist;%(AdditionalLibraryDirectories)
Windows
true
true
false
$(xrLibDir)$(TargetName).lib
MachineX86
- zlibMS.lib;%(AdditionalDependencies)
+ zlibstat.lib;%(AdditionalDependencies)
Disabled
- $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\include;%(AdditionalIncludeDirectories)
+ $(SolutionDir)xrQSlim\src;$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib;%(AdditionalIncludeDirectories)
_USRDLL;LEVEL_COMPILER;_USE_MATH_DEFINES;XRLC_LIGHT_EXPORTS;%(PreprocessorDefinitions)
true
true
@@ -128,14 +128,14 @@
Level3
- $(DXSDK_DIR)Lib\x86;$(xrSdkDir)libraries;$(xrLibDir);$(SolutionDir)Externals\FreeImage\Dist;$(SolutionDir)Externals\zlib\bin;%(AdditionalLibraryDirectories)
+ $(DXSDK_DIR)Lib\x86;$(xrSdkDir)libraries;$(xrLibDir);$(SolutionDir)Externals\FreeImage\Dist;%(AdditionalLibraryDirectories)
true
Windows
true
false
$(xrLibDir)$(TargetName).lib
MachineX86
- zlibMS.lib;%(AdditionalDependencies)
+ zlibstat.lib;%(AdditionalDependencies)