[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH] Add support for building under VS2015/WDK10
Moving to the new toolchain also threw up a few new warnings, which this patch either fixes or squashes. Also, SDV appears to be fragile in new ways (and whinge about some new things) so there are fixes for that too. Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx> --- build.py | 78 +++---------- src/xeniface/fdo.c | 4 + src/xeniface/ioctl_store.c | 17 ++- src/xeniface/thread.c | 1 + src/xeniface/thread.h | 1 + src/xeniface/util.h | 54 ++++++++- src/xeniface/wmi.c | 2 + vs2015/configs.props | 45 +++++++ vs2015/package/package.vcxproj | 53 +++++++++ vs2015/package/package.vcxproj.user | 8 ++ vs2015/targets.props | 35 ++++++ vs2015/xenagent/xenagent.vcxproj | 82 +++++++++++++ vs2015/xenagent/xenagent.vcxproj.user | 4 + vs2015/xeniface.sln | 130 +++++++++++++++++++++ vs2015/xeniface/xeniface.vcxproj | 97 +++++++++++++++ vs2015/xeniface/xeniface.vcxproj.user | 8 ++ vs2015/xeniface_coinst/xeniface_coinst.vcxproj | 72 ++++++++++++ .../xeniface_coinst/xeniface_coinst.vcxproj.user | 8 ++ 18 files changed, 633 insertions(+), 66 deletions(-) create mode 100644 vs2015/configs.props create mode 100644 vs2015/package/package.vcxproj create mode 100644 vs2015/package/package.vcxproj.user create mode 100644 vs2015/targets.props create mode 100644 vs2015/xenagent/xenagent.vcxproj create mode 100644 vs2015/xenagent/xenagent.vcxproj.user create mode 100644 vs2015/xeniface.sln create mode 100644 vs2015/xeniface/xeniface.vcxproj create mode 100644 vs2015/xeniface/xeniface.vcxproj.user create mode 100644 vs2015/xeniface_coinst/xeniface_coinst.vcxproj create mode 100644 vs2015/xeniface_coinst/xeniface_coinst.vcxproj.user diff --git a/build.py b/build.py index ac701e0..725972a 100755 --- a/build.py +++ b/build.py @@ -243,61 +243,19 @@ def remove_timestamps(path): dst.close() src.close() -def sdv_clean(name, vs): - path = [vs, name, 'sdv'] - print(path) - - shutil.rmtree(os.path.join(*path), True) - - path = [vs, name, 'sdv.temp'] - print(path) - - shutil.rmtree(os.path.join(*path), True) - - path = [vs, name, 'staticdv.job'] - print(path) - - try: - os.unlink(os.path.join(*path)) - except OSError: - pass - - path = [vs, name, 'refine.sdv'] - print(path) - - try: - os.unlink(os.path.join(*path)) - except OSError: - pass - - path = [vs, name, 'sdv-map.h'] - print(path) - - try: - os.unlink(os.path.join(*path)) - except OSError: - pass - - def run_sdv(name, dir, vs): - configuration = get_configuration('Windows 8', False) + release = { 'vs2012':'Windows 8', + 'vs2013':'Windows 8', + 'vs2015':'Windows 10' } + + configuration = get_configuration(release[vs], False) platform = 'x64' msbuild(platform, configuration, 'Build', name + '.vcxproj', '', os.path.join(vs, name)) - sdv_clean(name, vs) - msbuild(platform, configuration, 'sdv', name + '.vcxproj', - '/p:Inputs="/scan"', os.path.join(vs, name)) - - path = [vs, name, 'sdv-map.h'] - file = open(os.path.join(*path), 'r') - - for line in file: - print(line) - - file.close() + '/p:Inputs="/clean"', os.path.join(vs, name)) msbuild(platform, configuration, 'sdv', name + '.vcxproj', '/p:Inputs="/check:default.sdv"', os.path.join(vs, name)) @@ -406,10 +364,11 @@ def getVsVersion(): continue vsenv[k] = v - if vsenv['VisualStudioVersion'] == '11.0' : - return 'vs2012' - elif vsenv['VisualStudioVersion'] == '12.0' : - return 'vs2013' + mapping = { '11.0':'vs2012', + '12.0':'vs2013', + '14.0':'vs2015' } + + return mapping[vsenv['VisualStudioVersion']] if __name__ == '__main__': debug = { 'checked': True, 'free': False } @@ -465,16 +424,15 @@ if __name__ == '__main__': symstore_del(driver, 30) - if vs=='vs2012': - release = 'Windows Vista' - else: - release = 'Windows 7' + release = { 'vs2012':'Windows Vista', + 'vs2013':'Windows 7', + 'vs2015':'Windows 8' } - build_sln(driver, release, 'x86', debug[sys.argv[1]], vs) - build_sln(driver, release, 'x64', debug[sys.argv[1]], vs) + build_sln(driver, release[vs], 'x86', debug[sys.argv[1]], vs) + build_sln(driver, release[vs], 'x64', debug[sys.argv[1]], vs) - symstore_add(driver, release, 'x86', debug[sys.argv[1]], vs) - symstore_add(driver, release, 'x64', debug[sys.argv[1]], vs) + symstore_add(driver, release[vs], 'x86', debug[sys.argv[1]], vs) + symstore_add(driver, release[vs], 'x64', debug[sys.argv[1]], vs) if len(sys.argv) <= 2 or sdv[sys.argv[2]]: run_sdv('xeniface', driver, vs) diff --git a/src/xeniface/fdo.c b/src/xeniface/fdo.c index e3b3dd9..08899bb 100644 --- a/src/xeniface/fdo.c +++ b/src/xeniface/fdo.c @@ -1036,6 +1036,7 @@ fail1: return status; } +__drv_requiresIRQL(PASSIVE_LEVEL) static DECLSPEC_NOINLINE VOID FdoD0ToD3( IN PXENIFACE_FDO Fdo @@ -1299,6 +1300,7 @@ FdoSurpriseRemoval( return status; } +__drv_requiresIRQL(PASSIVE_LEVEL) static DECLSPEC_NOINLINE NTSTATUS FdoRemoveDevice( IN PXENIFACE_FDO Fdo, @@ -2302,6 +2304,7 @@ FdoDispatchSystemControl( return status; } +__drv_requiresIRQL(PASSIVE_LEVEL) static DECLSPEC_NOINLINE NTSTATUS FdoDispatchCleanup( IN PXENIFACE_FDO Fdo, @@ -2368,6 +2371,7 @@ FdoDispatch( return status; } +__drv_requiresIRQL(PASSIVE_LEVEL) static NTSTATUS FdoQueryInterface( IN PXENIFACE_FDO Fdo, diff --git a/src/xeniface/ioctl_store.c b/src/xeniface/ioctl_store.c index c0a1aef..542dbbf 100644 --- a/src/xeniface/ioctl_store.c +++ b/src/xeniface/ioctl_store.c @@ -321,16 +321,29 @@ __ConvertPermissions( if (XenbusPermissions == NULL) goto fail2; +#pragma warning(push) +#pragma warning(disable:6385) +#pragma warning(disable:6386) + // Currently XENIFACE_STORE_PERMISSION is the same as XENBUS_STORE_PERMISSION, // but we convert them here in case something changes in the future. for (Index = 0; Index < NumberPermissions; Index++) { - if ((XenifacePermissions[Index].Mask & ~XENIFACE_STORE_ALLOWED_PERMISSIONS) != 0) + XENIFACE_STORE_PERMISSION_MASK Mask = XenifacePermissions[Index].Mask; + + if (Mask & ~XENIFACE_STORE_ALLOWED_PERMISSIONS) goto fail3; XenbusPermissions[Index].Domain = XenifacePermissions[Index].Domain; - XenbusPermissions[Index].Mask = (XENBUS_STORE_PERMISSION_MASK)XenifacePermissions[Index].Mask; + XenbusPermissions[Index].Mask = 0; + + if (Mask & XENIFACE_STORE_PERM_READ) + XenbusPermissions[Index].Mask |= XENBUS_STORE_PERM_READ; + if (Mask & XENIFACE_STORE_PERM_WRITE) + XenbusPermissions[Index].Mask |= XENBUS_STORE_PERM_WRITE; } +#pragma warning(pop) + return XenbusPermissions; fail3: diff --git a/src/xeniface/thread.c b/src/xeniface/thread.c index 386bba7..4a5d425 100644 --- a/src/xeniface/thread.c +++ b/src/xeniface/thread.c @@ -115,6 +115,7 @@ ThreadFunction( // NOT REACHED } +__drv_requiresIRQL(PASSIVE_LEVEL) NTSTATUS ThreadCreate( IN XENIFACE_THREAD_FUNCTION Function, diff --git a/src/xeniface/thread.h b/src/xeniface/thread.h index 69f3c51..929f34e 100644 --- a/src/xeniface/thread.h +++ b/src/xeniface/thread.h @@ -38,6 +38,7 @@ typedef struct _XENIFACE_THREAD XENIFACE_THREAD, *PXENIFACE_THREAD; typedef NTSTATUS (*XENIFACE_THREAD_FUNCTION)(PXENIFACE_THREAD, PVOID); +__drv_requiresIRQL(PASSIVE_LEVEL) extern NTSTATUS ThreadCreate( IN XENIFACE_THREAD_FUNCTION Function, diff --git a/src/xeniface/util.h b/src/xeniface/util.h index 13a6734..56810e0 100644 --- a/src/xeniface/util.h +++ b/src/xeniface/util.h @@ -138,6 +138,7 @@ __InterlockedSubtract( return New; } +__checkReturn static FORCEINLINE PVOID __AllocatePoolWithTag( IN POOL_TYPE PoolType, @@ -150,6 +151,7 @@ __AllocatePoolWithTag( __analysis_assume(PoolType == NonPagedPool || PoolType == PagedPool); +#pragma warning(suppress:28160) // annotation error Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag); if (Buffer == NULL) return NULL; @@ -190,12 +192,15 @@ __AllocatePage( SkipBytes, TotalBytes, MmCached, - 0); + MM_DONT_ZERO_ALLOCATION); status = STATUS_NO_MEMORY; if (Mdl == NULL) goto fail1; + if (Mdl->ByteCount < PAGE_SIZE) + goto fail2; + ASSERT((Mdl->MdlFlags & (MDL_MAPPED_TO_SYSTEM_VA | MDL_PARTIAL_HAS_BEEN_MAPPED | MDL_PARTIAL | @@ -212,7 +217,7 @@ __AllocatePage( status = STATUS_UNSUCCESSFUL; if (MdlMappedSystemVa == NULL) - goto fail2; + goto fail3; ASSERT3P(MdlMappedSystemVa, ==, Mdl->MappedSystemVa); @@ -220,6 +225,9 @@ __AllocatePage( return Mdl; +fail3: + Error("fail3\n"); + fail2: Error("fail2\n"); @@ -267,16 +275,54 @@ __strtok_r( if (Token == NULL) return NULL; - while (*Token != L'\0' && + while (*Token != '\0' && strchr(Delimiter, *Token) != NULL) Token++; + if (*Token == '\0') + return NULL; + + End = Token + 1; + while (*End != '\0' && + strchr(Delimiter, *End) == NULL) + End++; + + if (*End != '\0') + *End++ = '\0'; + + *Context = End; + + return Token; +} + +static FORCEINLINE PWCHAR +__wcstok_r( + IN PWCHAR Buffer, + IN PWCHAR Delimiter, + IN OUT PWCHAR *Context + ) +{ + PWCHAR Token; + PWCHAR End; + + if (Buffer != NULL) + *Context = Buffer; + + Token = *Context; + + if (Token == NULL) + return NULL; + + while (*Token != L'\0' && + wcschr(Delimiter, *Token) != NULL) + Token++; + if (*Token == L'\0') return NULL; End = Token + 1; while (*End != L'\0' && - strchr(Delimiter, *End) == NULL) + wcschr(Delimiter, *End) == NULL) End++; if (*End != L'\0') diff --git a/src/xeniface/wmi.c b/src/xeniface/wmi.c index 7059cb2..2e0dd87 100644 --- a/src/xeniface/wmi.c +++ b/src/xeniface/wmi.c @@ -1868,6 +1868,7 @@ SessionExecuteGetNextSibling(UCHAR *InBuffer, leafoffset--; } if (leafoffset != 0){ +#pragma warning(suppress:6386) // buffer overrun RtlCopyBytes(tmppath,path->Buffer, leafoffset); RtlCopyBytes(tmpleaf, path->Buffer+leafoffset+1, path->Length-leafoffset-1); } @@ -1879,6 +1880,7 @@ SessionExecuteGetNextSibling(UCHAR *InBuffer, tmppath[0]='/'; } else { +#pragma warning(suppress:6386) // buffer overrun RtlCopyBytes(tmpleaf, path->Buffer, path->Length); } diff --git a/vs2015/configs.props b/vs2015/configs.props new file mode 100644 index 0000000..cdbb3c8 --- /dev/null +++ b/vs2015/configs.props @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="Windows 10 Debug|Win32"> + <Configuration>Windows 10 Debug</Configuration> + <Platform>Win32</Platform> + <WindowsTargetPlatformVersion>10</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 10 Release|Win32"> + <Configuration>Windows 10 Release</Configuration> + <Platform>Win32</Platform> + <WindowsTargetPlatformVersion>10</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 10 Debug|x64"> + <Configuration>Windows 10 Debug</Configuration> + <Platform>x64</Platform> + <WindowsTargetPlatformVersion>10</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 10 Release|x64"> + <Configuration>Windows 10 Release</Configuration> + <Platform>x64</Platform> + <WindowsTargetPlatformVersion>10</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 8 Debug|Win32"> + <Configuration>Windows 8 Debug</Configuration> + <Platform>Win32</Platform> + <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 8 Release|Win32"> + <Configuration>Windows 8 Release</Configuration> + <Platform>Win32</Platform> + <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 8 Debug|x64"> + <Configuration>Windows 8 Debug</Configuration> + <Platform>x64</Platform> + <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> + </ProjectConfiguration> + <ProjectConfiguration Include="Windows 8 Release|x64"> + <Configuration>Windows 8 Release</Configuration> + <Platform>x64</Platform> + <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> + </ProjectConfiguration> + </ItemGroup> +</Project> diff --git a/vs2015/package/package.vcxproj b/vs2015/package/package.vcxproj new file mode 100644 index 0000000..b795f62 --- /dev/null +++ b/vs2015/package/package.vcxproj @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="..\configs.props" /> + <PropertyGroup Label="PropertySheets"> + <DriverType>WDM</DriverType> + <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> + <ConfigurationType>Utility</ConfigurationType> + <DriverType>Package</DriverType> + <DisableFastUpToDateCheck>true</DisableFastUpToDateCheck> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Label="Globals"> + <ProjectGuid>{9B071A35-897C-477A-AEB7-95F77618A21D}</ProjectGuid> + </PropertyGroup> + <Import Project="..\targets.props" /> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <PropertyGroup> + <EnableInf2cat>true</EnableInf2cat> + <Inf2CatWindowsVersionList Condition="'$(Platform)'=='x64'">8_x64;Server8_x64;10_x64;Server10_x64</Inf2CatWindowsVersionList> + <Inf2CatWindowsVersionList Condition="'$(Platform)'=='Win32'">8_x86;10_x86</Inf2CatWindowsVersionList> + <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor> + <EnableDeployment>False</EnableDeployment> + <ImportToStore>False</ImportToStore> + <InstallMode>None</InstallMode> + <ScriptDeviceQuery>%PathToInf%</ScriptDeviceQuery> + <EnableVerifier>False</EnableVerifier> + <AllDrivers>False</AllDrivers> + <VerifyProjectOutput>True</VerifyProjectOutput> + <VerifyDrivers /> + <VerifyFlags>133563</VerifyFlags> + <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir> + <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir> + <PackageDir>..\..\xeniface\$(DDKPlatform)</PackageDir> + </PropertyGroup> + <ItemGroup> + <ProjectReference Include="..\xeniface\xeniface.vcxproj"> + <Project>{22166290-65D8-49D2-BB88-33201797C7D8}</Project> + </ProjectReference> + <ProjectReference Include="..\xeniface_coinst\xeniface_coinst.vcxproj"> + <Project>{85c731ad-2ea2-4049-a542-d2d38ede938c}</Project> + </ProjectReference> + <ProjectReference Include="..\xenagent\xenagent.vcxproj"> + <Project>{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}</Project> + </ProjectReference> + </ItemGroup> + <ItemGroup> + <FilesToPackage Include="$(KIT)\Redist\DIFx\dpinst\EngMui\x86\dpinst.exe" Condition="'$(Platform)'=='Win32'" /> + <FilesToPackage Include="$(KIT)\Redist\DIFx\dpinst\EngMui\x64\dpinst.exe" Condition="'$(Platform)'=='x64'" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project> diff --git a/vs2015/package/package.vcxproj.user b/vs2015/package/package.vcxproj.user new file mode 100644 index 0000000..38b83e3 --- /dev/null +++ b/vs2015/package/package.vcxproj.user @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <SignMode>TestSign</SignMode> + <TestCertificate>..\..\src\xeniface.pfx</TestCertificate> + <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer> + </PropertyGroup> +</Project> diff --git a/vs2015/targets.props b/vs2015/targets.props new file mode 100644 index 0000000..64598fc --- /dev/null +++ b/vs2015/targets.props @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 10 Debug|Win32'"> + <TargetVersion>Windows10</TargetVersion> + <UseDebugLibraries>true</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 10 Release|Win32'"> + <TargetVersion>Windows10</TargetVersion> + <UseDebugLibraries>false</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 10 Debug|x64'"> + <TargetVersion>Windows10</TargetVersion> + <UseDebugLibraries>true</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 10 Release|x64'"> + <TargetVersion>Windows10</TargetVersion> + <UseDebugLibraries>false</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 8 Debug|Win32'"> + <TargetVersion>Windows8</TargetVersion> + <UseDebugLibraries>true</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 8 Release|Win32'"> + <TargetVersion>Windows8</TargetVersion> + <UseDebugLibraries>false</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 8 Debug|x64'"> + <TargetVersion>Windows8</TargetVersion> + <UseDebugLibraries>true</UseDebugLibraries> + </PropertyGroup> + <PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Windows 8 Release|x64'"> + <TargetVersion>Windows8</TargetVersion> + <UseDebugLibraries>false</UseDebugLibraries> + </PropertyGroup> +</Project> diff --git a/vs2015/xenagent/xenagent.vcxproj b/vs2015/xenagent/xenagent.vcxproj new file mode 100644 index 0000000..c7fa387 --- /dev/null +++ b/vs2015/xenagent/xenagent.vcxproj @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="..\configs.props" /> + <PropertyGroup Label="PropertySheets"> + <CharacterSet>MultiByte</CharacterSet> + <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> + <ConfigurationType>Application</ConfigurationType> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Label="Globals"> + <ProjectGuid>{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}</ProjectGuid> + </PropertyGroup> + <Import Project="..\targets.props" /> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <PropertyGroup> + <IncludePath>$(IncludePath)</IncludePath> + <RunCodeAnalysis>true</RunCodeAnalysis> + <EnableInf2cat>false</EnableInf2cat> + </PropertyGroup> + <PropertyGroup> + <CustomBuildAfterTargets>Link</CustomBuildAfterTargets> + </PropertyGroup> + <ItemDefinitionGroup> + <ClCompile> + <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>WIN32;_WINDOWS;_CRT_SECURE_NO_WARNINGS;__MODULE__="XENAGENT";%(PreprocessorDefinitions)</PreprocessorDefinitions> + <WarningLevel>EnableAllWarnings</WarningLevel> + <DisableSpecificWarnings>4127;4350;4711;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <MultiProcessorCompilation>true</MultiProcessorCompilation> + <EnablePREfast>true</EnablePREfast> + <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> + <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> + </ClCompile> + <Link> + <AdditionalDependencies>powrprof.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + <ResourceCompile> + <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'"> + <ClCompile> + <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <CustomBuildStep> + <Outputs>$(TargetDir)$(TargetName).dll</Outputs> + <Inputs>$(IntDir)$(TargetName).res</Inputs> + <Command>link -machine:x86 -dll -noentry -out:%(Outputs) %(Inputs)</Command> + </CustomBuildStep> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Platform)'=='x64'"> + <ClCompile> + <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <CustomBuildStep> + <Outputs>$(TargetDir)$(TargetName).dll</Outputs> + <Inputs>$(IntDir)$(TargetName).res</Inputs> + <Command>link -machine:x64 -dll -noentry -out:%(Outputs) %(Inputs)</Command> + </CustomBuildStep> + </ItemDefinitionGroup> + <ItemGroup> + <FilesToPackage Include="$(TargetPath)" /> + <FilesToPackage Include="$(OutDir)$(TargetName).pdb" /> + <FilesToPackage Include="$(OutDir)$(TargetName).dll" /> + <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" /> + </ItemGroup> + <ItemGroup> + <MessageCompile Include="..\..\src\xenagent\messages.mc" /> + </ItemGroup> + <ItemGroup> + <ClCompile Include="..\..\src\xenagent\service.cpp"/> + <ClCompile Include="..\..\src\xenagent\devicelist.cpp"/> + <ClCompile Include="..\..\src\xenagent\xenifacedevice.cpp"/> + </ItemGroup> + <ItemGroup> + <ResourceCompile Include="..\..\src\xenagent\xenagent.rc" /> + </ItemGroup> + <ItemGroup> + <Image Include="..\..\src\xenagent\xen.ico" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> +</Project> diff --git a/vs2015/xenagent/xenagent.vcxproj.user b/vs2015/xenagent/xenagent.vcxproj.user new file mode 100644 index 0000000..50f3cbe --- /dev/null +++ b/vs2015/xenagent/xenagent.vcxproj.user @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup /> +</Project> \ No newline at end of file diff --git a/vs2015/xeniface.sln b/vs2015/xeniface.sln new file mode 100644 index 0000000..040f071 --- /dev/null +++ b/vs2015/xeniface.sln @@ -0,0 +1,130 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xeniface_coinst", "xeniface_coinst\xeniface_coinst.vcxproj", "{85C731AD-2EA2-4049-A542-D2D38EDE938C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xeniface", "xeniface\xeniface.vcxproj", "{22166290-65D8-49D2-BB88-33201797C7D8}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenagent", "xenagent\xenagent.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package", "package\package.vcxproj", "{9B071A35-897C-477A-AEB7-95F77618A21D}" + ProjectSection(ProjectDependencies) = postProject + {22166290-65D8-49D2-BB88-33201797C7D8} = {22166290-65D8-49D2-BB88-33201797C7D8} + {85C731AD-2EA2-4049-A542-D2D38EDE938C} = {85C731AD-2EA2-4049-A542-D2D38EDE938C} + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B} = {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Windows 8 Debug|Win32 = Windows 8 Debug|Win32 + Windows 8 Debug|x64 = Windows 8 Debug|x64 + Windows 8 Release|Win32 = Windows 8 Release|Win32 + Windows 8 Release|x64 = Windows 8 Release|x64 + Windows 10 Debug|Win32 = Windows 10 Debug|Win32 + Windows 10 Debug|x64 = Windows 10 Debug|x64 + Windows 10 Release|Win32 = Windows 10 Release|Win32 + Windows 10 Release|x64 = Windows 10 Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 Debug|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Debug|Win32.Build.0 = Windows 8 Debug|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Debug|Win32.Deploy.0 = Windows 8 Debug|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Debug|x64.ActiveCfg = Windows 8 Debug|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Debug|x64.Build.0 = Windows 8 Debug|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Debug|x64.Deploy.0 = Windows 8 Debug|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Release|Win32.ActiveCfg = Windows 8 Release|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Release|Win32.Build.0 = Windows 8 Release|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Release|Win32.Deploy.0 = Windows 8 Release|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Release|x64.ActiveCfg = Windows 8 Release|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Release|x64.Build.0 = Windows 8 Release|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 8 Release|x64.Deploy.0 = Windows 8 Release|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Debug|Win32.ActiveCfg = Windows 10 Debug|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Debug|Win32.Build.0 = Windows 10 Debug|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Debug|Win32.Deploy.0 = Windows 10 Debug|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Debug|x64.ActiveCfg = Windows 10 Debug|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Debug|x64.Build.0 = Windows 10 Debug|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Debug|x64.Deploy.0 = Windows 10 Debug|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Release|Win32.ActiveCfg = Windows 10 Release|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Release|Win32.Build.0 = Windows 10 Release|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Release|Win32.Deploy.0 = Windows 10 Release|Win32 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Release|x64.ActiveCfg = Windows 10 Release|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Release|x64.Build.0 = Windows 10 Release|x64 + {85C731AD-2EA2-4049-A542-D2D38EDE938C}.Windows 10 Release|x64.Deploy.0 = Windows 10 Release|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 Debug|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Debug|Win32.Build.0 = Windows 8 Debug|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Debug|Win32.Deploy.0 = Windows 8 Debug|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Debug|x64.ActiveCfg = Windows 8 Debug|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Debug|x64.Build.0 = Windows 8 Debug|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Debug|x64.Deploy.0 = Windows 8 Debug|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Release|Win32.ActiveCfg = Windows 8 Release|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Release|Win32.Build.0 = Windows 8 Release|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Release|Win32.Deploy.0 = Windows 8 Release|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Release|x64.ActiveCfg = Windows 8 Release|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Release|x64.Build.0 = Windows 8 Release|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 8 Release|x64.Deploy.0 = Windows 8 Release|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Debug|Win32.ActiveCfg = Windows 10 Debug|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Debug|Win32.Build.0 = Windows 10 Debug|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Debug|Win32.Deploy.0 = Windows 10 Debug|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Debug|x64.ActiveCfg = Windows 10 Debug|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Debug|x64.Build.0 = Windows 10 Debug|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Debug|x64.Deploy.0 = Windows 10 Debug|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Release|Win32.ActiveCfg = Windows 10 Release|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Release|Win32.Build.0 = Windows 10 Release|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Release|Win32.Deploy.0 = Windows 10 Release|Win32 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Release|x64.ActiveCfg = Windows 10 Release|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Release|x64.Build.0 = Windows 10 Release|x64 + {22166290-65D8-49D2-BB88-33201797C7D8}.Windows 10 Release|x64.Deploy.0 = Windows 10 Release|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 Debug|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|Win32.Build.0 = Windows 8 Debug|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|Win32.Deploy.0 = Windows 8 Debug|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|x64.ActiveCfg = Windows 8 Debug|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|x64.Build.0 = Windows 8 Debug|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|x64.Deploy.0 = Windows 8 Debug|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Release|Win32.ActiveCfg = Windows 8 Release|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Release|Win32.Build.0 = Windows 8 Release|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Release|Win32.Deploy.0 = Windows 8 Release|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Release|x64.ActiveCfg = Windows 8 Release|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Release|x64.Build.0 = Windows 8 Release|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Release|x64.Deploy.0 = Windows 8 Release|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|Win32.ActiveCfg = Windows 10 Debug|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|Win32.Build.0 = Windows 10 Debug|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|Win32.Deploy.0 = Windows 10 Debug|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|x64.ActiveCfg = Windows 10 Debug|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|x64.Build.0 = Windows 10 Debug|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|x64.Deploy.0 = Windows 10 Debug|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Release|Win32.ActiveCfg = Windows 10 Release|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Release|Win32.Build.0 = Windows 10 Release|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Release|Win32.Deploy.0 = Windows 10 Release|Win32 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Release|x64.ActiveCfg = Windows 10 Release|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Release|x64.Build.0 = Windows 10 Release|x64 + {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Release|x64.Deploy.0 = Windows 10 Release|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 Debug|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Debug|Win32.Build.0 = Windows 8 Debug|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Debug|Win32.Deploy.0 = Windows 8 Debug|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Debug|x64.ActiveCfg = Windows 8 Debug|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Debug|x64.Build.0 = Windows 8 Debug|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Debug|x64.Deploy.0 = Windows 8 Debug|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Release|Win32.ActiveCfg = Windows 8 Release|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Release|Win32.Build.0 = Windows 8 Release|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Release|Win32.Deploy.0 = Windows 8 Release|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Release|x64.ActiveCfg = Windows 8 Release|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Release|x64.Build.0 = Windows 8 Release|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 8 Release|x64.Deploy.0 = Windows 8 Release|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Debug|Win32.ActiveCfg = Windows 10 Debug|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Debug|Win32.Build.0 = Windows 10 Debug|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Debug|Win32.Deploy.0 = Windows 10 Debug|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Debug|x64.ActiveCfg = Windows 10 Debug|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Debug|x64.Build.0 = Windows 10 Debug|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Debug|x64.Deploy.0 = Windows 10 Debug|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Release|Win32.ActiveCfg = Windows 10 Release|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Release|Win32.Build.0 = Windows 10 Release|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Release|Win32.Deploy.0 = Windows 10 Release|Win32 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Release|x64.ActiveCfg = Windows 10 Release|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Release|x64.Build.0 = Windows 10 Release|x64 + {9B071A35-897C-477A-AEB7-95F77618A21D}.Windows 10 Release|x64.Deploy.0 = Windows 10 Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/vs2015/xeniface/xeniface.vcxproj b/vs2015/xeniface/xeniface.vcxproj new file mode 100644 index 0000000..860630f --- /dev/null +++ b/vs2015/xeniface/xeniface.vcxproj @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="..\configs.props" /> + <PropertyGroup Label="PropertySheets"> + <DriverType>WDM</DriverType> + <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset> + <ConfigurationType>Driver</ConfigurationType> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Label="Globals"> + <ProjectGuid>{22166290-65D8-49D2-BB88-33201797C7D8}</ProjectGuid> + </PropertyGroup> + <Import Project="..\targets.props" /> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <PropertyGroup> + <RunCodeAnalysis>true</RunCodeAnalysis> + <EnableInf2cat>false</EnableInf2cat> + <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir> + <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir> + </PropertyGroup> + <ItemDefinitionGroup> + <ClCompile> + <AdditionalIncludeDirectories>$(WindowsSdkDir)\include\km;..\..\include;</AdditionalIncludeDirectories> + <PreprocessorDefinitions>__MODULE__="XENIFACE";POOL_NX_OPTIN=1;NT_PROCESSOR_GROUPS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <WarningLevel>EnableAllWarnings</WarningLevel> + <DisableSpecificWarnings>4464;4711;4548;4820;4668;4255;6001;6054;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <MultiProcessorCompilation>true</MultiProcessorCompilation> + <EnablePREfast>true</EnablePREfast> + </ClCompile> + <ResourceCompile> + <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + <Link> + <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> + <AdditionalDependencies>$(DDK_LIB_PATH)\ntstrsafe.lib;$(DDK_LIB_PATH)\procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies> + <EnableCOMDATFolding>false</EnableCOMDATFolding> + </Link> + <Inf> + <SpecifyArchitecture>true</SpecifyArchitecture> + <SpecifyDriverVerDirectiveVersion>true</SpecifyDriverVerDirectiveVersion> + <TimeStamp>$(MAJOR_VERSION).$(MINOR_VERSION).$(MICRO_VERSION).$(BUILD_NUMBER)</TimeStamp> + <EnableVerbose>true</EnableVerbose> + </Inf> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'"> + <ClCompile> + <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Inf> + <Architecture>x86</Architecture> + </Inf> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Platform)'=='x64'"> + <ClCompile> + <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Inf> + <Architecture>amd64</Architecture> + </Inf> + </ItemDefinitionGroup> + <ItemGroup> + <FilesToPackage Include="$(TargetPath)" /> + <FilesToPackage Include="$(OutDir)$(TargetName).pdb" /> + <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" /> + </ItemGroup> + <ItemGroup> + <ClCompile Include="..\..\src\xeniface\ioctls.c" /> + <ClCompile Include="..\..\src\xeniface\wmi.c" /> + <ClCompile Include="..\..\src\xeniface\driver.c" /> + <ClCompile Include="..\..\src\xeniface\fdo.c" /> + <ClCompile Include="..\..\src\xeniface\registry.c" /> + <ClCompile Include="..\..\src\xeniface\thread.c" /> + <ClCompile Include="..\..\src\xeniface\ioctl_sharedinfo.c" /> + <ClCompile Include="..\..\src\xeniface\ioctl_suspend.c" /> + <ClCompile Include="..\..\src\xeniface\ioctl_evtchn.c" /> + <ClCompile Include="..\..\src\xeniface\ioctl_gnttab.c" /> + <ClCompile Include="..\..\src\xeniface\ioctl_store.c" /> + <ClCompile Include="..\..\src\xeniface\irp_queue.c" /> + </ItemGroup> + <ItemGroup> + <Mofcomp Include="../../src/xeniface/wmi.mof"> + <CreateBinaryMofFile>$(IntDir)/wmi.bmf</CreateBinaryMofFile> + </Mofcomp> + </ItemGroup> + <ItemGroup> + <Wmimofck Include="$(IntDir)\wmi.bmf"> + <HeaderOutputFile>..\..\src\xeniface\wmi_generated.h</HeaderOutputFile> + </Wmimofck> + </ItemGroup> + <ItemGroup> + <ResourceCompile Include="..\..\src\xeniface\xeniface.rc" /> + </ItemGroup> + <ItemGroup> + <Inf Include="..\xeniface.inf" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> +</Project> diff --git a/vs2015/xeniface/xeniface.vcxproj.user b/vs2015/xeniface/xeniface.vcxproj.user new file mode 100644 index 0000000..38b83e3 --- /dev/null +++ b/vs2015/xeniface/xeniface.vcxproj.user @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <SignMode>TestSign</SignMode> + <TestCertificate>..\..\src\xeniface.pfx</TestCertificate> + <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer> + </PropertyGroup> +</Project> diff --git a/vs2015/xeniface_coinst/xeniface_coinst.vcxproj b/vs2015/xeniface_coinst/xeniface_coinst.vcxproj new file mode 100644 index 0000000..343d2eb --- /dev/null +++ b/vs2015/xeniface_coinst/xeniface_coinst.vcxproj @@ -0,0 +1,72 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <Import Project="..\configs.props" /> + <PropertyGroup Label="PropertySheets"> + <DriverType>WDM</DriverType> + <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset> + <ConfigurationType>DynamicLibrary</ConfigurationType> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Label="Globals"> + <ProjectGuid>{85c731ad-2ea2-4049-a542-d2d38ede938c}</ProjectGuid> + </PropertyGroup> + <Import Project="..\targets.props" /> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <PropertyGroup> + <RunCodeAnalysis>true</RunCodeAnalysis> + <EnableInf2cat>false</EnableInf2cat> + </PropertyGroup> + <ItemDefinitionGroup> + <ClCompile> + <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>__MODULE__="XENIFACE_COINST";%(PreprocessorDefinitions)</PreprocessorDefinitions> + <WarningLevel>EnableAllWarnings</WarningLevel> + <DisableSpecificWarnings>4127;4711;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <MultiProcessorCompilation>true</MultiProcessorCompilation> + <EnablePREfast>true</EnablePREfast> + <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary> + <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary> + </ClCompile> + <Link> + <ModuleDefinitionFile>../../src/coinst/xeniface_coinst.def</ModuleDefinitionFile> + <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + <ResourceCompile> + <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + <Inf> + <SpecifyArchitecture>true</SpecifyArchitecture> + <SpecifyDriverVerDirectiveVersion>true</SpecifyDriverVerDirectiveVersion> + <TimeStamp>$(MAJOR_VERSION).$(MINOR_VERSION).$(MICRO_VERSION).$(BUILD_NUMBER)</TimeStamp> + <EnableVerbose>true</EnableVerbose> + </Inf> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'"> + <ClCompile> + <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Inf> + <Architecture>x86</Architecture> + </Inf> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Platform)'=='x64'"> + <ClCompile> + <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Inf> + <Architecture>amd64</Architecture> + </Inf> + </ItemDefinitionGroup> + <ItemGroup> + <FilesToPackage Include="$(TargetPath)" /> + <FilesToPackage Include="$(OutDir)$(TargetName).pdb" /> + <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" /> + </ItemGroup> + <ItemGroup> + <ClCompile Include="..\..\src\coinst\coinst.c" /> + </ItemGroup> + <ItemGroup> + <None Include="..\..\src\coinst\xeniface_coinst.def" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> +</Project> diff --git a/vs2015/xeniface_coinst/xeniface_coinst.vcxproj.user b/vs2015/xeniface_coinst/xeniface_coinst.vcxproj.user new file mode 100644 index 0000000..38b83e3 --- /dev/null +++ b/vs2015/xeniface_coinst/xeniface_coinst.vcxproj.user @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <SignMode>TestSign</SignMode> + <TestCertificate>..\..\src\xeniface.pfx</TestCertificate> + <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer> + </PropertyGroup> +</Project> -- 2.5.3 _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |