aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2020-04-01 00:13:11 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2020-04-01 18:31:04 +0200
commita2495bd1ac9e5e54074d65616de0efa822a6309e (patch)
treee8a186b06bb4a94faafd7826b1ddc7c65112e824
parentb3f2636f44eea1a8b6fbf892d2daa611cff9d4af (diff)
Add preliminary VisualStudio support
- Mostly workarounds/clutches in compat.h - Change getline return type to int - Replace C99 style flexible array with alloca - Add all the MSVC solution/project crap Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
-rw-r--r--Makefile.am1
-rw-r--r--include/compat.h23
-rw-r--r--include/win32/config.h12
-rw-r--r--lib/compat/getline.c2
-rw-r--r--lib/sqfs/Makemodule.am2
-rw-r--r--lib/sqfs/comp/compressor.c4
-rw-r--r--lib/sqfs/libsqfs.vcxproj230
-rw-r--r--lib/sqfs/write_inode.c9
-rw-r--r--squashfs-tools-ng.sln31
-rw-r--r--squashfs-tools-ng.vcxproj145
10 files changed, 445 insertions, 14 deletions
diff --git a/Makefile.am b/Makefile.am
index 7d4f9ba..f55cf18 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,6 +18,7 @@ check_SCRIPTS =
pkgconfig_DATA =
EXTRA_DIST = autogen.sh README.md CHANGELOG.md COPYING.md mkwinbins.sh licenses
+EXTRA_DIST += squashfs-tools-ng.sln squashfs-tools-ng.vcxproj
TESTS =
include lib/sqfs/Makemodule.am
diff --git a/include/compat.h b/include/compat.h
index b2bb054..5d7a052 100644
--- a/include/compat.h
+++ b/include/compat.h
@@ -27,6 +27,10 @@
# define SZ_ADD_OV __builtin_add_overflow
# define SZ_MUL_OV __builtin_mul_overflow
# endif
+#elif defined(_MSC_VER)
+# include <intsafe.h>
+# define SZ_ADD_OV SizeTAdd
+# define SZ_MUL_OV SizeTMult
#else
# error I do not know how to trap integer overflows with this compiler
#endif
@@ -40,7 +44,13 @@
# define PRI_U32 "%" PRIu32
#endif
-#if SIZEOF_SIZE_T <= SIZEOF_INT
+#ifdef _MSC_VER
+# ifdef _WIN64
+# define PRI_SZ PRI_U64
+# else
+# define PRI_SZ PRI_U32
+# endif
+#elif SIZEOF_SIZE_T <= SIZEOF_INT
# define PRI_SZ "%u"
#elif SIZEOF_SIZE_T == SIZEOF_LONG
# define PRI_SZ "%lu"
@@ -73,8 +83,17 @@
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
+
+#include <malloc.h>
+
+#ifdef _MSC_VER
+# define alloca _alloca
+#endif
+
+#define strdup _strdup
#else
#include <endian.h>
+#include <alloca.h>
#endif
#if defined(_WIN32) || defined(__WINDOWS__)
@@ -167,7 +186,7 @@ int chdir(const char *path);
#ifndef HAVE_GETLINE
#include <stdio.h>
-ssize_t getline(char **line, size_t *n, FILE *fp);
+int getline(char **line, size_t *n, FILE *fp);
#endif
#ifndef HAVE_STRNDUP
diff --git a/include/win32/config.h b/include/win32/config.h
new file mode 100644
index 0000000..00ec3bb
--- /dev/null
+++ b/include/win32/config.h
@@ -0,0 +1,12 @@
+/* SPDX-License-Identifier: LGPL-3.0-or-later */
+/*
+ * config.h - manually created stub for MSVC
+ *
+ * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at>
+ */
+#ifndef CONFIG_H
+#define CONFIG_H
+
+
+
+#endif /* CONFIG_H */
diff --git a/lib/compat/getline.c b/lib/compat/getline.c
index e63c50e..d7e456b 100644
--- a/lib/compat/getline.c
+++ b/lib/compat/getline.c
@@ -11,7 +11,7 @@
#include <stdlib.h>
#ifndef HAVE_GETLINE
-ssize_t getline(char **line, size_t *n, FILE *fp)
+int getline(char **line, size_t *n, FILE *fp)
{
size_t new_cap, len = 0, cap = 0;
char *buffer = NULL, *new;
diff --git a/lib/sqfs/Makemodule.am b/lib/sqfs/Makemodule.am
index 942c37c..6786ee2 100644
--- a/lib/sqfs/Makemodule.am
+++ b/lib/sqfs/Makemodule.am
@@ -113,3 +113,5 @@ lib_LTLIBRARIES += libsquashfs.la
pkgconfig_DATA += lib/sqfs/libsquashfs0.pc
EXTRA_DIST += lib/sqfs/comp/lz4/README lib/sqfs/comp/zlib/README
+EXTRA_DIST += lib/sqfs/libsqfs.vcxproj
+EXTRA_DIST += include/win32/config.h
diff --git a/lib/sqfs/comp/compressor.c b/lib/sqfs/comp/compressor.c
index 946ee25..2294b98 100644
--- a/lib/sqfs/comp/compressor.c
+++ b/lib/sqfs/comp/compressor.c
@@ -42,7 +42,7 @@ static const char *names[] = {
int sqfs_generic_write_options(sqfs_file_t *file, const void *data, size_t size)
{
- sqfs_u8 buffer[size + 2];
+ sqfs_u8 *buffer = alloca(size + 2);
int ret;
*((sqfs_u16 *)buffer) = htole16(0x8000 | size);
@@ -58,7 +58,7 @@ int sqfs_generic_write_options(sqfs_file_t *file, const void *data, size_t size)
int sqfs_generic_read_options(sqfs_file_t *file, void *data, size_t size)
{
- sqfs_u8 buffer[size + 2];
+ sqfs_u8 *buffer = alloca(size + 2);
int ret;
ret = file->read_at(file, sizeof(sqfs_super_t),
diff --git a/lib/sqfs/libsqfs.vcxproj b/lib/sqfs/libsqfs.vcxproj
new file mode 100644
index 0000000..176ba20
--- /dev/null
+++ b/lib/sqfs/libsqfs.vcxproj
@@ -0,0 +1,230 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>16.0</VCProjectVersion>
+ <ProjectGuid>{7F732A8E-22A5-4DC1-B8DB-7091D37BE502}</ProjectGuid>
+ <RootNamespace>libsqfs</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+ <ProjectName>squashfs</ProjectName>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>DynamicLibrary</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </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 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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <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|x64'">
+ <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|Win32'">
+ <LinkIncremental>true</LinkIncremental>
+ <OutDir>$(SolutionDir)$(Configuration)\</OutDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <LinkIncremental>false</LinkIncremental>
+ <OutDir>$(SolutionDir)$(Configuration)\</OutDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;WITH_GZIP;WITH_LZ4;NO_GZIP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <AdditionalIncludeDirectories>$(SolutionDir)\include;$(SolutionDir)\include\win32;$(SolutionDir)\lib\sqfs\comp\zlib;$(SolutionDir)\lib\sqfs\comp\lz4;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <CompileAs>CompileAsC</CompileAs>
+ <ObjectFileName>$(IntDir)%(RelativeDir)</ObjectFileName>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;WITH_GZIP;WITH_LZ4;NO_GZIP;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ <AdditionalIncludeDirectories>$(SolutionDir)\include;$(SolutionDir)\include\win32;$(SolutionDir)\lib\sqfs\comp\zlib;$(SolutionDir)\lib\sqfs\comp\lz4;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <CompileAs>CompileAsC</CompileAs>
+ <ObjectFileName>$(IntDir)%(RelativeDir)</ObjectFileName>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\include\sqfs\block.h" />
+ <ClInclude Include="..\..\include\sqfs\block_processor.h" />
+ <ClInclude Include="..\..\include\sqfs\block_writer.h" />
+ <ClInclude Include="..\..\include\sqfs\compressor.h" />
+ <ClInclude Include="..\..\include\sqfs\data_reader.h" />
+ <ClInclude Include="..\..\include\sqfs\dir.h" />
+ <ClInclude Include="..\..\include\sqfs\dir_reader.h" />
+ <ClInclude Include="..\..\include\sqfs\dir_writer.h" />
+ <ClInclude Include="..\..\include\sqfs\error.h" />
+ <ClInclude Include="..\..\include\sqfs\frag_table.h" />
+ <ClInclude Include="..\..\include\sqfs\id_table.h" />
+ <ClInclude Include="..\..\include\sqfs\inode.h" />
+ <ClInclude Include="..\..\include\sqfs\io.h" />
+ <ClInclude Include="..\..\include\sqfs\meta_reader.h" />
+ <ClInclude Include="..\..\include\sqfs\meta_writer.h" />
+ <ClInclude Include="..\..\include\sqfs\predef.h" />
+ <ClInclude Include="..\..\include\sqfs\super.h" />
+ <ClInclude Include="..\..\include\sqfs\table.h" />
+ <ClInclude Include="..\..\include\sqfs\xattr.h" />
+ <ClInclude Include="..\..\include\sqfs\xattr_reader.h" />
+ <ClInclude Include="..\..\include\sqfs\xattr_writer.h" />
+ <ClInclude Include="..\..\include\win32\config.h" />
+ <ClInclude Include="block_processor\internal.h" />
+ <ClInclude Include="comp\internal.h" />
+ <ClInclude Include="comp\lz4\lz4.h" />
+ <ClInclude Include="comp\lz4\lz4hc.h" />
+ <ClInclude Include="comp\zlib\deflate.h" />
+ <ClInclude Include="comp\zlib\inffast.h" />
+ <ClInclude Include="comp\zlib\inffixed.h" />
+ <ClInclude Include="comp\zlib\inflate.h" />
+ <ClInclude Include="comp\zlib\inftrees.h" />
+ <ClInclude Include="comp\zlib\trees.h" />
+ <ClInclude Include="comp\zlib\zconf.h" />
+ <ClInclude Include="comp\zlib\zlib.h" />
+ <ClInclude Include="comp\zlib\zutil.h" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\util\alloc.c" />
+ <ClCompile Include="..\util\str_table.c" />
+ <ClCompile Include="..\util\xxhash.c" />
+ <ClCompile Include="block_processor\common.c" />
+ <ClCompile Include="block_processor\winpthread.c" />
+ <ClCompile Include="block_writer.c" />
+ <ClCompile Include="comp\compressor.c" />
+ <ClCompile Include="comp\gzip.c" />
+ <ClCompile Include="comp\lz4.c" />
+ <ClCompile Include="comp\lz4\lz4.c" />
+ <ClCompile Include="comp\lz4\lz4hc.c" />
+ <ClCompile Include="comp\zlib\adler32.c" />
+ <ClCompile Include="comp\zlib\deflate.c" />
+ <ClCompile Include="comp\zlib\inffast.c" />
+ <ClCompile Include="comp\zlib\inflate.c" />
+ <ClCompile Include="comp\zlib\inftrees.c" />
+ <ClCompile Include="comp\zlib\trees.c" />
+ <ClCompile Include="comp\zlib\zutil.c" />
+ <ClCompile Include="data_reader.c" />
+ <ClCompile Include="dir_reader.c" />
+ <ClCompile Include="dir_writer.c" />
+ <ClCompile Include="frag_table.c" />
+ <ClCompile Include="id_table.c" />
+ <ClCompile Include="inode.c" />
+ <ClCompile Include="meta_reader.c" />
+ <ClCompile Include="meta_writer.c" />
+ <ClCompile Include="readdir.c" />
+ <ClCompile Include="read_inode.c" />
+ <ClCompile Include="read_super.c" />
+ <ClCompile Include="read_table.c" />
+ <ClCompile Include="read_tree.c" />
+ <ClCompile Include="super.c" />
+ <ClCompile Include="win32\io_file.c" />
+ <ClCompile Include="write_inode.c" />
+ <ClCompile Include="write_super.c" />
+ <ClCompile Include="write_table.c" />
+ <ClCompile Include="xattr.c" />
+ <ClCompile Include="xattr_reader.c" />
+ <ClCompile Include="xattr_writer.c" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/lib/sqfs/write_inode.c b/lib/sqfs/write_inode.c
index 787c4b5..d27d1b4 100644
--- a/lib/sqfs/write_inode.c
+++ b/lib/sqfs/write_inode.c
@@ -15,15 +15,6 @@
#include <string.h>
-#if defined(_WIN32) || defined(__WINDOWS__)
-# include <malloc.h>
-# ifdef _MSC_VER
-# define alloca _alloca
-# endif
-#else
-# include <alloca.h>
-#endif
-
static int write_block_sizes(sqfs_meta_writer_t *ir,
const sqfs_inode_generic_t *n)
{
diff --git a/squashfs-tools-ng.sln b/squashfs-tools-ng.sln
new file mode 100644
index 0000000..418bcc5
--- /dev/null
+++ b/squashfs-tools-ng.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.29926.136
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsqfs", "lib\sqfs\libsqfs.vcxproj", "{7F732A8E-22A5-4DC1-B8DB-7091D37BE502}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Debug|x64.ActiveCfg = Debug|x64
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Debug|x64.Build.0 = Debug|x64
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Debug|x86.ActiveCfg = Debug|Win32
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Debug|x86.Build.0 = Debug|Win32
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Release|x64.ActiveCfg = Release|x64
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Release|x64.Build.0 = Release|x64
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Release|x86.ActiveCfg = Release|Win32
+ {7F732A8E-22A5-4DC1-B8DB-7091D37BE502}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {922C1643-B534-47CC-A7AD-81F7090BF34B}
+ EndGlobalSection
+EndGlobal
diff --git a/squashfs-tools-ng.vcxproj b/squashfs-tools-ng.vcxproj
new file mode 100644
index 0000000..c4b8ee1
--- /dev/null
+++ b/squashfs-tools-ng.vcxproj
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <VCProjectVersion>16.0</VCProjectVersion>
+ <ProjectGuid>{25DDF12C-B25D-4A92-9633-5315BFDC0D0C}</ProjectGuid>
+ <RootNamespace>squashfstoolsng</RootNamespace>
+ <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>true</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <UseDebugLibraries>false</UseDebugLibraries>
+ <PlatformToolset>v142</PlatformToolset>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ <CharacterSet>Unicode</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Label="Shared">
+ </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 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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <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|x64'">
+ <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|Win32'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <LinkIncremental>true</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <LinkIncremental>false</LinkIncremental>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+ <ClCompile>
+ <WarningLevel>Level3</WarningLevel>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <SDLCheck>true</SDLCheck>
+ <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <ConformanceMode>true</ConformanceMode>
+ </ClCompile>
+ <Link>
+ <SubSystem>Console</SubSystem>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <OptimizeReferences>true</OptimizeReferences>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file