summaryrefslogtreecommitdiff
path: root/graphics/asymptote/quick-start-win32.ps1
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/asymptote/quick-start-win32.ps1')
-rw-r--r--graphics/asymptote/quick-start-win32.ps160
1 files changed, 60 insertions, 0 deletions
diff --git a/graphics/asymptote/quick-start-win32.ps1 b/graphics/asymptote/quick-start-win32.ps1
new file mode 100644
index 0000000000..c29cfc78d5
--- /dev/null
+++ b/graphics/asymptote/quick-start-win32.ps1
@@ -0,0 +1,60 @@
+#!/usr/bin/env pwsh
+
+# Windows check
+if ($PSVersionTable.PSVersion.Major -gt 5)
+{
+ if (-Not $IsWindows)
+ {
+ Write-Output "This script is only for windows."
+ Break
+ }
+}
+
+# check for vcpkg
+$vcpkgDefaultLoc = "$env:USERPROFILE/.vcpkg"
+if (-Not $env:VCPKG_ROOT)
+{
+ Write-Host "VCPKG_ROOT Not found, checking for $vcpkgDefaultLoc"
+ if (-Not (Test-Path $vcpkgDefaultLoc/vcpkg.exe))
+ {
+ Write-Host "vcpkg not found; will clone vcpkg"
+ Remove-Item -Force -Recurse $vcpkgDefaultLoc
+ git clone https://github.com/microsoft/vcpkg.git "$vcpkgDefaultLoc"
+
+ Push-Location "$vcpkgDefaultLoc"
+ & ./bootstrap-vcpkg.bat
+ Pop-Location
+ }
+ else
+ {
+ Write-Host "vcpkg.exe found, will pull to latest"
+ Push-Location "$vcpkgDefaultLoc"
+ git pull --autostash
+ Pop-Location
+ }
+
+ $env:VCPKG_ROOT = $vcpkgDefaultLoc
+}
+else
+{
+ Write-Host "Using VCPKG_ROOT at $($env:VCPKG_ROOT)"
+}
+
+# check for visual studio
+$vsInfo = Get-CimInstance MSFT_VSInstance -Namespace root/cimv2/vs
+if ($vsInfo -eq $null)
+{
+ Write-Output "Visual Studio not found. Please install visual studio."
+ Break
+}
+
+Write-Output "Using $($vsInfo.Name) at $($vsInfo.InstallLocation)"
+& "$($vsInfo.InstallLocation)\Common7\Tools\Launch-VsDevShell.ps1" -Arch amd64 -HostArch amd64 -SkipAutomaticLocation
+
+cmake --preset msvc/release
+
+Write-Output "Configuration done. Please run
+cmake --build --preset msvc/release --target asy-with-basefiles
+to build Asymptote."
+
+Exit-PSSession