-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbuildScript.ps1
73 lines (62 loc) · 2.74 KB
/
buildScript.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
Write-Host
Write-Host ===================================================
Write-Host Despair Codec Pack
Write-Host Powershell Automatic Build Script
Write-Host Maintainer : Automne von Einzbern
Write-Host Version : 0.2
Write-Host ===================================================
Write-Host
# Enable TLS v1.2 to allow downloads from GitHub
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
# Sourcing URLs
. .\URLVars.ps1
# Downloading Files
Write-Host "[+] Downloading MPC-BE"
Invoke-WebRequest -Uri $mpc -OutFile ".\Downloads\mpcbe.7z"
Write-Host "[+] Downloading LAVFilters"
Invoke-WebRequest -Uri $lav -OutFile ".\Downloads\lavfilters.zip"
Write-Host "[+] Downloading madVR"
Invoke-WebRequest -Uri $mad -OutFile ".\Downloads\madvr.zip"
Write-Host "[+] Downloading XySubFilter"
Invoke-WebRequest -Uri $xys -OutFile ".\Downloads\xysubfilter.zip"
Write-Host "[+] Downloading SyncPlay"
Invoke-WebRequest -Uri $syn -OutFile ".\Downloads\syncplay.zip"
# Dezipping folder
Write-Host "[+] Extracting packages"
.\7Zip\7za.exe x .\Downloads\mpcbe.7z -bso0 -aoa -oExtracted\MPC-BE
.\7Zip\7za.exe x .\Downloads\lavfilters.zip -bso0 -aoa -oExtracted\LAVFilters
.\7Zip\7za.exe x .\Downloads\madvr.zip -bso0 -aoa -oExtracted\madVR
.\7Zip\7za.exe x .\Downloads\xysubfilter.zip -bso0 -aoa -oExtracted\XySubFilter
.\7Zip\7za.exe x .\Downloads\syncplay.zip -bso0 -aoa -oExtracted\Syncplay
# Moving MPC-BE extracted folder to the correct directory
Write-Host "[+] Fixing directories"
$folderName = cmd /c dir Extracted\MPC-BE\MPC* /b
$extractedFolder = "Extracted\MPC-BE\" + $folderName + "\*"
Move-Item $extractedFolder Extracted\MPC-BE
Remove-Item ("Extracted\MPC-BE\" + $folderName)
# Downloading Inno Setup
Write-Host "[?] Looking for Inno Setup"
if (!(Test-Path "C:\Program Files (x86)\Inno Setup 6\ISCC.exe"))
{
Write-Host "[-] Inno Setup not found in Program Files (x86)"
Write-Host "[+] Downloading Inno Setup"
Invoke-WebRequest -Uri "http://www.jrsoftware.org/download.php/is.exe" -out ".\Downloads\is.exe"
Write-Host "[+] Installing Inno Setup"
.\Downloads\is.exe /VERYSILENT
DO
{
Start-Sleep -s 2
} While (!(Test-Path "C:\Program Files (x86)\Inno Setup 6\ISCC.exe"))
}
# Building DCP
Write-Host "[+] Building Despair Codec Pack (can take a while)"
Start-Sleep -s 2
. "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" .\setup.iss > inno_build.log
Write-Host "[*] Build log: inno_build.log"
# Printing Checksums
Write-Host -NoNewline "[*] MD5 : "
.\fciv.exe -md5 $(Get-ChildItem .\Output\*exe) | findstr "exe" | %{$_.split(' ')[0]}
Write-Host -NoNewline "[*] SHA-1 : "
.\fciv.exe -sha1 $(Get-ChildItem .\Output\*exe) | findstr "exe" | %{$_.split(' ')[0]}
Write-Host "[*] Done."
pause