[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/xennet/adapter.c                            |   1 +
 src/xennet/transmitter.c                        |   9 +-
 src/xennet/util.h                               |  60 ++++++++++++--
 vs2015/configs.props                            |  45 ++++++++++
 vs2015/package/package.vcxproj                  |  49 +++++++++++
 vs2015/package/package.vcxproj.user             |   8 ++
 vs2015/targets.props                            |  35 ++++++++
 vs2015/xennet.sln                               | 105 ++++++++++++++++++++++++
 vs2015/xennet/xennet.vcxproj                    |  83 +++++++++++++++++++
 vs2015/xennet/xennet.vcxproj.user               |   8 ++
 vs2015/xennet_coinst/xennet_coinst.vcxproj      |  58 +++++++++++++
 vs2015/xennet_coinst/xennet_coinst.vcxproj.user |   8 ++
 13 files changed, 475 insertions(+), 72 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/xennet.sln
 create mode 100644 vs2015/xennet/xennet.vcxproj
 create mode 100644 vs2015/xennet/xennet.vcxproj.user
 create mode 100644 vs2015/xennet_coinst/xennet_coinst.vcxproj
 create mode 100644 vs2015/xennet_coinst/xennet_coinst.vcxproj.user

diff --git a/build.py b/build.py
index 8d60232..7014d5b 100755
--- a/build.py
+++ b/build.py
@@ -224,61 +224,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))
@@ -387,10 +345,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__':
@@ -434,16 +393,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('xennet', driver, vs)
diff --git a/src/xennet/adapter.c b/src/xennet/adapter.c
index 285f4d9..c121d4d 100644
--- a/src/xennet/adapter.c
+++ b/src/xennet/adapter.c
@@ -2766,6 +2766,7 @@ AdapterQueryInformation(
     return ndisStatus;
 }
 
+__drv_requiresIRQL(PASSIVE_LEVEL)
 static NTSTATUS
 __QueryInterface(
     IN  PDEVICE_OBJECT  DeviceObject,
diff --git a/src/xennet/transmitter.c b/src/xennet/transmitter.c
index 13ffe70..81e502c 100644
--- a/src/xennet/transmitter.c
+++ b/src/xennet/transmitter.c
@@ -355,7 +355,7 @@ TransmitterSendNetBufferLists(
     )
 {
     LIST_ENTRY                  List;
-    KIRQL                       Irql;
+    KIRQL                       Irql = PASSIVE_LEVEL;
 
     UNREFERENCED_PARAMETER(PortNumber);
 
@@ -363,9 +363,7 @@ TransmitterSendNetBufferLists(
 
     if (!NDIS_TEST_SEND_AT_DISPATCH_LEVEL(SendFlags)) {
         ASSERT3U(NDIS_CURRENT_IRQL(), <=, DISPATCH_LEVEL);
-        NDIS_RAISE_IRQL_TO_DISPATCH(&Irql);
-    } else {
-        Irql = DISPATCH_LEVEL;
+        KeRaiseIrql(DISPATCH_LEVEL, &Irql);
     }
 
     while (NetBufferList != NULL) {
@@ -379,7 +377,8 @@ TransmitterSendNetBufferLists(
         NetBufferList = ListNext;
     }
 
-    NDIS_LOWER_IRQL(Irql, DISPATCH_LEVEL);
+    if (!NDIS_TEST_SEND_AT_DISPATCH_LEVEL(SendFlags))
+        KeLowerIrql(Irql);
 }
 
 VOID
diff --git a/src/xennet/util.h b/src/xennet/util.h
index 7798ebd..d634033 100644
--- a/src/xennet/util.h
+++ b/src/xennet/util.h
@@ -29,8 +29,8 @@
  * SUCH DAMAGE.
  */
 
-#ifndef _COMMON_UTIL_H
-#define _COMMON_UTIL_H
+#ifndef _XENNET_UTIL_H
+#define _XENNET_UTIL_H
 
 #include <ntddk.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')
@@ -309,4 +355,4 @@ __tolower(
     return 'a' + Character - 'A';
 }
 
-#endif  // _COMMON_UTIL_H
+#endif  // _XENNET_UTIL_H
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..a353f51
--- /dev/null
+++ b/vs2015/package/package.vcxproj
@@ -0,0 +1,49 @@
+<?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>{445FD18F-97E3-4E5D-825F-151026242C05}</ProjectGuid>
+  </PropertyGroup>
+  <Import Project="..\targets.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <PropertyGroup>
+    <EnableInf2cat>true</EnableInf2cat>
+    <Inf2CatWindowsVersionList 
Condition="'$(Platform)'=='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>
+    <VerifyFlags>133563</VerifyFlags>
+    <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
+    <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
+    <PackageDir>..\..\xennet\$(DDKPlatform)</PackageDir>
+  </PropertyGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\xennet\xennet.vcxproj">
+      <Project>{97D9942B-5EA3-488C-B512-C96E5D077F8E}</Project>
+    </ProjectReference>
+    <ProjectReference Include="..\xennet_coinst\xennet_coinst.vcxproj">
+      <Project>{3EDD837A-C1BE-47D4-9603-16B61353670B}</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..a5433e9
--- /dev/null
+++ b/vs2015/package/package.vcxproj.user
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <PropertyGroup>
+    <SignMode>TestSign</SignMode>
+    <TestCertificate>..\..\src\xennet.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/xennet.sln b/vs2015/xennet.sln
new file mode 100644
index 0000000..9c51b06
--- /dev/null
+++ b/vs2015/xennet.sln
@@ -0,0 +1,105 @@
+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}") = "xennet", 
"xennet\xennet.vcxproj", "{97D9942B-5EA3-488C-B512-C96E5D077F8E}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xennet_coinst", 
"xennet_coinst\xennet_coinst.vcxproj", "{3EDD837A-C1BE-47D4-9603-16B61353670B}"
+       ProjectSection(ProjectDependencies) = postProject
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E} = 
{97D9942B-5EA3-488C-B512-C96E5D077F8E}
+       EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package", 
"package\package.vcxproj", "{445FD18F-97E3-4E5D-825F-151026242C05}"
+       ProjectSection(ProjectDependencies) = postProject
+               {3EDD837A-C1BE-47D4-9603-16B61353670B} = 
{3EDD837A-C1BE-47D4-9603-16B61353670B}
+       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
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Debug|Win32.ActiveCfg = Windows 8 Debug|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Debug|Win32.Build.0 = Windows 8 Debug|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Debug|Win32.Deploy.0 = Windows 8 Debug|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Debug|x64.ActiveCfg = Windows 8 Debug|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Debug|x64.Build.0 = Windows 8 Debug|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Debug|x64.Deploy.0 = Windows 8 Debug|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Release|Win32.ActiveCfg = Windows 8 Release|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Release|Win32.Build.0 = Windows 8 Release|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Release|Win32.Deploy.0 = Windows 8 Release|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Release|x64.ActiveCfg = Windows 8 Release|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Release|x64.Build.0 = Windows 8 Release|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 8 
Release|x64.Deploy.0 = Windows 8 Release|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Debug|Win32.ActiveCfg = Windows 10 Debug|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Debug|Win32.Build.0 = Windows 10 Debug|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Debug|Win32.Deploy.0 = Windows 10 Debug|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Debug|x64.ActiveCfg = Windows 10 Debug|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Debug|x64.Build.0 = Windows 10 Debug|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Debug|x64.Deploy.0 = Windows 10 Debug|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Release|Win32.ActiveCfg = Windows 10 Release|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Release|Win32.Build.0 = Windows 10 Release|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Release|Win32.Deploy.0 = Windows 10 Release|Win32
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Release|x64.ActiveCfg = Windows 10 Release|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Release|x64.Build.0 = Windows 10 Release|x64
+               {97D9942B-5EA3-488C-B512-C96E5D077F8E}.Windows 10 
Release|x64.Deploy.0 = Windows 10 Release|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Debug|Win32.ActiveCfg = Windows 8 Debug|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Debug|Win32.Build.0 = Windows 8 Debug|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Debug|Win32.Deploy.0 = Windows 8 Debug|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Debug|x64.ActiveCfg = Windows 8 Debug|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Debug|x64.Build.0 = Windows 8 Debug|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Debug|x64.Deploy.0 = Windows 8 Debug|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Release|Win32.ActiveCfg = Windows 8 Release|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Release|Win32.Build.0 = Windows 8 Release|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Release|Win32.Deploy.0 = Windows 8 Release|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Release|x64.ActiveCfg = Windows 8 Release|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Release|x64.Build.0 = Windows 8 Release|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 8 
Release|x64.Deploy.0 = Windows 8 Release|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Debug|Win32.ActiveCfg = Windows 10 Debug|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Debug|Win32.Build.0 = Windows 10 Debug|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Debug|Win32.Deploy.0 = Windows 10 Debug|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Debug|x64.ActiveCfg = Windows 10 Debug|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Debug|x64.Build.0 = Windows 10 Debug|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Debug|x64.Deploy.0 = Windows 10 Debug|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Release|Win32.ActiveCfg = Windows 10 Release|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Release|Win32.Build.0 = Windows 10 Release|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Release|Win32.Deploy.0 = Windows 10 Release|Win32
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Release|x64.ActiveCfg = Windows 10 Release|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Release|x64.Build.0 = Windows 10 Release|x64
+               {3EDD837A-C1BE-47D4-9603-16B61353670B}.Windows 10 
Release|x64.Deploy.0 = Windows 10 Release|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Debug|Win32.ActiveCfg = Windows 8 Debug|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Debug|Win32.Build.0 = Windows 8 Debug|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Debug|Win32.Deploy.0 = Windows 8 Debug|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Debug|x64.ActiveCfg = Windows 8 Debug|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Debug|x64.Build.0 = Windows 8 Debug|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Debug|x64.Deploy.0 = Windows 8 Debug|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Release|Win32.ActiveCfg = Windows 8 Release|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Release|Win32.Build.0 = Windows 8 Release|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Release|Win32.Deploy.0 = Windows 8 Release|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Release|x64.ActiveCfg = Windows 8 Release|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Release|x64.Build.0 = Windows 8 Release|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 8 
Release|x64.Deploy.0 = Windows 8 Release|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Debug|Win32.ActiveCfg = Windows 10 Debug|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Debug|Win32.Build.0 = Windows 10 Debug|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Debug|Win32.Deploy.0 = Windows 10 Debug|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Debug|x64.ActiveCfg = Windows 10 Debug|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Debug|x64.Build.0 = Windows 10 Debug|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Debug|x64.Deploy.0 = Windows 10 Debug|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Release|Win32.ActiveCfg = Windows 10 Release|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Release|Win32.Build.0 = Windows 10 Release|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Release|Win32.Deploy.0 = Windows 10 Release|Win32
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Release|x64.ActiveCfg = Windows 10 Release|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Release|x64.Build.0 = Windows 10 Release|x64
+               {445FD18F-97E3-4E5D-825F-151026242C05}.Windows 10 
Release|x64.Deploy.0 = Windows 10 Release|x64
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+EndGlobal
diff --git a/vs2015/xennet/xennet.vcxproj b/vs2015/xennet/xennet.vcxproj
new file mode 100644
index 0000000..7dfddb2
--- /dev/null
+++ b/vs2015/xennet/xennet.vcxproj
@@ -0,0 +1,83 @@
+<?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">
+    <ConfigurationType>Driver</ConfigurationType>
+    <DriverType>WDM</DriverType>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Label="Configuration">
+    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{97D9942B-5EA3-488C-B512-C96E5D077F8E}</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>
+      
<PreprocessorDefinitions>__MODULE__="XENNET";NDIS_MINIPORT_DRIVER;NDIS_WDM=1;NDIS61_MINIPORT=1;POOL_NX_OPTIN=1;NT_PROCESSOR_GROUPS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      
<AdditionalIncludeDirectories>$(WindowsSdkDir)\include\km;..\..\include;..\..\include\xen;</AdditionalIncludeDirectories>
+      <WarningLevel>EnableAllWarnings</WarningLevel>
+      
<DisableSpecificWarnings>4464;4711;4548;4820;4668;4255;6001;6054;28196;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)\ndis.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.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/xennet/adapter.c" />
+    <ClCompile Include="../../src/xennet/driver.c" />
+    <ClCompile Include="../../src/xennet/miniport.c" />
+    <ClCompile Include="../../src/xennet/receiver.c" />
+    <ClCompile Include="../../src/xennet/string.c" />
+    <ClCompile Include="../../src/xennet/transmitter.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="..\..\src\xennet\xennet.rc" />
+  </ItemGroup>
+  <ItemGroup>
+    <Inf Include="..\xennet.inf" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+</Project>
diff --git a/vs2015/xennet/xennet.vcxproj.user 
b/vs2015/xennet/xennet.vcxproj.user
new file mode 100644
index 0000000..770fdca
--- /dev/null
+++ b/vs2015/xennet/xennet.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\xennet.pfx</TestCertificate>
+    
<TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer>
+  </PropertyGroup>
+</Project>
diff --git a/vs2015/xennet_coinst/xennet_coinst.vcxproj 
b/vs2015/xennet_coinst/xennet_coinst.vcxproj
new file mode 100644
index 0000000..a3097a6
--- /dev/null
+++ b/vs2015/xennet_coinst/xennet_coinst.vcxproj
@@ -0,0 +1,58 @@
+<?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>{3EDD837A-C1BE-47D4-9603-16B61353670B}</ProjectGuid>
+  </PropertyGroup>
+  <Import Project="..\targets.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <PropertyGroup>
+    <IncludePath>$(IncludePath)</IncludePath>
+    <RunCodeAnalysis>true</RunCodeAnalysis>
+    <EnableInf2cat>false</EnableInf2cat>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      
<AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      
<PreprocessorDefinitions>__MODULE__="XENNET_COINST";%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <WarningLevel>EnableAllWarnings</WarningLevel>
+      
<DisableSpecificWarnings>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/xennet_coinst.def</ModuleDefinitionFile>
+      
<AdditionalDependencies>setupapi.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
+    <ClCompile>
+      
<PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
+    <ClCompile>
+      
<PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </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\xennet_coinst.def" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+</Project>
diff --git a/vs2015/xennet_coinst/xennet_coinst.vcxproj.user 
b/vs2015/xennet_coinst/xennet_coinst.vcxproj.user
new file mode 100644
index 0000000..a5433e9
--- /dev/null
+++ b/vs2015/xennet_coinst/xennet_coinst.vcxproj.user
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" 
xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+  <PropertyGroup>
+    <SignMode>TestSign</SignMode>
+    <TestCertificate>..\..\src\xennet.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

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.