Mercurial > minori
comparison dep/pugixml/scripts/nuget_build.ps1 @ 55:d10b6c6b432e
add xml lib, we will need to use it eventually
| author | Paper <mrpapersonic@gmail.com> |
|---|---|
| date | Tue, 26 Sep 2023 12:37:08 -0400 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 54:466ac9870df9 | 55:d10b6c6b432e |
|---|---|
| 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 |
