|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH] Add PowerShell build scripts, version.vcxproj
Based on the sequence of commits to xenbus, add powershell scripts to
build the solution using the EWDK
version.vcxproj generates versioned files (version.h, xeniface.inf and
wmi.mof) using scripts/genfiles.ps1
Strips duplicated functionality from build.py toproduce consistant
builds between python and powershell.
Signed-off-by: Owen Smith <owen.smith@xxxxxxxxxx>
---
build.ps1 | 90 +++++++++++++++++
build.py | 131 +------------------------
include/version.tmpl | 25 +++++
msbuild.ps1 | 92 +++++++++++++++++
scripts/genfiles.ps1 | 97 ++++++++++++++++++
src/xeniface.inf | 26 ++---
symstore.ps1 | 36 +++++++
vs2015/package/package.vcxproj | 16 +++
vs2015/version/version.vcxproj | 19 ++++
vs2015/xenagent/xenagent.vcxproj | 1 -
vs2015/xeniface.sln | 31 ++++++
vs2015/xeniface/xeniface.vcxproj | 16 ---
vs2015/xeniface_coinst/xeniface_coinst.vcxproj | 1 -
vs2017/package/package.vcxproj | 16 +++
vs2017/version/version.vcxproj | 16 +++
vs2017/xenagent/xenagent.vcxproj | 1 -
vs2017/xeniface.sln | 31 ++++++
vs2017/xeniface/xeniface.vcxproj | 16 ---
vs2017/xeniface_coinst/xeniface_coinst.vcxproj | 1 -
19 files changed, 485 insertions(+), 177 deletions(-)
create mode 100644 build.ps1
create mode 100644 include/version.tmpl
create mode 100644 msbuild.ps1
create mode 100644 scripts/genfiles.ps1
create mode 100644 symstore.ps1
create mode 100644 vs2015/version/version.vcxproj
create mode 100644 vs2017/version/version.vcxproj
diff --git a/build.ps1 b/build.ps1
new file mode 100644
index 0000000..326715d
--- /dev/null
+++ b/build.ps1
@@ -0,0 +1,90 @@
+#
+# Main build script
+#
+
+param(
+ [Parameter(Mandatory = $true)]
+ [string]$Type,
+ [switch]$Sdv
+)
+
+#
+# Script Body
+#
+
+Function Build {
+ param(
+ [string]$Arch,
+ [string]$Type
+ )
+
+ $visualstudioversion = $Env:VisualStudioVersion
+ $solutiondir = @{ "14.0" = "vs2015"; "15.0" = "vs2017"; }
+ $configurationbase = @{ "14.0" = "Windows 8"; "15.0" = "Windows 8"; }
+
+ $params = @{
+ SolutionDir = $solutiondir[$visualstudioversion];
+ ConfigurationBase = $configurationbase[$visualstudioversion];
+ Arch = $Arch;
+ Type = $Type
+ }
+ & ".\msbuild.ps1" @params
+}
+
+Function SdvBuild {
+ $visualstudioversion = $Env:VisualStudioVersion
+ $solutiondir = @{ "14.0" = "vs2015"; "15.0" = "vs2017"; }
+ $configurationbase = @{ "14.0" = "Windows 10"; "15.0" = "Windows 10"; }
+ $arch = "x64"
+
+ $params = @{
+ SolutionDir = $solutiondir[$visualstudioversion];
+ ConfigurationBase = $configurationbase[$visualstudioversion];
+ Arch = $arch;
+ Type = "sdv"
+ }
+ & ".\msbuild.ps1" @params
+}
+
+if ($Type -ne "free" -and $Type -ne "checked") {
+ Write-Host "Invalid Type"
+ Exit -1
+}
+
+if ([string]::IsNullOrEmpty($Env:VENDOR_NAME)) {
+ Set-Item -Path Env:VENDOR_NAME -Value 'Xen Project'
+}
+
+if ([string]::IsNullOrEmpty($Env:VENDOR_PREFIX)) {
+ Set-Item -Path Env:VENDOR_PREFIX -Value 'XP'
+}
+
+if ([string]::IsNullOrEmpty($Env:PRODUCT_NAME)) {
+ Set-Item -Path Env:PRODUCT_NAME -Value 'Xen'
+}
+
+if ([string]::IsNullOrEmpty($Env:OBJECT_PREFIX)) {
+ Set-Item -Path Env:OBJECT_PREFIX -Value 'XenProject'
+}
+
+if ([string]::IsNullOrEmpty($Env:BUILD_NUMBER)) {
+ if (Test-Path ".build_number") {
+ $BuildNum = Get-Content -Path ".build_number"
+ Set-Content -Path ".build_number" -Value ([int]$BuildNum + 1)
+ } else {
+ $BuildNum = '0'
+ Set-Content -Path ".build_number" -Value '1'
+ }
+ Set-Item -Path Env:BUILD_NUMBER -Value $BuildNum
+}
+
+Set-Item -Path Env:MAJOR_VERSION -Value '9'
+Set-Item -Path Env:MINOR_VERSION -Value '0'
+Set-Item -Path Env:MICRO_VERSION -Value '0'
+
+Build "x86" $Type
+Build "x64" $Type
+
+if ($Sdv) {
+ SdvBuild
+}
diff --git a/build.py b/build.py
index 20a3ff4..95284c7 100755
--- a/build.py
+++ b/build.py
@@ -24,91 +24,6 @@ def next_build_number():
return build_number
-def make_header():
- now = datetime.datetime.now()
-
- file = open('include\\version.h', 'w')
-
- file.write('#define VENDOR_NAME_STR\t\t"' + os.environ['VENDOR_NAME'] +
'"\n')
- file.write('#define VENDOR_PREFIX_STR\t"' + os.environ['VENDOR_PREFIX'] +
'"\n')
-
- if 'VENDOR_DEVICE_ID' in os.environ.keys():
- file.write('#define VENDOR_DEVICE_ID_STR\t"' +
os.environ['VENDOR_DEVICE_ID'] + '"\n')
-
- file.write('#define PRODUCT_NAME_STR\t"' + os.environ['PRODUCT_NAME'] +
'"\n')
- file.write('\n')
-
- file.write('#define OBJECT_PREFIX_STR\t"' + os.environ['OBJECT_PREFIX'] +
'"\n')
- file.write('#define OBJECT_GUID(_Name)\t' + os.environ['OBJECT_PREFIX'] +
' ## _Name ## _GUID\n')
- file.write('\n')
-
- file.write('#define MAJOR_VERSION\t\t' + os.environ['MAJOR_VERSION'] +
'\n')
- file.write('#define MAJOR_VERSION_STR\t"' + os.environ['MAJOR_VERSION'] +
'"\n')
- file.write('\n')
-
- file.write('#define MINOR_VERSION\t\t' + os.environ['MINOR_VERSION'] +
'\n')
- file.write('#define MINOR_VERSION_STR\t"' + os.environ['MINOR_VERSION'] +
'"\n')
- file.write('\n')
-
- file.write('#define MICRO_VERSION\t\t' + os.environ['MICRO_VERSION'] +
'\n')
- file.write('#define MICRO_VERSION_STR\t"' + os.environ['MICRO_VERSION'] +
'"\n')
- file.write('\n')
-
- file.write('#define BUILD_NUMBER\t\t' + os.environ['BUILD_NUMBER'] + '\n')
- file.write('#define BUILD_NUMBER_STR\t"' + os.environ['BUILD_NUMBER'] +
'"\n')
- file.write('\n')
-
- file.write('#define YEAR\t\t\t' + str(now.year) + '\n')
- file.write('#define YEAR_STR\t\t"' + str(now.year) + '"\n')
- file.write('\n')
-
- file.write('#define MONTH\t\t\t' + str(now.month) + '\n')
- file.write('#define MONTH_STR\t\t"' + str(now.month) + '"\n')
- file.write('\n')
-
- file.write('#define DAY\t\t\t' + str(now.day) + '\n')
- file.write('#define DAY_STR\t\t\t"' + str(now.day) + '"\n')
- file.write('\n')
-
- file.close()
-
-
-def copy_inf(vs, name):
- src = open('src\\%s.inf' % name, 'r')
- dst = open('%s\\%s.inf' % (vs, name), 'w')
-
- for line in src:
- line = re.sub('@MAJOR_VERSION@', os.environ['MAJOR_VERSION'], line)
- line = re.sub('@MINOR_VERSION@', os.environ['MINOR_VERSION'], line)
- line = re.sub('@MICRO_VERSION@', os.environ['MICRO_VERSION'], line)
- line = re.sub('@BUILD_NUMBER@', os.environ['BUILD_NUMBER'], line)
- line = re.sub('@VENDOR_NAME@', os.environ['VENDOR_NAME'], line)
- line = re.sub('@VENDOR_PREFIX@', os.environ['VENDOR_PREFIX'], line)
- line = re.sub('@PRODUCT_NAME@', os.environ['PRODUCT_NAME'], line)
-
- if re.search('@VENDOR_DEVICE_ID@', line):
- if 'VENDOR_DEVICE_ID' not in os.environ.keys():
- continue
- line = re.sub('@VENDOR_DEVICE_ID@',
os.environ['VENDOR_DEVICE_ID'], line)
-
- dst.write(line)
-
- dst.close()
- src.close()
-
-
-def copy_mof(name):
- src = open('src\\%s.mof' % name, 'r')
- dst = open('src\\%s\\wmi.mof' % name, 'w')
-
- for line in src:
- line = re.sub('@OBJECT_PREFIX@', os.environ['OBJECT_PREFIX'], line)
- dst.write(line)
-
- dst.close()
- src.close()
-
-
def get_expired_symbols(name, age = 30):
path = os.path.join(os.environ['SYMBOL_SERVER'], '000Admin\\history.txt')
@@ -229,29 +144,6 @@ def build_sln(name, release, arch, debug, vs):
msbuild(platform, configuration, 'Build', name + '.sln', '', vs)
-def copy_package(name, release, arch, debug, vs):
- configuration = get_configuration(release, debug)
-
- if arch == 'x86':
- platform = 'Win32'
- elif arch == 'x64':
- platform = 'x64'
-
- pattern = '/'.join([vs, ''.join(configuration.split(' ')), platform,
'package', '*'])
- print('Copying package from %s' % pattern)
-
- files = glob.glob(pattern)
-
- dst = os.path.join(name, arch)
-
- os.makedirs(dst, exist_ok=True)
-
- for file in files:
- new = shutil.copy(file, dst)
- print(new)
-
- print('')
-
def remove_timestamps(path):
try:
os.unlink(path + '.orig')
@@ -368,6 +260,7 @@ def manifest():
def archive(filename, files, tgz=False):
+ print(filename)
access='w'
if tgz:
access='w:gz'
@@ -397,11 +290,13 @@ def getVsVersion():
return mapping[vsenv['VisualStudioVersion']]
+
def main():
debug = { 'checked': True, 'free': False }
sdv = { 'nosdv': False, None: True }
driver = 'xeniface'
vs = getVsVersion()
+ now = datetime.datetime.now()
if 'VENDOR_NAME' not in os.environ.keys():
os.environ['VENDOR_NAME'] = 'Xen Project'
@@ -427,24 +322,6 @@ def main():
print(os.environ['GIT_REVISION'], file=revision)
revision.close()
- print("VENDOR_NAME\t\t'%s'" % os.environ['VENDOR_NAME'])
- print("VENDOR_PREFIX\t\t'%s'" % os.environ['VENDOR_PREFIX'])
-
- if 'VENDOR_DEVICE_ID' in os.environ.keys():
- print("VENDOR_DEVICE_ID\t'%s'" % os.environ['VENDOR_DEVICE_ID'])
-
- print("PRODUCT_NAME\t\t'%s'" % os.environ['PRODUCT_NAME'])
- print("OBJECT_PREFIX\t\t'%s'" % os.environ['OBJECT_PREFIX'])
- print("MAJOR_VERSION\t\t%s" % os.environ['MAJOR_VERSION'])
- print("MINOR_VERSION\t\t%s" % os.environ['MINOR_VERSION'])
- print("MICRO_VERSION\t\t%s" % os.environ['MICRO_VERSION'])
- print("BUILD_NUMBER\t\t%s" % os.environ['BUILD_NUMBER'])
- print()
-
- make_header()
- copy_inf(vs, driver)
- copy_mof(driver)
-
symstore_del(driver, 30)
release = { 'vs2015':'Windows 8',
@@ -453,10 +330,8 @@ def main():
shutil.rmtree(driver, ignore_errors=True)
build_sln(driver, release[vs], 'x86', debug[sys.argv[1]], vs)
- copy_package(driver, release[vs], 'x86', debug[sys.argv[1]], vs)
build_sln(driver, release[vs], 'x64', debug[sys.argv[1]], vs)
- copy_package(driver, release[vs], '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)
diff --git a/include/version.tmpl b/include/version.tmpl
new file mode 100644
index 0000000..c675b9c
--- /dev/null
+++ b/include/version.tmpl
@@ -0,0 +1,25 @@
+#define VENDOR_NAME_STR "@VENDOR_NAME@"
+#define PRODUCT_NAME_STR "@PRODUCT_NAME@"
+#define VENDOR_PREFIX_STR "@VENDOR_PREFIX@"
+#define VENDOR_DEVICE_ID_STR "@VENDOR_DEVICE_ID@"
+
+#define OBJECT_PREFIX_STR "@OBJECT_PREFIX@"
+#define OBJECT_GUID(_Name) @OBJECT_PREFIX@ ## _Name ## _GUID
+
+#define MAJOR_VERSION_STR "@MAJOR_VERSION@"
+#define MINOR_VERSION_STR "@MINOR_VERSION@"
+#define MICRO_VERSION_STR "@MICRO_VERSION@"
+#define BUILD_NUMBER_STR "@BUILD_NUMBER@"
+
+#define YEAR_STR "@YEAR@"
+#define MONTH_STR "@MONTH@"
+#define DAY_STR "@DAY@"
+
+#define MAJOR_VERSION @MAJOR_VERSION@
+#define MINOR_VERSION @MINOR_VERSION@
+#define MICRO_VERSION @MICRO_VERSION@
+#define BUILD_NUMBER @BUILD_NUMBER@
+
+#define YEAR @YEAR@
+#define MONTH @MONTH@
+#define DAY @DAY@
diff --git a/msbuild.ps1 b/msbuild.ps1
new file mode 100644
index 0000000..0a17673
--- /dev/null
+++ b/msbuild.ps1
@@ -0,0 +1,92 @@
+#
+# Wrapper script for MSBuild
+#
+param(
+ [string]$SolutionDir = "vs2017",
+ [string]$ConfigurationBase = "Windows 10",
+ [Parameter(Mandatory = $true)]
+ [string]$Arch,
+ [Parameter(Mandatory = $true)]
+ [string]$Type
+)
+
+Function Run-MSBuild {
+ param(
+ [string]$SolutionPath,
+ [string]$Name,
+ [string]$Configuration,
+ [string]$Platform,
+ [string]$Target = "Build",
+ [string]$Inputs = ""
+ )
+
+ $c = "msbuild.exe"
+ $c += " /m:4"
+ $c += [string]::Format(" /p:Configuration=""{0}""", $Configuration)
+ $c += [string]::Format(" /p:Platform=""{0}""", $Platform)
+ $c += [string]::Format(" /t:""{0}"" ", $Target)
+ if ($Inputs) {
+ $c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
+ }
+ $c += Join-Path -Path $SolutionPath -ChildPath $Name
+
+ Invoke-Expression $c
+}
+
+Function Run-MSBuildSDV {
+ param(
+ [string]$SolutionPath,
+ [string]$Name,
+ [string]$Configuration,
+ [string]$Platform
+ )
+
+ $basepath = Get-Location
+ $versionpath = Join-Path -Path $SolutionPath -ChildPath "version"
+ $projpath = Join-Path -Path $SolutionPath -ChildPath $Name
+ Set-Location $projpath
+
+ $project = [string]::Format("{0}.vcxproj", $Name)
+ Run-MSBuild $versionpath "version.vcxproj" $Configuration $Platform
"Build"
+ Run-MSBuild $projpath $project $Configuration $Platform "Build"
+ Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
+ Run-MSBuild $projpath $project $Configuration $Platform "sdv"
"/check:default.sdv /debug"
+ Run-MSBuild $projpath $project $Configuration $Platform "dvl"
+
+ $refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
+ if (Test-Path -Path $refine -PathType Leaf) {
+ Run-MSBuild $projpath $project $Configuration $Platform "sdv"
"/refine"
+ }
+
+ Copy-Item "*DVL*" -Destination $SolutionPath
+
+ Set-Location $basepath
+}
+
+#
+# Script Body
+#
+
+$configuration = @{ "free" = "$ConfigurationBase Release"; "checked" =
"$ConfigurationBase Debug"; "sdv" = "$ConfigurationBase Release"; }
+$platform = @{ "x86" = "Win32"; "x64" = "x64" }
+$solutionpath = Resolve-Path $SolutionDir
+
+Set-ExecutionPolicy -Scope CurrentUser -Force Bypass
+
+if ($Type -eq "free") {
+ Run-MSBuild $solutionpath "xeniface.sln" $configuration["free"]
$platform[$Arch]
+}
+elseif ($Type -eq "checked") {
+ Run-MSBuild $solutionpath "xeniface.sln" $configuration["checked"]
$platform[$Arch]
+}
+elseif ($Type -eq "sdv") {
+ $archivepath = "xeniface"
+
+ if (-Not (Test-Path -Path $archivepath)) {
+ New-Item -Name $archivepath -ItemType Directory | Out-Null
+ }
+
+ Run-MSBuildSDV $solutionpath "xeniface" $configuration["sdv"]
$platform[$Arch]
+
+ Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*DVL*")
-Destination $archivepath
+}
diff --git a/scripts/genfiles.ps1 b/scripts/genfiles.ps1
new file mode 100644
index 0000000..64e087c
--- /dev/null
+++ b/scripts/genfiles.ps1
@@ -0,0 +1,97 @@
+#
+# Generate version.h and xenbus.inf
+#
+param(
+ [string]$Platform = "Win32",
+ [string]$SolutionDir = "vs2017",
+ [string]$IncludeDir = "include",
+ [string]$SourceDir = "src"
+)
+
+# Copy $InFileName -> $OutFileName replacing $Token$_.Key$Token with $_.Value
from
+# $Replacements
+Function Copy-FileWithReplacements {
+ param(
+ [Parameter(Mandatory = $true)]
+ [string]$InFileName,
+ [Parameter(Mandatory = $true)]
+ [string]$OutFileName,
+ [hashtable]$Replacements,
+ [string]$Token = "@"
+ )
+
+ Write-Host "Copy-FileWithReplacements"
+ Write-Host $InFileName" -> "$OutFileName
+
+ (Get-Content $InFileName) |
+ ForEach-Object {
+ $line = $_
+ $Replacements.GetEnumerator() | ForEach-Object {
+ $key = [string]::Format("{0}{1}{2}", $Token, $_.Name,
$Token)
+ if (([string]::IsNullOrEmpty($_.Value)) -and
($line.Contains($key))) {
+ Write-Host "Skipping Line Containing " $_.Name
+ $line = $null
+ }
+ $line = $line -replace $key, $_.Value
+ }
+ $line
+ } |
+ Set-Content $OutFileName
+}
+
+#
+# Script Body
+#
+$TheYear = [int](Get-Date -UFormat "%Y")
+$TheMonth = [int](Get-Date -UFormat "%m")
+$TheDay = [int](Get-Date -UFormat "%d")
+$InfArch = @{ "Win32" = "x86"; "x64" = "amd64" }
+$InfDate = Get-Date -UFormat "%m/%d/%Y"
+
+# if GitRevision is $null, GIT_REVISION will be excluded from the
Copy-FileWithReplacements
+$GitRevision = & "git.exe" "rev-list" "--max-count=1" "HEAD"
+if ($GitRevision) {
+ Set-Content -Path ".revision" -Value $GitRevision
+}
+
+# [ordered] makes output easier to parse by humans
+$Replacements = [ordered]@{
+ # values determined from the build environment
+ 'VENDOR_NAME' = $Env:VENDOR_NAME;
+ 'PRODUCT_NAME' = $Env:PRODUCT_NAME;
+ 'VENDOR_DEVICE_ID' = $Env:VENDOR_DEVICE_ID;
+ 'VENDOR_PREFIX' = $Env:VENDOR_PREFIX;
+ 'OBJECT_PREFIX' = $Env:OBJECT_PREFIX;
+
+ 'MAJOR_VERSION' = $Env:MAJOR_VERSION;
+ 'MINOR_VERSION' = $Env:MINOR_VERSION;
+ 'MICRO_VERSION' = $Env:MICRO_VERSION;
+ 'BUILD_NUMBER' = $Env:BUILD_NUMBER;
+
+ # generated values
+ 'GIT_REVISION' = $GitRevision;
+
+ 'INF_DATE' = $InfDate;
+ 'INF_ARCH' = $InfArch[$Platform];
+ 'YEAR' = $TheYear;
+ 'MONTH' = $TheMonth;
+ 'DAY' = $TheDay
+}
+
+$Replacements | Out-String | Write-Host
+
+$includepath = Resolve-Path $IncludeDir
+$src = Join-Path -Path $includepath -ChildPath "version.tmpl"
+$dst = Join-Path -Path $includepath -ChildPath "version.h"
+Copy-FileWithReplacements $src $dst -Replacements $Replacements
+
+$sourcepath = Resolve-Path $SourceDir
+$solutionpath = Resolve-Path $SolutionDir
+$src = Join-Path -Path $sourcepath -ChildPath "xeniface.inf"
+$dst = Join-Path -Path $solutionpath -ChildPath "xeniface.inf"
+Copy-FileWithReplacements $src $dst -Replacements $Replacements
+
+$sourcepath = Resolve-Path $SourceDir
+$src = Join-Path -Path $sourcepath -ChildPath "xeniface.mof"
+$dst = Join-Path -Path $sourcepath -ChildPath 'xeniface\wmi.mof'
+Copy-FileWithReplacements $src $dst -Replacements $Replacements
diff --git a/src/xeniface.inf b/src/xeniface.inf
index 75d44eb..dd07570 100644
--- a/src/xeniface.inf
+++ b/src/xeniface.inf
@@ -39,13 +39,13 @@ DriverPackageDisplayName=%DiskId1%
[DestinationDirs]
DefaultDestDir = 12
-Coinst.NT.Copy = 11
-ServiceDestDir.NT.Copy = 11
+Coinst.Copy = 11
+ServiceDestDir.Copy = 11
[Manufacturer]
-%Vendor%=Inst,NT$ARCH$
+%Vendor%=Inst,NT@INF_ARCH@
-[Inst.NT$ARCH$]
+[Inst.NT@INF_ARCH@]
; DisplayName Section DeviceID
; ----------- ------- --------
@@ -53,21 +53,21 @@ ServiceDestDir.NT.Copy = 11
%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@0001&DEV_IFACE&REV_09000000
%XenIfaceDevice.DeviceDesc% =XenIface_Device,
XENBUS\VEN_@VENDOR_PREFIX@0002&DEV_IFACE&REV_09000000
-[XenIface_Device.NT$ARCH$]
-CopyFiles=XenIface_Device.NT.Copy
-CopyFiles=ServiceDestDir.NT.Copy
+[XenIface_Device]
+CopyFiles=XenIface_Device.Copy
+CopyFiles=ServiceDestDir.Copy
-[XenIFace_Device.NT.Copy]
+[XenIFace_Device.Copy]
xeniface.sys
-[CoInst.NT.Copy]
+[CoInst.Copy]
xeniface_coinst_@MAJOR_VERSION@_@MINOR_VERSION@_@MICRO_VERSION@_@BUILD_NUMBER@.dll,xeniface_coinst.dll
-[ServiceDestDir.NT.Copy]
+[ServiceDestDir.Copy]
xenagent_@MAJOR_VERSION@_@MINOR_VERSION@_@MICRO_VERSION@_@BUILD_NUMBER@.exe,xenagent.exe
xenagent_@MAJOR_VERSION@_@MINOR_VERSION@_@MICRO_VERSION@_@BUILD_NUMBER@.dll,xenagent.dll
-[Xeniface_Device.NT$ARCH$.Services]
+[Xeniface_Device.Services]
AddService = xeniface, %SPSVCINST_ASSOCSERVICE%, xeniface_Service_Inst
AddService = xenagent, %XENAGENT_FLAGS%,
xenagent_Service_Inst,xenagent_EventLog
@@ -83,8 +83,8 @@ AddReg = Xeniface_Parameters
[Xeniface_Parameters]
HKR,"Parameters",,0x00000010
-[Xeniface_Device.NT$ARCH$.Coinstallers]
-CopyFiles=CoInst.NT.Copy
+[Xeniface_Device.Coinstallers]
+CopyFiles=CoInst.Copy
AddReg=CoInst_AddReg
[CoInst_AddReg]
diff --git a/symstore.ps1 b/symstore.ps1
new file mode 100644
index 0000000..c89a767
--- /dev/null
+++ b/symstore.ps1
@@ -0,0 +1,36 @@
+#
+# Store symbols for archived build
+#
+param(
+ [string]$SymbolServer = "c:\symbols",
+ [Parameter(Mandatory = $true)]
+ [string]$Arch
+)
+
+Function Add-Symbols {
+ param(
+ [string]$DriverName,
+ [string]$ArchivePath,
+ [string]$SymbolServer,
+ [string]$Arch
+ )
+
+ Write-Host Store symbols from (Resolve-Path $ArchivePath)
+
+ $cwd = Get-Location
+ Set-Location $ArchivePath
+
+ $path = Join-Path -Path ([string]::Format("{0}Debuggers",
$env:WDKContentRoot)) -ChildPath $Arch
+ $symstore = Join-Path -Path $path -ChildPath "symstore.exe"
+
+ $inffile = [string]::Format("{0}.inf", $DriverName)
+ $Version = (Get-Content -Path $inffile | Select-String
"DriverVer").Line.Split(',')[1]
+
+ Get-ChildItem -Path "." -Include "*.pdb" -Name | Write-Host
+ & $symstore "add" "/s" $SymbolServer "/r" "/f" "*.pdb" "/t" $DriverName
"/v" $Version
+
+ Set-Location $cwd
+}
+
+$archivepath = Join-Path -Path (Resolve-Path "xeniface") -ChildPath $Arch
+Add-Symbols "xeniface" $archivepath $SymbolServer $Arch
diff --git a/vs2015/package/package.vcxproj b/vs2015/package/package.vcxproj
index 9dd5617..239d88d 100644
--- a/vs2015/package/package.vcxproj
+++ b/vs2015/package/package.vcxproj
@@ -32,6 +32,12 @@
<IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
<OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
</PropertyGroup>
+ <PropertyGroup Condition="'$(Platform)'=='Win32'">
+ <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Platform)'=='x64'">
+ <ArchiveDir>..\..\$(SolutionName)\x64</ArchiveDir>
+ </PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\xeniface\xeniface.vcxproj">
<Project>{22166290-65D8-49D2-BB88-33201797C7D8}</Project>
@@ -45,6 +51,7 @@
<ProjectReference Include="..\xencontrol\xencontrol.vcxproj">
<Project>{D386D8E9-D015-4AD2-A5C2-4F845A803FA2}</Project>
</ProjectReference>
+ <FilesToPackage Include="..\xeniface.inf" />
</ItemGroup>
<ItemGroup Condition="Exists('$(DPINST_REDIST)')">
<FilesToPackage Include="$(DPINST_REDIST)\x86\dpinst.exe"
Condition="'$(Platform)'=='Win32'" />
@@ -53,4 +60,13 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+ <ItemGroup>
+ <PackageFiles Include="$(OutDir)\$(ProjectName)\*" />
+ </ItemGroup>
+ <Target Name="Archive" AfterTargets="TestSign">
+ <Copy
+ SourceFiles="@(PackageFiles)"
+
DestinationFiles="@(PackageFiles->'$(ArchiveDir)\%(FileName)%(Extension)')"
+ />
+ </Target>
</Project>
diff --git a/vs2015/version/version.vcxproj b/vs2015/version/version.vcxproj
new file mode 100644
index 0000000..e3c95c4
--- /dev/null
+++ b/vs2015/version/version.vcxproj
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="..\configs.props" />
+ <Import Project="..\targets.props" />
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{65FA97EA-A569-4FC1-BFE7-D68E109143F7}</ProjectGuid>
+ </PropertyGroup>
+ <PropertyGroup>
+ <Script>..\..\scripts\genfiles.ps1</Script>
+ <SolutionDir>..</SolutionDir>
+ <IncludeDir>..\..\include</IncludeDir>
+ <SourceDir>..\..\src</SourceDir>
+ </PropertyGroup>
+ <Target Name="GetNativeManifest"></Target>
+ <Target Name="Build">
+ <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile
-NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir)
$(SourceDir)" />
+ </Target>
+ <Target Name="GetCopyToOutputDirectoryItems"></Target>
+</Project>
diff --git a/vs2015/xenagent/xenagent.vcxproj b/vs2015/xenagent/xenagent.vcxproj
index 92b140e..a5e3460 100644
--- a/vs2015/xenagent/xenagent.vcxproj
+++ b/vs2015/xenagent/xenagent.vcxproj
@@ -62,7 +62,6 @@
<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" />
diff --git a/vs2015/xeniface.sln b/vs2015/xeniface.sln
index 7f08c1c..d7fc6ad 100644
--- a/vs2015/xeniface.sln
+++ b/vs2015/xeniface.sln
@@ -2,20 +2,35 @@ 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}") = "version",
"version\version.vcxproj", "{65FA97EA-A569-4FC1-BFE7-D68E109143F7}"
+EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xeniface_coinst",
"xeniface_coinst\xeniface_coinst.vcxproj",
"{85C731AD-2EA2-4049-A542-D2D38EDE938C}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xeniface",
"xeniface\xeniface.vcxproj", "{22166290-65D8-49D2-BB88-33201797C7D8}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenagent",
"xenagent\xenagent.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package",
"package\package.vcxproj", "{9B071A35-897C-477A-AEB7-95F77618A21D}"
ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
{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
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xencontrol",
"xencontrol\xencontrol.vcxproj", "{D386D8E9-D015-4AD2-A5C2-4F845A803FA2}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -29,6 +44,22 @@ Global
Windows 10 Release|x64 = Windows 10 Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|Win32.ActiveCfg = Windows 10 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|Win32.Build.0 = Windows 10 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|x64.ActiveCfg = Windows 10 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|x64.Build.0 = Windows 10 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|Win32.ActiveCfg = Windows 10 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|Win32.Build.0 = Windows 10 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|x64.ActiveCfg = Windows 10 Release|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|x64.Build.0 = Windows 10 Release|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|Win32.ActiveCfg = Windows 8 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|Win32.Build.0 = Windows 8 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|x64.ActiveCfg = Windows 8 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|x64.Build.0 = Windows 8 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|Win32.ActiveCfg = Windows 8 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|Win32.Build.0 = Windows 8 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|x64.ActiveCfg = Windows 8 Release|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|x64.Build.0 = Windows 8 Release|x64
{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
diff --git a/vs2015/xeniface/xeniface.vcxproj b/vs2015/xeniface/xeniface.vcxproj
index d02c770..4ac4d50 100644
--- a/vs2015/xeniface/xeniface.vcxproj
+++ b/vs2015/xeniface/xeniface.vcxproj
@@ -35,33 +35,20 @@
<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" />
@@ -90,8 +77,5 @@
<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_coinst/xeniface_coinst.vcxproj
b/vs2015/xeniface_coinst/xeniface_coinst.vcxproj
index 7393c53..f8c99db 100644
--- a/vs2015/xeniface_coinst/xeniface_coinst.vcxproj
+++ b/vs2015/xeniface_coinst/xeniface_coinst.vcxproj
@@ -48,7 +48,6 @@
<ItemGroup>
<FilesToPackage Include="$(TargetPath)" />
<FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''"
/>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\coinst\coinst.c" />
diff --git a/vs2017/package/package.vcxproj b/vs2017/package/package.vcxproj
index 7060312..31dacd3 100644
--- a/vs2017/package/package.vcxproj
+++ b/vs2017/package/package.vcxproj
@@ -32,6 +32,12 @@
<IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
<OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
</PropertyGroup>
+ <PropertyGroup Condition="'$(Platform)'=='Win32'">
+ <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Platform)'=='x64'">
+ <ArchiveDir>..\..\$(SolutionName)\x64</ArchiveDir>
+ </PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\xeniface\xeniface.vcxproj">
<Project>{22166290-65D8-49D2-BB88-33201797C7D8}</Project>
@@ -45,6 +51,7 @@
<ProjectReference Include="..\xencontrol\xencontrol.vcxproj">
<Project>{D386D8E9-D015-4AD2-A5C2-4F845A803FA2}</Project>
</ProjectReference>
+ <FilesToPackage Include="..\xeniface.inf" />
</ItemGroup>
<ItemGroup Condition="Exists('$(DPINST_REDIST)')">
<FilesToPackage Include="$(DPINST_REDIST)\x86\dpinst.exe"
Condition="'$(Platform)'=='Win32'" />
@@ -53,4 +60,13 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+ <ItemGroup>
+ <PackageFiles Include="$(OutDir)\$(ProjectName)\*" />
+ </ItemGroup>
+ <Target Name="Archive" AfterTargets="TestSign">
+ <Copy
+ SourceFiles="@(PackageFiles)"
+
DestinationFiles="@(PackageFiles->'$(ArchiveDir)\%(FileName)%(Extension)')"
+ />
+ </Target>
</Project>
diff --git a/vs2017/version/version.vcxproj b/vs2017/version/version.vcxproj
new file mode 100644
index 0000000..9d149d0
--- /dev/null
+++ b/vs2017/version/version.vcxproj
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <Import Project="..\configs.props" />
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{65FA97EA-A569-4FC1-BFE7-D68E109143F7}</ProjectGuid>
+ </PropertyGroup>
+ <PropertyGroup>
+ <Script>..\..\scripts\genfiles.ps1</Script>
+ <SolutionDir>..</SolutionDir>
+ <IncludeDir>..\..\include</IncludeDir>
+ <SourceDir>..\..\src</SourceDir>
+ </PropertyGroup>
+ <Target Name="Build">
+ <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile
-NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir)
$(SourceDir)" />
+ </Target>
+</Project>
diff --git a/vs2017/xenagent/xenagent.vcxproj b/vs2017/xenagent/xenagent.vcxproj
index 6a17308..b246af5 100644
--- a/vs2017/xenagent/xenagent.vcxproj
+++ b/vs2017/xenagent/xenagent.vcxproj
@@ -62,7 +62,6 @@
<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" />
diff --git a/vs2017/xeniface.sln b/vs2017/xeniface.sln
index 1eb8156..1bdc66a 100644
--- a/vs2017/xeniface.sln
+++ b/vs2017/xeniface.sln
@@ -2,16 +2,31 @@ 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}") = "version",
"version\version.vcxproj", "{65FA97EA-A569-4FC1-BFE7-D68E109143F7}"
+EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xeniface_coinst",
"xeniface_coinst\xeniface_coinst.vcxproj",
"{85C731AD-2EA2-4049-A542-D2D38EDE938C}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xeniface",
"xeniface\xeniface.vcxproj", "{22166290-65D8-49D2-BB88-33201797C7D8}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenagent",
"xenagent\xenagent.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xencontrol",
"xencontrol\xencontrol.vcxproj", "{D386D8E9-D015-4AD2-A5C2-4F845A803FA2}"
+ ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
+ EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package",
"package\package.vcxproj", "{9B071A35-897C-477A-AEB7-95F77618A21D}"
ProjectSection(ProjectDependencies) = postProject
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7} =
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}
{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}
@@ -30,6 +45,22 @@ Global
Windows 10 Release|x64 = Windows 10 Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|Win32.ActiveCfg = Windows 10 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|Win32.Build.0 = Windows 10 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|x64.ActiveCfg = Windows 10 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Debug|x64.Build.0 = Windows 10 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|Win32.ActiveCfg = Windows 10 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|Win32.Build.0 = Windows 10 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|x64.ActiveCfg = Windows 10 Release|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10
Release|x64.Build.0 = Windows 10 Release|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|Win32.ActiveCfg = Windows 8 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|Win32.Build.0 = Windows 8 Debug|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|x64.ActiveCfg = Windows 8 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Debug|x64.Build.0 = Windows 8 Debug|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|Win32.ActiveCfg = Windows 8 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|Win32.Build.0 = Windows 8 Release|Win32
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|x64.ActiveCfg = Windows 8 Release|x64
+ {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8
Release|x64.Build.0 = Windows 8 Release|x64
{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
diff --git a/vs2017/xeniface/xeniface.vcxproj b/vs2017/xeniface/xeniface.vcxproj
index bb48955..ab74b40 100644
--- a/vs2017/xeniface/xeniface.vcxproj
+++ b/vs2017/xeniface/xeniface.vcxproj
@@ -36,28 +36,16 @@
<AdditionalDependencies>$(DDK_LIB_PATH)\ntstrsafe.lib;$(DDK_LIB_PATH)\procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</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>
<ItemDefinitionGroup Condition="'$(Configuration)'=='Windows 8 Release'">
<ClCompile>
@@ -69,7 +57,6 @@
<ItemGroup>
<FilesToPackage Include="$(TargetPath)" />
<FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''"
/>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\xeniface\ioctls.c" />
@@ -98,8 +85,5 @@
<ItemGroup>
<ResourceCompile Include="..\..\src\xeniface\xeniface.rc" />
</ItemGroup>
- <ItemGroup>
- <Inf Include="..\xeniface.inf" />
- </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
</Project>
diff --git a/vs2017/xeniface_coinst/xeniface_coinst.vcxproj
b/vs2017/xeniface_coinst/xeniface_coinst.vcxproj
index d1988c2..b011416 100644
--- a/vs2017/xeniface_coinst/xeniface_coinst.vcxproj
+++ b/vs2017/xeniface_coinst/xeniface_coinst.vcxproj
@@ -48,7 +48,6 @@
<ItemGroup>
<FilesToPackage Include="$(TargetPath)" />
<FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''"
/>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\src\coinst\coinst.c" />
--
2.16.2.windows.1
_______________________________________________
win-pv-devel mailing list
win-pv-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/win-pv-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |