kolibrios-gcc-toolchain/install.ps1

54 lines
2.0 KiB
PowerShell
Raw Normal View History

2024-11-16 15:45:39 +01:00
#Requires -RunAsAdministrator
param(
[string]$InstallPath='C:\MinGW\msys\1.0\home\autobuild\tools'
)
2024-11-16 12:21:10 +01:00
if (Get-Module -ListAvailable -Name 7Zip4PowerShell)
{}
else
{
Install-Module -Name 7Zip4PowerShell
2024-11-16 12:21:10 +01:00
}
2024-11-16 12:21:10 +01:00
$URL_TO_LIBS = "http://builds.kolibrios.org/en_US/data/contrib/sdk/lib"
2024-11-16 12:21:10 +01:00
$LIST_OF_LIBS = 'libdll.a', 'libfreetype.a', 'libc.dll.a', 'libSDLn.a', 'libSDL_mixer.a', 'libcurses.a', 'libz.dll.a', 'libogg.a', 'libvorbis.a', 'libopenjpeg.a', 'libopenjpeg.a', 'libsqlite3.dll.a', 'libjbig2dec.a'
2024-11-16 12:21:10 +01:00
Write-Progress -Activity 'Installing toolchain' -Status 'toolchain' -PercentComplete 0 -CurrentOperation 'Create the $InstallPath folder'
mkdir $InstallPath
2024-11-16 12:21:10 +01:00
Write-Progress -Activity 'Installing toolchain' -Status 'toolchain' -PercentComplete 1 -CurrentOperation 'Download the kos32-gcc toolchain'
Invoke-WebRequest http://ftp.kolibrios.org/users/Serge/new/Toolchain/msys-kos32-5.4.0.7z -OutFile $InstallPath\kos32-toolchain.7z
2024-11-16 12:21:10 +01:00
Write-Progress -Activity 'Installing toolchain' -Status 'toolchain' -PercentComplete 20 -CurrentOperation 'Unpacking kos32-gcc toolchain'
Expand-7Zip -ArchiveFileName $InstallPath\kos32-toolchain.7z -TargetPath $InstallPath
2024-11-16 12:21:10 +01:00
Write-Progress -Activity 'Installing toolchain' -Status 'Installing libraries' -PercentComplete 40 -CurrentOperation 'Downloading libraries'
Invoke-WebRequest http://ftp.kolibrios.org/users/Serge/new/Toolchain/sdk-28-10-16.7z -OutFile $InstallPath\win32\mingw32\sdk-28-10-16.7z
2024-11-16 12:21:10 +01:00
Write-Progress -Activity 'Installing toolchain' -Status 'Installing libraries' -PercentComplete 50 -CurrentOperation 'Unpacking libraries'
Expand-7Zip -ArchiveFileName $InstallPath\win32\mingw32\sdk-28-10-16.7z -TargetPath $InstallPath\win32\mingw32\
for (($i = 0); $i -lt $LIST_OF_LIBS.count; $i++)
{
2024-11-16 12:21:10 +01:00
Write-Progress -Activity 'Installing toolchain' -Status 'Installing libraries' -PercentComplete 50+(50 * ($i / $LIST_OF_LIBS.count) ) -CurrentOperation = 'download $($LIST_OF_LIBS[$i])'
2024-11-16 12:21:10 +01:00
$LINK = "$URL_TO_LIBS/$LIST_OF_LIBS[$i]"
2024-11-16 12:21:10 +01:00
Invoke-WebRequest $LINK -OutFile $InstallPath\win32\mingw32\lib\$LIST_OF_LIBS[$i]
}