mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 19:08:26 -06:00
Windows: Add support for ARM64 platform (e.g. Microsoft Surface Pro X). System encryption still not implemented on ARM64
This commit is contained in:
@@ -796,8 +796,6 @@ namespace VeraCrypt
|
||||
|
||||
if (Elevated)
|
||||
{
|
||||
DWORD bytesRead;
|
||||
|
||||
Elevator::ReadWriteFile (false, IsDevice, Path, buffer, FilePointerPosition, size, &bytesRead);
|
||||
FilePointerPosition += bytesRead;
|
||||
return bytesRead;
|
||||
@@ -5173,6 +5171,9 @@ namespace VeraCrypt
|
||||
if (CurrentOSMajor == 6 && CurrentOSMinor == 0 && CurrentOSServicePack < 1)
|
||||
throw ErrorException ("SYS_ENCRYPTION_UNSUPPORTED_ON_VISTA_SP0", SRC_POS);
|
||||
|
||||
if (IsARM())
|
||||
throw ErrorException ("SYS_ENCRYPTION_UNSUPPORTED_ON_CURRENT_OS", SRC_POS);
|
||||
|
||||
if (IsNonInstallMode())
|
||||
throw ErrorException ("FEATURE_REQUIRES_INSTALLATION", SRC_POS);
|
||||
|
||||
|
||||
@@ -506,6 +506,7 @@ END
|
||||
//
|
||||
// BIN
|
||||
//
|
||||
#ifndef ARM64
|
||||
|
||||
IDR_BOOT_SECTOR BIN "..\\Boot\\Windows\\Release\\BootSector.bin"
|
||||
IDR_BOOT_SECTOR_AES BIN "..\\Boot\\Windows\\Release_AES\\BootSector.bin"
|
||||
@@ -572,6 +573,7 @@ IDR_EFI_DCSBML32 BIN "..\\Boot\\EFI\\DcsBml32.efi"
|
||||
IDR_EFI_DCSRE32 BIN "..\\Boot\\EFI\\DcsRe32.efi"
|
||||
IDR_EFI_DCSINFO32 BIN "..\\Boot\\EFI\\DcsInfo32.efi"
|
||||
#endif
|
||||
#endif
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// XML
|
||||
|
||||
@@ -1195,6 +1195,8 @@ BOOL IsAesHwCpuSupported ()
|
||||
}
|
||||
|
||||
return state && !HwEncryptionDisabled;
|
||||
#elif defined (_M_ARM64)
|
||||
return 0;
|
||||
#else
|
||||
return (HasAESNI() && !HwEncryptionDisabled)? TRUE : FALSE;
|
||||
#endif
|
||||
@@ -1476,3 +1478,29 @@ void VcUnprotectKeys (PCRYPTO_INFO pCryptoInfo, uint64 encID)
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef _M_ARM64
|
||||
/* dummy implementation that should never be called */
|
||||
void aes_hw_cpu_decrypt(const byte* ks, byte* data)
|
||||
{
|
||||
ks = ks;
|
||||
data = data;
|
||||
}
|
||||
|
||||
void aes_hw_cpu_decrypt_32_blocks(const byte* ks, byte* data)
|
||||
{
|
||||
ks = ks;
|
||||
data = data;
|
||||
}
|
||||
|
||||
void aes_hw_cpu_encrypt(const byte* ks, byte* data)
|
||||
{
|
||||
ks = ks;
|
||||
data = data;
|
||||
}
|
||||
|
||||
void aes_hw_cpu_encrypt_32_blocks(const byte* ks, byte* data)
|
||||
{
|
||||
ks = ks;
|
||||
data = data;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -107,6 +107,15 @@ LOCAL_DEFINE_GUID(PARTITION_LDM_DATA_GUID, 0xAF9B60A0L, 0x1431, 0x4F62, 0x
|
||||
LOCAL_DEFINE_GUID(PARTITION_MSFT_RECOVERY_GUID, 0xDE94BBA4L, 0x06D1, 0x4D40, 0xA1, 0x6A, 0xBF, 0xD5, 0x01, 0x79, 0xD6, 0xAC); // Microsoft recovery partition
|
||||
LOCAL_DEFINE_GUID(PARTITION_CLUSTER_GUID, 0xdb97dba9L, 0x0840, 0x4bae, 0x97, 0xf0, 0xff, 0xb9, 0xa3, 0x27, 0xc7, 0xe1); // Cluster metadata partition
|
||||
|
||||
#ifndef PROCESSOR_ARCHITECTURE_ARM64
|
||||
#define PROCESSOR_ARCHITECTURE_ARM64 12
|
||||
#endif
|
||||
|
||||
#ifndef IMAGE_FILE_MACHINE_ARM64
|
||||
#define IMAGE_FILE_MACHINE_ARM64 0xAA64
|
||||
#endif
|
||||
|
||||
|
||||
using namespace VeraCrypt;
|
||||
|
||||
LONG DriverVersion;
|
||||
@@ -4409,7 +4418,7 @@ static int DriverLoad ()
|
||||
else
|
||||
*tmp = 0;
|
||||
|
||||
StringCbCatW (driverPath, sizeof(driverPath), !Is64BitOs () ? L"\\veracrypt.sys" : L"\\veracrypt-x64.sys");
|
||||
StringCbCatW (driverPath, sizeof(driverPath), !Is64BitOs () ? L"\\veracrypt.sys" : IsARM()? L"\\veracrypt-arm64.sys" : L"\\veracrypt-x64.sys");
|
||||
|
||||
file = FindFirstFile (driverPath, &find);
|
||||
|
||||
@@ -10753,30 +10762,94 @@ BOOL IsOSVersionAtLeast (OSVersionEnum reqMinOS, int reqMinServicePack)
|
||||
}
|
||||
|
||||
|
||||
BOOL Is64BitOs ()
|
||||
BOOL Is64BitOs()
|
||||
{
|
||||
#ifdef _WIN64
|
||||
return TRUE;
|
||||
#else
|
||||
static BOOL isWow64 = FALSE;
|
||||
static BOOL isWow64 = FALSE;
|
||||
static BOOL valid = FALSE;
|
||||
typedef BOOL (__stdcall *LPFN_ISWOW64PROCESS ) (HANDLE hProcess,PBOOL Wow64Process);
|
||||
typedef BOOL(__stdcall* LPFN_ISWOW64PROCESS) (HANDLE hProcess, PBOOL Wow64Process);
|
||||
typedef BOOL(__stdcall* LPFN_ISWOW64PROCESS2)(
|
||||
HANDLE hProcess,
|
||||
USHORT* pProcessMachine,
|
||||
USHORT* pNativeMachine
|
||||
);
|
||||
LPFN_ISWOW64PROCESS fnIsWow64Process;
|
||||
LPFN_ISWOW64PROCESS2 fnIsWow64Process2;
|
||||
|
||||
if (valid)
|
||||
return isWow64;
|
||||
|
||||
fnIsWow64Process = (LPFN_ISWOW64PROCESS) GetProcAddress (GetModuleHandle(L"kernel32"), "IsWow64Process");
|
||||
fnIsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress(GetModuleHandle(L"kernel32"), "IsWow64Process");
|
||||
fnIsWow64Process2 = (LPFN_ISWOW64PROCESS2)GetProcAddress(GetModuleHandle(L"kernel32"), "IsWow64Process2");
|
||||
|
||||
if (fnIsWow64Process != NULL)
|
||||
if (!fnIsWow64Process (GetCurrentProcess(), &isWow64))
|
||||
if (fnIsWow64Process2)
|
||||
{
|
||||
USHORT processMachine, nativeMachine;
|
||||
if (!fnIsWow64Process2(GetCurrentProcess(), &processMachine, &nativeMachine))
|
||||
isWow64 = FALSE;
|
||||
|
||||
else
|
||||
{
|
||||
if (IMAGE_FILE_MACHINE_ARM64 == nativeMachine || IMAGE_FILE_MACHINE_AMD64 == nativeMachine || IMAGE_FILE_MACHINE_IA64 == nativeMachine || IMAGE_FILE_MACHINE_ALPHA64 == nativeMachine)
|
||||
isWow64 = TRUE;
|
||||
}
|
||||
}
|
||||
else if (fnIsWow64Process != NULL)
|
||||
{
|
||||
if (!fnIsWow64Process(GetCurrentProcess(), &isWow64))
|
||||
isWow64 = FALSE;
|
||||
}
|
||||
valid = TRUE;
|
||||
return isWow64;
|
||||
return isWow64;
|
||||
#endif
|
||||
}
|
||||
|
||||
BOOL IsARM()
|
||||
{
|
||||
#if defined(_M_ARM) || defined(_M_ARM64)
|
||||
return TRUE;
|
||||
#else
|
||||
static BOOL isARM = FALSE;
|
||||
static BOOL valid = FALSE;
|
||||
typedef BOOL(__stdcall* LPFN_ISWOW64PROCESS2)(
|
||||
HANDLE hProcess,
|
||||
USHORT* pProcessMachine,
|
||||
USHORT* pNativeMachine
|
||||
);
|
||||
LPFN_ISWOW64PROCESS2 fnIsWow64Process2;
|
||||
|
||||
if (valid)
|
||||
return isARM;
|
||||
|
||||
fnIsWow64Process2 = (LPFN_ISWOW64PROCESS2)GetProcAddress(GetModuleHandle(L"kernel32"), "IsWow64Process2");
|
||||
if (fnIsWow64Process2)
|
||||
{
|
||||
USHORT processMachine, nativeMachine;
|
||||
if (fnIsWow64Process2(GetCurrentProcess(), &processMachine, &nativeMachine))
|
||||
{
|
||||
if (IMAGE_FILE_MACHINE_ARM64 == nativeMachine || IMAGE_FILE_MACHINE_AMD64 == nativeMachine || IMAGE_FILE_MACHINE_IA64 == nativeMachine || IMAGE_FILE_MACHINE_ALPHA64 == nativeMachine)
|
||||
isARM = TRUE;
|
||||
else
|
||||
isARM = FALSE;
|
||||
valid = TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if (!valid)
|
||||
{
|
||||
SYSTEM_INFO systemInfo;
|
||||
GetNativeSystemInfo(&systemInfo);
|
||||
if (systemInfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_ARM || systemInfo.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_ARM64)
|
||||
isARM = TRUE;
|
||||
else
|
||||
isARM = FALSE;
|
||||
}
|
||||
valid = TRUE;
|
||||
return isARM;
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
BOOL IsServerOS ()
|
||||
{
|
||||
@@ -10946,7 +11019,7 @@ std::wstring GetWindowsEdition ()
|
||||
osname += L"-basic";
|
||||
|
||||
if (Is64BitOs())
|
||||
osname += L"-x64";
|
||||
osname += IsARM()? L"-arm64" : L"-x64";
|
||||
|
||||
if (CurrentOSServicePack > 0)
|
||||
{
|
||||
@@ -15007,7 +15080,11 @@ BOOL GetHibernateStatus (BOOL& bHibernateEnabled, BOOL& bHiberbootEnabled)
|
||||
}
|
||||
|
||||
// check if Fast Startup / Hybrid Boot is enabled
|
||||
if (IsOSVersionAtLeast (WIN_8, 0) && spc.spare2[0])
|
||||
#if _MSC_VER >= 1900
|
||||
if (IsOSVersionAtLeast (WIN_8, 0) && spc.Hiberboot)
|
||||
#else
|
||||
if (IsOSVersionAtLeast(WIN_8, 0) && spc.spare2[0])
|
||||
#endif
|
||||
{
|
||||
dwHiberbootEnabled = 1;
|
||||
ReadLocalMachineRegistryDword (L"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Power", L"HiberbootEnabled", &dwHiberbootEnabled);
|
||||
|
||||
@@ -472,6 +472,7 @@ void DebugMsgBox (char *format, ...);
|
||||
BOOL IsOSAtLeast (OSVersionEnum reqMinOS);
|
||||
BOOL IsOSVersionAtLeast (OSVersionEnum reqMinOS, int reqMinServicePack);
|
||||
BOOL Is64BitOs ();
|
||||
BOOL IsARM();
|
||||
BOOL IsServerOS ();
|
||||
BOOL IsHiddenOSRunning (void);
|
||||
BOOL EnableWow64FsRedirection (BOOL enable);
|
||||
|
||||
@@ -91,7 +91,7 @@ void hmac_sha256
|
||||
NTSTATUS saveStatus = STATUS_INVALID_PARAMETER;
|
||||
#ifdef _WIN64
|
||||
XSTATE_SAVE SaveState;
|
||||
if (g_isIntel && HasSAVX())
|
||||
if (IsCpuIntel() && HasSAVX())
|
||||
saveStatus = KeSaveExtendedProcessorStateVC(XSTATE_MASK_GSSE, &SaveState);
|
||||
#else
|
||||
KFLOATING_SAVE floatingPointState;
|
||||
@@ -218,7 +218,7 @@ void derive_key_sha256 (char *pwd, int pwd_len, char *salt, int salt_len, uint32
|
||||
NTSTATUS saveStatus = STATUS_INVALID_PARAMETER;
|
||||
#ifdef _WIN64
|
||||
XSTATE_SAVE SaveState;
|
||||
if (g_isIntel && HasSAVX())
|
||||
if (IsCpuIntel() && HasSAVX())
|
||||
saveStatus = KeSaveExtendedProcessorStateVC(XSTATE_MASK_GSSE, &SaveState);
|
||||
#else
|
||||
KFLOATING_SAVE floatingPointState;
|
||||
@@ -361,7 +361,7 @@ void hmac_sha512
|
||||
NTSTATUS saveStatus = STATUS_INVALID_PARAMETER;
|
||||
#ifdef _WIN64
|
||||
XSTATE_SAVE SaveState;
|
||||
if (g_isIntel && HasSAVX())
|
||||
if (IsCpuIntel() && HasSAVX())
|
||||
saveStatus = KeSaveExtendedProcessorStateVC(XSTATE_MASK_GSSE, &SaveState);
|
||||
#else
|
||||
KFLOATING_SAVE floatingPointState;
|
||||
@@ -463,7 +463,7 @@ void derive_key_sha512 (char *pwd, int pwd_len, char *salt, int salt_len, uint32
|
||||
NTSTATUS saveStatus = STATUS_INVALID_PARAMETER;
|
||||
#ifdef _WIN64
|
||||
XSTATE_SAVE SaveState;
|
||||
if (g_isIntel && HasSAVX())
|
||||
if (IsCpuIntel() && HasSAVX())
|
||||
saveStatus = KeSaveExtendedProcessorStateVC(XSTATE_MASK_GSSE, &SaveState);
|
||||
#else
|
||||
KFLOATING_SAVE floatingPointState;
|
||||
@@ -1277,7 +1277,9 @@ int get_pkcs5_iteration_count (int pkcs5_prf_id, int pim, BOOL truecryptMode, BO
|
||||
default:
|
||||
TC_THROW_FATAL_EXCEPTION; // Unknown/wrong ID
|
||||
}
|
||||
#if _MSC_VER < 1900
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
int is_pkcs5_prf_supported (int pkcs5_prf_id, BOOL truecryptMode, PRF_BOOT_TYPE bootType)
|
||||
|
||||
366
src/Common/Zip_vs2019.vcxproj
Normal file
366
src/Common/Zip_vs2019.vcxproj
Normal file
@@ -0,0 +1,366 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|ARM64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>ARM64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|ARM64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>ARM64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="libzip\zip_add.c" />
|
||||
<ClCompile Include="libzip\zip_add_dir.c" />
|
||||
<ClCompile Include="libzip\zip_add_entry.c" />
|
||||
<ClCompile Include="libzip\zip_algorithm_deflate.c" />
|
||||
<ClCompile Include="libzip\zip_buffer.c" />
|
||||
<ClCompile Include="libzip\zip_close.c" />
|
||||
<ClCompile Include="libzip\zip_delete.c" />
|
||||
<ClCompile Include="libzip\zip_dirent.c" />
|
||||
<ClCompile Include="libzip\zip_dir_add.c" />
|
||||
<ClCompile Include="libzip\zip_discard.c" />
|
||||
<ClCompile Include="libzip\zip_entry.c" />
|
||||
<ClCompile Include="libzip\zip_error.c" />
|
||||
<ClCompile Include="libzip\zip_error_clear.c" />
|
||||
<ClCompile Include="libzip\zip_error_get.c" />
|
||||
<ClCompile Include="libzip\zip_error_get_sys_type.c" />
|
||||
<ClCompile Include="libzip\zip_error_strerror.c" />
|
||||
<ClCompile Include="libzip\zip_err_str.c" />
|
||||
<ClCompile Include="libzip\zip_extra_field.c" />
|
||||
<ClCompile Include="libzip\zip_extra_field_api.c" />
|
||||
<ClCompile Include="libzip\zip_fclose.c" />
|
||||
<ClCompile Include="libzip\zip_fdopen.c" />
|
||||
<ClCompile Include="libzip\zip_filerange_crc.c" />
|
||||
<ClCompile Include="libzip\zip_file_add.c" />
|
||||
<ClCompile Include="libzip\zip_file_error_clear.c" />
|
||||
<ClCompile Include="libzip\zip_file_error_get.c" />
|
||||
<ClCompile Include="libzip\zip_file_get_comment.c" />
|
||||
<ClCompile Include="libzip\zip_file_get_external_attributes.c" />
|
||||
<ClCompile Include="libzip\zip_file_get_offset.c" />
|
||||
<ClCompile Include="libzip\zip_file_rename.c" />
|
||||
<ClCompile Include="libzip\zip_file_replace.c" />
|
||||
<ClCompile Include="libzip\zip_file_set_comment.c" />
|
||||
<ClCompile Include="libzip\zip_file_set_external_attributes.c" />
|
||||
<ClCompile Include="libzip\zip_file_set_mtime.c" />
|
||||
<ClCompile Include="libzip\zip_file_strerror.c" />
|
||||
<ClCompile Include="libzip\zip_fopen.c" />
|
||||
<ClCompile Include="libzip\zip_fopen_encrypted.c" />
|
||||
<ClCompile Include="libzip\zip_fopen_index.c" />
|
||||
<ClCompile Include="libzip\zip_fopen_index_encrypted.c" />
|
||||
<ClCompile Include="libzip\zip_fread.c" />
|
||||
<ClCompile Include="libzip\zip_get_archive_comment.c" />
|
||||
<ClCompile Include="libzip\zip_get_archive_flag.c" />
|
||||
<ClCompile Include="libzip\zip_get_encryption_implementation.c" />
|
||||
<ClCompile Include="libzip\zip_get_file_comment.c" />
|
||||
<ClCompile Include="libzip\zip_get_name.c" />
|
||||
<ClCompile Include="libzip\zip_get_num_entries.c" />
|
||||
<ClCompile Include="libzip\zip_get_num_files.c" />
|
||||
<ClCompile Include="libzip\zip_hash.c" />
|
||||
<ClCompile Include="libzip\zip_io_util.c" />
|
||||
<ClCompile Include="libzip\zip_memdup.c" />
|
||||
<ClCompile Include="libzip\zip_name_locate.c" />
|
||||
<ClCompile Include="libzip\zip_new.c" />
|
||||
<ClCompile Include="libzip\zip_open.c" />
|
||||
<ClCompile Include="libzip\zip_pkware.c" />
|
||||
<ClCompile Include="libzip\zip_progress.c" />
|
||||
<ClCompile Include="libzip\zip_rename.c" />
|
||||
<ClCompile Include="libzip\zip_replace.c" />
|
||||
<ClCompile Include="libzip\zip_set_archive_comment.c" />
|
||||
<ClCompile Include="libzip\zip_set_archive_flag.c" />
|
||||
<ClCompile Include="libzip\zip_set_default_password.c" />
|
||||
<ClCompile Include="libzip\zip_set_file_comment.c" />
|
||||
<ClCompile Include="libzip\zip_set_file_compression.c" />
|
||||
<ClCompile Include="libzip\zip_set_name.c" />
|
||||
<ClCompile Include="libzip\zip_source_accept_empty.c" />
|
||||
<ClCompile Include="libzip\zip_source_begin_write.c" />
|
||||
<ClCompile Include="libzip\zip_source_begin_write_cloning.c" />
|
||||
<ClCompile Include="libzip\zip_source_buffer.c" />
|
||||
<ClCompile Include="libzip\zip_source_call.c" />
|
||||
<ClCompile Include="libzip\zip_source_close.c" />
|
||||
<ClCompile Include="libzip\zip_source_commit_write.c" />
|
||||
<ClCompile Include="libzip\zip_source_compress.c" />
|
||||
<ClCompile Include="libzip\zip_source_crc.c" />
|
||||
<ClCompile Include="libzip\zip_source_error.c" />
|
||||
<ClCompile Include="libzip\zip_source_file_common.c" />
|
||||
<ClCompile Include="libzip\zip_source_file_stdio.c" />
|
||||
<ClCompile Include="libzip\zip_source_file_win32.c" />
|
||||
<ClCompile Include="libzip\zip_source_file_win32_named.c" />
|
||||
<ClCompile Include="libzip\zip_source_file_win32_utf16.c" />
|
||||
<ClCompile Include="libzip\zip_source_file_win32_utf8.c" />
|
||||
<ClCompile Include="libzip\zip_source_free.c" />
|
||||
<ClCompile Include="libzip\zip_source_function.c" />
|
||||
<ClCompile Include="libzip\zip_source_get_file_attributes.c" />
|
||||
<ClCompile Include="libzip\zip_source_is_deleted.c" />
|
||||
<ClCompile Include="libzip\zip_source_layered.c" />
|
||||
<ClCompile Include="libzip\zip_source_open.c" />
|
||||
<ClCompile Include="libzip\zip_source_pkware_decode.c" />
|
||||
<ClCompile Include="libzip\zip_source_pkware_encode.c" />
|
||||
<ClCompile Include="libzip\zip_source_read.c" />
|
||||
<ClCompile Include="libzip\zip_source_remove.c" />
|
||||
<ClCompile Include="libzip\zip_source_rollback_write.c" />
|
||||
<ClCompile Include="libzip\zip_source_seek.c" />
|
||||
<ClCompile Include="libzip\zip_source_seek_write.c" />
|
||||
<ClCompile Include="libzip\zip_source_stat.c" />
|
||||
<ClCompile Include="libzip\zip_source_supports.c" />
|
||||
<ClCompile Include="libzip\zip_source_tell.c" />
|
||||
<ClCompile Include="libzip\zip_source_tell_write.c" />
|
||||
<ClCompile Include="libzip\zip_source_window.c" />
|
||||
<ClCompile Include="libzip\zip_source_write.c" />
|
||||
<ClCompile Include="libzip\zip_source_zip.c" />
|
||||
<ClCompile Include="libzip\zip_source_zip_new.c" />
|
||||
<ClCompile Include="libzip\zip_stat.c" />
|
||||
<ClCompile Include="libzip\zip_stat_index.c" />
|
||||
<ClCompile Include="libzip\zip_stat_init.c" />
|
||||
<ClCompile Include="libzip\zip_strerror.c" />
|
||||
<ClCompile Include="libzip\zip_string.c" />
|
||||
<ClCompile Include="libzip\zip_unchange.c" />
|
||||
<ClCompile Include="libzip\zip_unchange_all.c" />
|
||||
<ClCompile Include="libzip\zip_unchange_archive.c" />
|
||||
<ClCompile Include="libzip\zip_unchange_data.c" />
|
||||
<ClCompile Include="libzip\zip_utf-8.c" />
|
||||
<ClCompile Include="zlib\adler32.c" />
|
||||
<ClCompile Include="zlib\compress.c" />
|
||||
<ClCompile Include="zlib\crc32.c" />
|
||||
<ClCompile Include="zlib\deflate.c" />
|
||||
<ClCompile Include="zlib\inffast.c" />
|
||||
<ClCompile Include="zlib\inflate.c" />
|
||||
<ClCompile Include="zlib\inftrees.c" />
|
||||
<ClCompile Include="zlib\trees.c" />
|
||||
<ClCompile Include="zlib\uncompr.c" />
|
||||
<ClCompile Include="zlib\zutil.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="libzip\compat.h" />
|
||||
<ClInclude Include="libzip\config.h" />
|
||||
<ClInclude Include="libzip\zconf.h" />
|
||||
<ClInclude Include="libzip\zip.h" />
|
||||
<ClInclude Include="libzip\zipconf.h" />
|
||||
<ClInclude Include="libzip\zipint.h" />
|
||||
<ClInclude Include="libzip\zip_source_file.h" />
|
||||
<ClInclude Include="libzip\zip_source_file_stdio.h" />
|
||||
<ClInclude Include="libzip\zip_source_file_win32.h" />
|
||||
<ClInclude Include="zlib\crc32.h" />
|
||||
<ClInclude Include="zlib\deflate.h" />
|
||||
<ClInclude Include="zlib\inffast.h" />
|
||||
<ClInclude Include="zlib\inffixed.h" />
|
||||
<ClInclude Include="zlib\inflate.h" />
|
||||
<ClInclude Include="zlib\inftrees.h" />
|
||||
<ClInclude Include="zlib\trees.h" />
|
||||
<ClInclude Include="zlib\zconf.h" />
|
||||
<ClInclude Include="zlib\zlib.h" />
|
||||
<ClInclude Include="zlib\zutil.h" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{6316EE71-0210-4CA4-BCC7-CFB7A3C090FC}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>Zip</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||
<ProjectName>Zip</ProjectName>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<OutDir>$(Platform)\$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<OutDir>$(Platform)\$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||
<OutDir>$(Platform)\$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<OutDir>$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||
<OutDir>$(Platform)\$(Configuration)\</OutDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CRT_NONSTDC_NO_WARNINGS;_LIB;WIN32;HAVE_CONFIG_H;ZIP_STATIC;DEBUG;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NON_CONFORMING_SWPRINTFS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>zlib;libzip</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CRT_NONSTDC_NO_WARNINGS;_LIB;WIN32;HAVE_CONFIG_H;ZIP_STATIC;DEBUG;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NON_CONFORMING_SWPRINTFS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>zlib;libzip</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CRT_NONSTDC_NO_WARNINGS;_LIB;WIN32;HAVE_CONFIG_H;ZIP_STATIC;DEBUG;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NON_CONFORMING_SWPRINTFS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>zlib;libzip</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>_CRT_NONSTDC_NO_WARNINGS;_LIB;WIN32;HAVE_CONFIG_H;ZIP_STATIC;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NON_CONFORMING_SWPRINTFS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>zlib;libzip</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>_CRT_NONSTDC_NO_WARNINGS;_LIB;WIN32;HAVE_CONFIG_H;ZIP_STATIC;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NON_CONFORMING_SWPRINTFS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>zlib;libzip</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<PreprocessorDefinitions>_CRT_NONSTDC_NO_WARNINGS;_LIB;WIN32;HAVE_CONFIG_H;ZIP_STATIC;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NON_CONFORMING_SWPRINTFS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<AdditionalIncludeDirectories>zlib;libzip</AdditionalIncludeDirectories>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
4
src/Common/Zip_vs2019.vcxproj.user
Normal file
4
src/Common/Zip_vs2019.vcxproj.user
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup />
|
||||
</Project>
|
||||
Reference in New Issue
Block a user