Mercurial > minori
comparison dep/pugixml/scripts/nuget_build.ps1 @ 367:8d45d892be88 default tip
*: instead of pugixml, use Qt XML features
this means we have one extra Qt dependency though...
author | Paper <paper@tflc.us> |
---|---|
date | Sun, 17 Nov 2024 22:55:47 -0500 |
parents | 886f66775f31 |
children |
comparison
equal
deleted
inserted
replaced
366:886f66775f31 | 367:8d45d892be88 |
---|---|
1 function Run-Command([string]$cmd) | |
2 { | |
3 Invoke-Expression $cmd | |
4 if ($LastExitCode) { exit $LastExitCode } | |
5 } | |
6 | |
7 function Force-Copy([string]$from, [string]$to) | |
8 { | |
9 Write-Host $from "->" $to | |
10 New-Item -Force $to | Out-Null | |
11 Copy-Item -Force $from $to | |
12 if (! $?) { exit 1 } | |
13 } | |
14 | |
15 function Build-Version([string]$vs, [string]$toolset, [string]$linkage) | |
16 { | |
17 $prjsuffix = if ($linkage -eq "static") { "_static" } else { "" } | |
18 $cfgsuffix = if ($linkage -eq "static") { "Static" } else { "" } | |
19 | |
20 foreach ($configuration in "Debug","Release") | |
21 { | |
22 Run-Command "msbuild pugixml_$vs$prjsuffix.vcxproj /t:Rebuild /p:Configuration=$configuration /p:Platform=x86 /v:minimal /nologo" | |
23 Run-Command "msbuild pugixml_$vs$prjsuffix.vcxproj /t:Rebuild /p:Configuration=$configuration /p:Platform=x64 /v:minimal /nologo" | |
24 | |
25 Force-Copy "$vs/Win32_$configuration$cfgsuffix/pugixml.lib" "nuget/build/native/lib/Win32/$toolset/$linkage/$configuration/pugixml.lib" | |
26 Force-Copy "$vs/x64_$configuration$cfgsuffix/pugixml.lib" "nuget/build/native/lib/x64/$toolset/$linkage/$configuration/pugixml.lib" | |
27 } | |
28 } | |
29 | |
30 Push-Location | |
31 $scriptdir = Split-Path $MyInvocation.MyCommand.Path | |
32 cd $scriptdir | |
33 | |
34 Force-Copy "../src/pugiconfig.hpp" "nuget/build/native/include/pugiconfig.hpp" | |
35 Force-Copy "../src/pugixml.hpp" "nuget/build/native/include/pugixml.hpp" | |
36 Force-Copy "../src/pugixml.cpp" "nuget/build/native/include/pugixml.cpp" | |
37 | |
38 if ($args[0] -eq 2022){ | |
39 Build-Version "vs2022" "v143" "dynamic" | |
40 Build-Version "vs2022" "v143" "static" | |
41 | |
42 } elseif ($args[0] -eq 2019){ | |
43 Build-Version "vs2019" "v142" "dynamic" | |
44 Build-Version "vs2019" "v142" "static" | |
45 | |
46 } elseif ($args[0] -eq 2017){ | |
47 Build-Version "vs2017" "v141" "dynamic" | |
48 Build-Version "vs2017" "v141" "static" | |
49 | |
50 Build-Version "vs2015" "v140" "dynamic" | |
51 Build-Version "vs2015" "v140" "static" | |
52 | |
53 Build-Version "vs2013" "v120" "dynamic" | |
54 Build-Version "vs2013" "v120" "static" | |
55 | |
56 } elseif($args[0] -eq 2015){ | |
57 Build-Version "vs2015" "v140" "dynamic" | |
58 Build-Version "vs2015" "v140" "static" | |
59 | |
60 Build-Version "vs2013" "v120" "dynamic" | |
61 Build-Version "vs2013" "v120" "static" | |
62 | |
63 } elseif($args[0] -eq 2013){ | |
64 Build-Version "vs2013" "v120" "dynamic" | |
65 Build-Version "vs2013" "v120" "static" | |
66 } | |
67 | |
68 Run-Command "nuget pack nuget" | |
69 | |
70 Pop-Location |