From 6a2cacaa406def5879bcab483c8ab8a574a3a332 Mon Sep 17 00:00:00 2001 From: dmiller Date: Thu, 19 Sep 2019 16:45:39 +0000 Subject: [PATCH] Windows config Zlib to not use ASM, support GZ. Fixes #1723 --- libssh2/win32/libssh2.vcxproj | 4 +- libz/contrib/vstudio/vc12/zlibvc.vcxproj | 198 ++++++++++++++++++++++- mswin32/Makefile | 4 +- mswin32/nmap.sln | 14 +- 4 files changed, 204 insertions(+), 16 deletions(-) diff --git a/libssh2/win32/libssh2.vcxproj b/libssh2/win32/libssh2.vcxproj index 6c69af68f..c4375ae8f 100644 --- a/libssh2/win32/libssh2.vcxproj +++ b/libssh2/win32/libssh2.vcxproj @@ -89,7 +89,7 @@ .\Release_dll\libssh2.dll .\Release_dll\libssh2.lib ws2_32.lib;libeay32.lib;zlibwapi.lib;%(AdditionalDependencies) - ..\..\libz\contrib\vstudio\vc12\x86\ZlibDllRelease;..\..\..\nmap-mswin32-aux\OpenSSL\lib;%(AdditionalLibraryDirectories) + ..\..\libz\contrib\vstudio\vc12\x86\ZlibDllReleaseWithoutAsm;..\..\..\nmap-mswin32-aux\OpenSSL\lib;%(AdditionalLibraryDirectories) @@ -135,7 +135,7 @@ .\Debug_dll\libssh2.dll .\Debug_dll\libssh2.lib ws2_32.lib;libeay32.lib;zlibwapi.lib;%(AdditionalDependencies) - ..\..\..\nmap-mswin32-aux\OpenSSL\lib;..\..\libz\contrib\vstudio\vc12\x86\ZlibDllDebug;%(AdditionalLibraryDirectories) + ..\..\..\nmap-mswin32-aux\OpenSSL\lib;..\..\libz\contrib\vstudio\vc12\x86\ZlibDllDebugWithoutAsm;%(AdditionalLibraryDirectories) diff --git a/libz/contrib/vstudio/vc12/zlibvc.vcxproj b/libz/contrib/vstudio/vc12/zlibvc.vcxproj index ab2b6c360..090871fc8 100644 --- a/libz/contrib/vstudio/vc12/zlibvc.vcxproj +++ b/libz/contrib/vstudio/vc12/zlibvc.vcxproj @@ -1,6 +1,14 @@  + + DebugWithoutAsm + Win32 + + + DebugWithoutAsm + x64 + Debug Itanium @@ -60,6 +68,12 @@ v120 Unicode + + DynamicLibrary + false + v120 + Unicode + DynamicLibrary false @@ -77,6 +91,11 @@ false v120 + + DynamicLibrary + false + v120 + DynamicLibrary false @@ -94,6 +113,11 @@ false v120 + + DynamicLibrary + false + v120 + @@ -106,6 +130,9 @@ + + + @@ -115,6 +142,9 @@ + + + @@ -124,13 +154,20 @@ + + + <_ProjectFileVersion>10.0.30128.1 x86\ZlibDll$(Configuration)\ + x86\ZlibDll$(Configuration)\ x86\ZlibDll$(Configuration)\Tmp\ + x86\ZlibDll$(Configuration)\Tmp\ true + true false + false x86\ZlibDll$(Configuration)\ x86\ZlibDll$(Configuration)\Tmp\ false @@ -140,13 +177,21 @@ false false x64\ZlibDll$(Configuration)\ + x64\ZlibDll$(Configuration)\ x64\ZlibDll$(Configuration)\Tmp\ + x64\ZlibDll$(Configuration)\Tmp\ true + true false + false ia64\ZlibDll$(Configuration)\ + ia64\ZlibDll$(Configuration)\ ia64\ZlibDll$(Configuration)\Tmp\ + ia64\ZlibDll$(Configuration)\Tmp\ true + true false + false x64\ZlibDll$(Configuration)\ x64\ZlibDll$(Configuration)\Tmp\ false @@ -164,14 +209,23 @@ false false AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset + AllRules.ruleset + + AllRules.ruleset @@ -191,9 +245,11 @@ zlibwapi + zlibwapi zlibwapi zlibwapi zlibwapi + zlibwapi zlibwapi zlibwapi @@ -248,6 +304,52 @@ bld_ml32.bat + + + _DEBUG;%(PreprocessorDefinitions) + true + true + Win32 + $(OutDir)zlibvc.tlb + + + Disabled + ..\..\..;%(AdditionalIncludeDirectories) + WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions) + + + MultiThreadedDebugDLL + false + $(IntDir)zlibvc.pch + $(IntDir) + $(IntDir) + $(OutDir) + + + Level3 + true + ProgramDatabase + + + _DEBUG;%(PreprocessorDefinitions) + 0x040c + + + /MACHINE:I386 %(AdditionalOptions) + $(OutDir)zlibwapi.dll + true + .\zlibvc.def + true + $(OutDir)zlibwapi.pdb + true + $(OutDir)zlibwapi.map + Windows + false + + + $(OutDir)zlibwapi.lib + + NDEBUG;%(PreprocessorDefinitions) @@ -258,7 +360,7 @@ bld_ml32.bat OnlyExplicitInline - ..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories) + ..\..\..;%(AdditionalIncludeDirectories) WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions) true @@ -398,6 +500,49 @@ bld_ml32.bat bld_ml64.bat + + + _DEBUG;%(PreprocessorDefinitions) + true + true + X64 + $(OutDir)zlibvc.tlb + + + Disabled + ..\..\..;%(AdditionalIncludeDirectories) + WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions) + + + MultiThreadedDebugDLL + false + $(IntDir)zlibvc.pch + $(IntDir) + $(IntDir) + $(OutDir) + + + Level3 + true + ProgramDatabase + + + _DEBUG;%(PreprocessorDefinitions) + 0x040c + + + $(OutDir)zlibwapi.dll + true + .\zlibvc.def + true + $(OutDir)zlibwapi.pdb + true + $(OutDir)zlibwapi.map + Windows + $(OutDir)zlibwapi.lib + MachineX64 + + _DEBUG;%(PreprocessorDefinitions) @@ -441,6 +586,49 @@ bld_ml64.bat MachineIA64 + + + _DEBUG;%(PreprocessorDefinitions) + true + true + Itanium + $(OutDir)zlibvc.tlb + + + Disabled + ..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories) + WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions) + + + MultiThreadedDebugDLL + false + $(IntDir)zlibvc.pch + $(IntDir) + $(IntDir) + $(OutDir) + + + Level3 + true + ProgramDatabase + + + _DEBUG;%(PreprocessorDefinitions) + 0x040c + + + $(OutDir)zlibwapi.dll + true + .\zlibvc.def + true + $(OutDir)zlibwapi.pdb + true + $(OutDir)zlibwapi.map + Windows + $(OutDir)zlibwapi.lib + MachineIA64 + + NDEBUG;%(PreprocessorDefinitions) @@ -451,7 +639,7 @@ bld_ml64.bat OnlyExplicitInline - ..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories) + ..\..\..;%(AdditionalIncludeDirectories) WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions) true @@ -496,7 +684,7 @@ bld_ml64.bat OnlyExplicitInline - ..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories) + ..\..\..;%(AdditionalIncludeDirectories) WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions) true @@ -638,7 +826,9 @@ bld_ml64.bat true + true true + true true true true @@ -689,4 +879,4 @@ bld_ml64.bat - \ No newline at end of file + diff --git a/mswin32/Makefile b/mswin32/Makefile index 5c090e52f..b6cebe33c 100644 --- a/mswin32/Makefile +++ b/mswin32/Makefile @@ -16,7 +16,7 @@ SIGNTOOL_SUBST = $(shell echo '"$(SIGNTOOL)" $(SIGNTOOL_ARGS)' | sed -e 's/"/$$\ PRODUCT_NAME=Nmap PLATFORM=Win32 -BASE_CONFIG=Release +BASE_CONFIG ?= Release VCCONFIG=$(BASE_CONFIG) NSIS_DEFINES= ifdef NMAP_OEM @@ -41,7 +41,7 @@ stage-nmap: build-nmap LICENSE # error on startup: 0xc0000022. cmd /c copy $(subst /,\\,$(NMAP_MSWIN32_AUX))\\OpenSSL\\bin\\*.dll nmap-$(NMAP_VERSION) cmd /c copy ..\\libssh2\\win32\\$(BASE_CONFIG)_dll\\libssh2.dll nmap-$(NMAP_VERSION) - cmd /c copy ..\\libz\\contrib\\vstudio\\vc12\\x86\\ZlibDll$(BASE_CONFIG)\\zlibwapi.dll nmap-$(NMAP_VERSION) + cmd /c copy ..\\libz\\contrib\\vstudio\\vc12\\x86\\ZlibDll$(BASE_CONFIG)WithoutAsm\\zlibwapi.dll nmap-$(NMAP_VERSION) mkdir nmap-$(NMAP_VERSION)/scripts cp -f $(NSE_FILES) nmap-$(NMAP_VERSION)/scripts/ for f in `cd .. && find nselib -name .svn -prune -o -type d -print`; do \ diff --git a/mswin32/nmap.sln b/mswin32/nmap.sln index 986d5abe3..05ea1e6d8 100644 --- a/mswin32/nmap.sln +++ b/mswin32/nmap.sln @@ -194,7 +194,6 @@ Global {A7BE3D76-F20C-40C5-8986-DE4028B3B57D}.ReleaseWithoutAsm|Win32.Build.0 = Release|Win32 {A7BE3D76-F20C-40C5-8986-DE4028B3B57D}.ReleaseWithoutAsm|x64.ActiveCfg = Release|Win32 {BBF27339-C7B6-4F52-B742-897796C1F13B}.Debug|Win32.ActiveCfg = Debug|Win32 - {BBF27339-C7B6-4F52-B742-897796C1F13B}.Debug|Win32.Build.0 = Debug|Win32 {BBF27339-C7B6-4F52-B742-897796C1F13B}.Debug|x64.ActiveCfg = Debug|Win32 {BBF27339-C7B6-4F52-B742-897796C1F13B}.Ncat Static|Win32.ActiveCfg = Release|Win32 {BBF27339-C7B6-4F52-B742-897796C1F13B}.Ncat Static|Win32.Build.0 = Release|Win32 @@ -206,20 +205,20 @@ Global {BBF27339-C7B6-4F52-B742-897796C1F13B}.ReleaseWithoutAsm|Win32.ActiveCfg = Release|Win32 {BBF27339-C7B6-4F52-B742-897796C1F13B}.ReleaseWithoutAsm|Win32.Build.0 = Release|Win32 {BBF27339-C7B6-4F52-B742-897796C1F13B}.ReleaseWithoutAsm|x64.ActiveCfg = Release|Win32 - {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.ActiveCfg = Debug|Win32 - {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.Build.0 = Debug|Win32 + {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.ActiveCfg = DebugWithoutAsm|Win32 + {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|Win32.Build.0 = DebugWithoutAsm|Win32 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|x64.ActiveCfg = Debug|x64 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Debug|x64.Build.0 = Debug|x64 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Ncat Static|Win32.ActiveCfg = Release|Win32 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Ncat Static|Win32.Build.0 = Release|Win32 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Ncat Static|x64.ActiveCfg = Release|x64 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Ncat Static|x64.Build.0 = Release|x64 - {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.ActiveCfg = Release|Win32 - {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.Build.0 = Release|Win32 + {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.ActiveCfg = ReleaseWithoutAsm|Win32 + {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|Win32.Build.0 = ReleaseWithoutAsm|Win32 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|x64.ActiveCfg = Release|x64 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.Release|x64.Build.0 = Release|x64 - {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseOEM|Win32.ActiveCfg = Release|Win32 - {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseOEM|Win32.Build.0 = Release|Win32 + {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseOEM|Win32.ActiveCfg = ReleaseWithoutAsm|Win32 + {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseOEM|Win32.Build.0 = ReleaseWithoutAsm|Win32 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseOEM|x64.ActiveCfg = ReleaseWithoutAsm|x64 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseOEM|x64.Build.0 = ReleaseWithoutAsm|x64 {8FD826F8-3739-44E6-8CC8-997122E53B8D}.ReleaseWithoutAsm|Win32.ActiveCfg = ReleaseWithoutAsm|Win32 @@ -242,7 +241,6 @@ Global {ED957342-E43B-496E-92D9-4C76B525BDF5}.ReleaseWithoutAsm|Win32.Build.0 = Release|Win32 {ED957342-E43B-496E-92D9-4C76B525BDF5}.ReleaseWithoutAsm|x64.ActiveCfg = Release|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}.Debug|x64.ActiveCfg = Debug|x64 {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Debug|x64.Build.0 = Debug|x64 {745DEC58-EBB3-47A9-A9B8-4C6627C01BF8}.Ncat Static|Win32.ActiveCfg = Release|Win32