diff options
-rw-r--r-- | difftool/compare_files.c | 2 | ||||
-rw-r--r-- | difftool/sqfsdiff.h | 5 | ||||
-rw-r--r-- | difftool/sqfsdiff.vcxproj | 188 | ||||
-rw-r--r-- | difftool/sqfsdiff.vcxproj.filters | 44 | ||||
-rw-r--r-- | mkfs/gensquashfs.vcxproj | 181 | ||||
-rw-r--r-- | mkfs/gensquashfs.vcxproj.filters | 32 | ||||
-rw-r--r-- | mkfs/mkfs.h | 8 | ||||
-rw-r--r-- | squashfs-tools-ng.sln | 50 | ||||
-rw-r--r-- | tar/sqfs2tar.c | 3 | ||||
-rw-r--r-- | tar/sqfs2tar.vcxproj | 180 | ||||
-rw-r--r-- | tar/sqfs2tar.vcxproj.filters | 14 | ||||
-rw-r--r-- | tar/tar2sqfs.c | 5 | ||||
-rw-r--r-- | tar/tar2sqfs.vcxproj | 180 | ||||
-rw-r--r-- | tar/tar2sqfs.vcxproj.filters | 14 | ||||
-rw-r--r-- | unpack/rdsquashfs.h | 6 | ||||
-rw-r--r-- | unpack/rdsquashfs.vcxproj | 187 | ||||
-rw-r--r-- | unpack/rdsquashfs.vcxproj.filters | 41 |
17 files changed, 1135 insertions, 5 deletions
diff --git a/difftool/compare_files.c b/difftool/compare_files.c index 51b66bb..b25172a 100644 --- a/difftool/compare_files.c +++ b/difftool/compare_files.c @@ -13,7 +13,7 @@ static int read_blob(const char *prefix, const char *path, sqfs_data_reader_t *rd, const sqfs_inode_generic_t *inode, void *buffer, sqfs_u64 offset, size_t size) { - ssize_t ret; + sqfs_s32 ret; ret = sqfs_data_reader_read(rd, inode, offset, buffer, size); ret = (ret < 0 || (size_t)ret < size) ? -1 : 0; diff --git a/difftool/sqfsdiff.h b/difftool/sqfsdiff.h index 94fce93..7f552e9 100644 --- a/difftool/sqfsdiff.h +++ b/difftool/sqfsdiff.h @@ -12,10 +12,13 @@ #include "fstree.h" #include <stdlib.h> -#include <getopt.h> #include <string.h> #include <errno.h> +#ifdef HAVE_GETOPT_LONG +#include <getopt.h> +#endif + #define MAX_WINDOW_SIZE (1024 * 1024 * 4) typedef struct { diff --git a/difftool/sqfsdiff.vcxproj b/difftool/sqfsdiff.vcxproj new file mode 100644 index 0000000..5e7d404 --- /dev/null +++ b/difftool/sqfsdiff.vcxproj @@ -0,0 +1,188 @@ +<?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>{7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}</ProjectGuid> + <RootNamespace>sqfsdiff</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)'=='Release|x64'"> + <LinkIncremental>false</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <LinkIncremental>true</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\</IntDir> + </PropertyGroup> + <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> + <AdditionalIncludeDirectories> $(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories> $(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories> $(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </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> + <AdditionalIncludeDirectories> $(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="compare_dir.c" /> + <ClCompile Include="compare_files.c" /> + <ClCompile Include="extract.c" /> + <ClCompile Include="node_compare.c" /> + <ClCompile Include="options.c" /> + <ClCompile Include="sqfsdiff.c" /> + <ClCompile Include="super.c" /> + <ClCompile Include="util.c" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="sqfsdiff.h" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\lib\common\libcommon.vcxproj"> + <Project>{4af21b3a-e7a0-48e6-951c-ca442410231f}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\compat\libcompat.vcxproj"> + <Project>{45dec8f7-f154-4c3e-b616-a21fb3ca8cc2}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\fstree\libfstree.vcxproj"> + <Project>{4aa93963-2bc8-48fa-80b8-776b1f80bba5}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\sqfs\libsqfs.vcxproj"> + <Project>{7f732a8e-22a5-4dc1-b8db-7091d37be502}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\tar\libtar.vcxproj"> + <Project>{73712684-0f79-4ef6-950c-943c0456ff05}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\util\libutil.vcxproj"> + <Project>{e25396a6-af76-4695-ba23-01d88009b7ec}</Project> + </ProjectReference> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/difftool/sqfsdiff.vcxproj.filters b/difftool/sqfsdiff.vcxproj.filters new file mode 100644 index 0000000..18cc471 --- /dev/null +++ b/difftool/sqfsdiff.vcxproj.filters @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Headers"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions> + </Filter> + <Filter Include="Source"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;c++;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="options.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="sqfsdiff.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="super.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="util.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="compare_dir.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="compare_files.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="extract.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="node_compare.c"> + <Filter>Source</Filter> + </ClCompile> + </ItemGroup> + <ItemGroup> + <ClInclude Include="sqfsdiff.h"> + <Filter>Headers</Filter> + </ClInclude> + </ItemGroup> +</Project>
\ No newline at end of file diff --git a/mkfs/gensquashfs.vcxproj b/mkfs/gensquashfs.vcxproj new file mode 100644 index 0000000..ab72df8 --- /dev/null +++ b/mkfs/gensquashfs.vcxproj @@ -0,0 +1,181 @@ +<?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>{5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}</ProjectGuid> + <RootNamespace>gensquashfs</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)'=='Release|x64'"> + <LinkIncremental>false</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <LinkIncremental>true</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\</IntDir> + </PropertyGroup> + <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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <ProjectReference Include="..\lib\common\libcommon.vcxproj"> + <Project>{4af21b3a-e7a0-48e6-951c-ca442410231f}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\compat\libcompat.vcxproj"> + <Project>{45dec8f7-f154-4c3e-b616-a21fb3ca8cc2}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\fstree\libfstree.vcxproj"> + <Project>{4aa93963-2bc8-48fa-80b8-776b1f80bba5}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\sqfs\libsqfs.vcxproj"> + <Project>{7f732a8e-22a5-4dc1-b8db-7091d37be502}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\tar\libtar.vcxproj"> + <Project>{73712684-0f79-4ef6-950c-943c0456ff05}</Project> + </ProjectReference> + </ItemGroup> + <ItemGroup> + <ClCompile Include="dirscan.c" /> + <ClCompile Include="mkfs.c" /> + <ClCompile Include="options.c" /> + <ClCompile Include="selinux.c" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="mkfs.h" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/mkfs/gensquashfs.vcxproj.filters b/mkfs/gensquashfs.vcxproj.filters new file mode 100644 index 0000000..52637be --- /dev/null +++ b/mkfs/gensquashfs.vcxproj.filters @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Headers"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions> + </Filter> + <Filter Include="Source"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;c++;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="options.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="selinux.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="dirscan.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="mkfs.c"> + <Filter>Source</Filter> + </ClCompile> + </ItemGroup> + <ItemGroup> + <ClInclude Include="mkfs.h"> + <Filter>Headers</Filter> + </ClInclude> + </ItemGroup> +</Project>
\ No newline at end of file diff --git a/mkfs/mkfs.h b/mkfs/mkfs.h index 1b767aa..fecbf8e 100644 --- a/mkfs/mkfs.h +++ b/mkfs/mkfs.h @@ -29,16 +29,22 @@ #include <selinux/label.h> #endif +#ifdef HAVE_GETOPT_LONG #include <getopt.h> +#endif + #include <assert.h> #include <stdlib.h> #include <string.h> #include <limits.h> -#include <dirent.h> #include <stdio.h> #include <errno.h> #include <ctype.h> +#if !defined(_WIN32) && !defined(__WINDOWS__) +#include <dirent.h> +#endif + typedef struct { sqfs_writer_cfg_t cfg; unsigned int dirscan_flags; diff --git a/squashfs-tools-ng.sln b/squashfs-tools-ng.sln index 00c31ac..f002677 100644 --- a/squashfs-tools-ng.sln +++ b/squashfs-tools-ng.sln @@ -15,6 +15,16 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtar", "lib\tar\libtar.vc EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libutil", "lib\util\libutil.vcxproj", "{E25396A6-AF76-4695-BA23-01D88009B7EC}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tar2sqfs", "tar\tar2sqfs.vcxproj", "{F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqfs2tar", "tar\sqfs2tar.vcxproj", "{A998B239-A942-4586-B486-C62C1E467C21}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rdsquashfs", "unpack\rdsquashfs.vcxproj", "{4D16D3A6-1BC9-456B-A207-C53DF5B92057}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gensquashfs", "mkfs\gensquashfs.vcxproj", "{5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sqfsdiff", "difftool\sqfsdiff.vcxproj", "{7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 @@ -71,6 +81,46 @@ Global {E25396A6-AF76-4695-BA23-01D88009B7EC}.Release|x64.Build.0 = Release|x64 {E25396A6-AF76-4695-BA23-01D88009B7EC}.Release|x86.ActiveCfg = Release|Win32 {E25396A6-AF76-4695-BA23-01D88009B7EC}.Release|x86.Build.0 = Release|Win32 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Debug|x64.ActiveCfg = Debug|x64 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Debug|x64.Build.0 = Debug|x64 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Debug|x86.ActiveCfg = Debug|Win32 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Debug|x86.Build.0 = Debug|Win32 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Release|x64.ActiveCfg = Release|x64 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Release|x64.Build.0 = Release|x64 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Release|x86.ActiveCfg = Release|Win32 + {F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}.Release|x86.Build.0 = Release|Win32 + {A998B239-A942-4586-B486-C62C1E467C21}.Debug|x64.ActiveCfg = Debug|x64 + {A998B239-A942-4586-B486-C62C1E467C21}.Debug|x64.Build.0 = Debug|x64 + {A998B239-A942-4586-B486-C62C1E467C21}.Debug|x86.ActiveCfg = Debug|Win32 + {A998B239-A942-4586-B486-C62C1E467C21}.Debug|x86.Build.0 = Debug|Win32 + {A998B239-A942-4586-B486-C62C1E467C21}.Release|x64.ActiveCfg = Release|x64 + {A998B239-A942-4586-B486-C62C1E467C21}.Release|x64.Build.0 = Release|x64 + {A998B239-A942-4586-B486-C62C1E467C21}.Release|x86.ActiveCfg = Release|Win32 + {A998B239-A942-4586-B486-C62C1E467C21}.Release|x86.Build.0 = Release|Win32 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Debug|x64.ActiveCfg = Debug|x64 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Debug|x64.Build.0 = Debug|x64 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Debug|x86.ActiveCfg = Debug|Win32 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Debug|x86.Build.0 = Debug|Win32 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Release|x64.ActiveCfg = Release|x64 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Release|x64.Build.0 = Release|x64 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Release|x86.ActiveCfg = Release|Win32 + {4D16D3A6-1BC9-456B-A207-C53DF5B92057}.Release|x86.Build.0 = Release|Win32 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Debug|x64.ActiveCfg = Debug|x64 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Debug|x64.Build.0 = Debug|x64 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Debug|x86.ActiveCfg = Debug|Win32 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Debug|x86.Build.0 = Debug|Win32 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Release|x64.ActiveCfg = Release|x64 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Release|x64.Build.0 = Release|x64 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Release|x86.ActiveCfg = Release|Win32 + {5DD8D757-AE1F-4633-869A-4C3B83DBA2A7}.Release|x86.Build.0 = Release|Win32 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Debug|x64.ActiveCfg = Debug|x64 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Debug|x64.Build.0 = Debug|x64 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Debug|x86.ActiveCfg = Debug|Win32 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Debug|x86.Build.0 = Debug|Win32 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Release|x64.ActiveCfg = Release|x64 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Release|x64.Build.0 = Release|x64 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Release|x86.ActiveCfg = Release|Win32 + {7D66EBA3-5EDE-45EB-ADCA-8424C4026CA7}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/tar/sqfs2tar.c b/tar/sqfs2tar.c index b21570a..a05369f 100644 --- a/tar/sqfs2tar.c +++ b/tar/sqfs2tar.c @@ -8,7 +8,10 @@ #include "common.h" #include "tar.h" +#ifdef HAVE_GETOPT_LONG #include <getopt.h> +#endif + #include <string.h> #include <stdlib.h> #include <assert.h> diff --git a/tar/sqfs2tar.vcxproj b/tar/sqfs2tar.vcxproj new file mode 100644 index 0000000..3bea040 --- /dev/null +++ b/tar/sqfs2tar.vcxproj @@ -0,0 +1,180 @@ +<?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>{A998B239-A942-4586-B486-C62C1E467C21}</ProjectGuid> + <RootNamespace>sqfs2tar</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)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <LinkIncremental>true</LinkIncremental> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <LinkIncremental>false</LinkIncremental> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="sqfs2tar.c" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\lib\common\libcommon.vcxproj"> + <Project>{4af21b3a-e7a0-48e6-951c-ca442410231f}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\compat\libcompat.vcxproj"> + <Project>{45dec8f7-f154-4c3e-b616-a21fb3ca8cc2}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\fstree\libfstree.vcxproj"> + <Project>{4aa93963-2bc8-48fa-80b8-776b1f80bba5}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\sqfs\libsqfs.vcxproj"> + <Project>{7f732a8e-22a5-4dc1-b8db-7091d37be502}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\tar\libtar.vcxproj"> + <Project>{73712684-0f79-4ef6-950c-943c0456ff05}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\util\libutil.vcxproj"> + <Project>{e25396a6-af76-4695-ba23-01d88009b7ec}</Project> + </ProjectReference> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/tar/sqfs2tar.vcxproj.filters b/tar/sqfs2tar.vcxproj.filters new file mode 100644 index 0000000..c65756b --- /dev/null +++ b/tar/sqfs2tar.vcxproj.filters @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Source"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;c++;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="sqfs2tar.c"> + <Filter>Source</Filter> + </ClCompile> + </ItemGroup> +</Project>
\ No newline at end of file diff --git a/tar/tar2sqfs.c b/tar/tar2sqfs.c index 6186930..d730af6 100644 --- a/tar/tar2sqfs.c +++ b/tar/tar2sqfs.c @@ -10,7 +10,6 @@ #include "tar.h" #include <stdlib.h> -#include <getopt.h> #include <string.h> #include <stdio.h> #include <fcntl.h> @@ -19,6 +18,10 @@ #include <io.h> #endif +#ifdef HAVE_GETOPT_LONG +#include <getopt.h> +#endif + static struct option long_opts[] = { { "root-becomes", required_argument, NULL, 'r' }, { "compressor", required_argument, NULL, 'c' }, diff --git a/tar/tar2sqfs.vcxproj b/tar/tar2sqfs.vcxproj new file mode 100644 index 0000000..9f80e1c --- /dev/null +++ b/tar/tar2sqfs.vcxproj @@ -0,0 +1,180 @@ +<?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>{F2E6ECA9-8426-4363-8C5C-E6CDF76E8ABB}</ProjectGuid> + <RootNamespace>tar2sqfs</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|x64'"> + <LinkIncremental>true</LinkIncremental> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> + <LinkIncremental>false</LinkIncremental> + <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="tar2sqfs.c" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\lib\common\libcommon.vcxproj"> + <Project>{4af21b3a-e7a0-48e6-951c-ca442410231f}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\compat\libcompat.vcxproj"> + <Project>{45dec8f7-f154-4c3e-b616-a21fb3ca8cc2}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\fstree\libfstree.vcxproj"> + <Project>{4aa93963-2bc8-48fa-80b8-776b1f80bba5}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\sqfs\libsqfs.vcxproj"> + <Project>{7f732a8e-22a5-4dc1-b8db-7091d37be502}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\tar\libtar.vcxproj"> + <Project>{73712684-0f79-4ef6-950c-943c0456ff05}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\util\libutil.vcxproj"> + <Project>{e25396a6-af76-4695-ba23-01d88009b7ec}</Project> + </ProjectReference> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/tar/tar2sqfs.vcxproj.filters b/tar/tar2sqfs.vcxproj.filters new file mode 100644 index 0000000..bba854a --- /dev/null +++ b/tar/tar2sqfs.vcxproj.filters @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Source"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;c++;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="tar2sqfs.c"> + <Filter>Source</Filter> + </ClCompile> + </ItemGroup> +</Project>
\ No newline at end of file diff --git a/unpack/rdsquashfs.h b/unpack/rdsquashfs.h index 17c0a85..bf3e4c6 100644 --- a/unpack/rdsquashfs.h +++ b/unpack/rdsquashfs.h @@ -23,9 +23,13 @@ setxattr(path, name, value, size, 0, flags | XATTR_NOFOLLOW) #endif #endif + +#ifdef HAVE_GETOPT_LONG +#include <getopt.h> +#endif + #include <string.h> #include <stdlib.h> -#include <getopt.h> #include <assert.h> #include <ctype.h> #include <errno.h> diff --git a/unpack/rdsquashfs.vcxproj b/unpack/rdsquashfs.vcxproj new file mode 100644 index 0000000..1305ce4 --- /dev/null +++ b/unpack/rdsquashfs.vcxproj @@ -0,0 +1,187 @@ +<?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>{4D16D3A6-1BC9-456B-A207-C53DF5B92057}</ProjectGuid> + <RootNamespace>rdsquashfs</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)'=='Release|x64'"> + <LinkIncremental>false</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <LinkIncremental>true</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + <OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir> + <IntDir>$(Platform)\$(Configuration)\</IntDir> + </PropertyGroup> + <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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <SDLCheck>true</SDLCheck> + <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <ConformanceMode>true</ConformanceMode> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </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> + <AdditionalIncludeDirectories>$(SolutionDir)\include\win32;$(SolutionDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(TargetDir)\squashfs.lib;$(TargetDir)\libcompat.lib;$(TargetDir)\libcommon.lib;$(TargetDir)\libfstree.lib;$(TargetDir)\libtar.lib;$(TargetDir)\libutil.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="describe.c" /> + <ClCompile Include="dump_xattrs.c" /> + <ClCompile Include="fill_files.c" /> + <ClCompile Include="list_files.c" /> + <ClCompile Include="options.c" /> + <ClCompile Include="rdsquashfs.c" /> + <ClCompile Include="restore_fstree.c" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="rdsquashfs.h" /> + </ItemGroup> + <ItemGroup> + <ProjectReference Include="..\lib\common\libcommon.vcxproj"> + <Project>{4af21b3a-e7a0-48e6-951c-ca442410231f}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\compat\libcompat.vcxproj"> + <Project>{45dec8f7-f154-4c3e-b616-a21fb3ca8cc2}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\fstree\libfstree.vcxproj"> + <Project>{4aa93963-2bc8-48fa-80b8-776b1f80bba5}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\sqfs\libsqfs.vcxproj"> + <Project>{7f732a8e-22a5-4dc1-b8db-7091d37be502}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\tar\libtar.vcxproj"> + <Project>{73712684-0f79-4ef6-950c-943c0456ff05}</Project> + </ProjectReference> + <ProjectReference Include="..\lib\util\libutil.vcxproj"> + <Project>{e25396a6-af76-4695-ba23-01d88009b7ec}</Project> + </ProjectReference> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/unpack/rdsquashfs.vcxproj.filters b/unpack/rdsquashfs.vcxproj.filters new file mode 100644 index 0000000..7351d07 --- /dev/null +++ b/unpack/rdsquashfs.vcxproj.filters @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Headers"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions> + </Filter> + <Filter Include="Source"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;c++;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="fill_files.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="list_files.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="options.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="rdsquashfs.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="restore_fstree.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="describe.c"> + <Filter>Source</Filter> + </ClCompile> + <ClCompile Include="dump_xattrs.c"> + <Filter>Source</Filter> + </ClCompile> + </ItemGroup> + <ItemGroup> + <ClInclude Include="rdsquashfs.h"> + <Filter>Headers</Filter> + </ClInclude> + </ItemGroup> +</Project>
\ No newline at end of file |