Skip to content

Commit

Permalink
build: improved local build script/behavior
Browse files Browse the repository at this point in the history
  • Loading branch information
ilyvion committed May 21, 2024
1 parent c462866 commit 9e36838
Show file tree
Hide file tree
Showing 7 changed files with 67 additions and 31 deletions.
4 changes: 2 additions & 2 deletions .savedatafolder/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
Config
Saves
*/Config
*/Saves
Empty file added .savedatafolder/1.3/.keep
Empty file.
Empty file added .savedatafolder/1.4/.keep
Empty file.
Empty file added .savedatafolder/1.5/.keep
Empty file.
61 changes: 34 additions & 27 deletions .vscode/build.ps1
Original file line number Diff line number Diff line change
@@ -1,30 +1,37 @@
$ErrorActionPreference = 'Stop'

$env:RimWorldVersion = $args[0]
$Configuration = 'Release'

$Target = "C:\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\FarmingHysteresis"
$VersionTargetPrefix = "D:\RimWorld"
$VersionTargetSuffix = "Mods\FarmingHysteresis"
#$MainTarget = "C:\Program Files (x86)\Steam\steamapps\common\RimWorld\Mods\FarmingHysteresis"
$MainTarget = "$VersionTargetPrefix\$env:RimWorldVersion\$VersionTargetSuffix"

#Write-Output $MainTarget
#return

# $env:RimWorldSteamWorkshopFolderPath = "..\.deps\refs"
$env:RimWorldSteamWorkshopFolderPath = "C:\Program Files (x86)\Steam\steamapps\workshop\content\294100"

# build dlls
$env:RimWorldVersion = "1.3"
dotnet build --configuration $Configuration .vscode/mod.csproj
if ($LASTEXITCODE -gt 0) {
throw "Build failed"
}
Start-Sleep -Seconds 0.5
$env:RimWorldVersion = "1.4"
dotnet build --configuration $Configuration .vscode/mod.csproj
if ($LASTEXITCODE -gt 0) {
throw "Build failed"
}
Start-Sleep -Seconds 0.5
$env:RimWorldVersion = "1.5"
$env:RimWorldVersion = $args[0] # "1.3"
dotnet build --configuration $Configuration .vscode/mod.csproj
if ($LASTEXITCODE -gt 0) {
throw "Build failed"
}
# Start-Sleep -Seconds 0.5
# $env:RimWorldVersion = "1.4"
# dotnet build --configuration $Configuration .vscode/mod.csproj
# if ($LASTEXITCODE -gt 0) {
# throw "Build failed"
# }
# Start-Sleep -Seconds 0.5
# $env:RimWorldVersion = "1.5"
# dotnet build --configuration $Configuration .vscode/mod.csproj
# if ($LASTEXITCODE -gt 0) {
# throw "Build failed"
# }

# remove pdbs (for release)
if ($Configuration -eq "Release") {
Expand All @@ -33,18 +40,18 @@ if ($Configuration -eq "Release") {
}

# remove mod folder
Remove-Item -Path $Target -Recurse -ErrorAction SilentlyContinue
Remove-Item -Path $MainTarget -Recurse -ErrorAction SilentlyContinue

# copy mod files
Copy-Item -Path 1.3 $Target\1.3 -Recurse
Copy-Item -Path 1.4 $Target\1.4 -Recurse
Copy-Item -Path 1.5 $Target\1.5 -Recurse

Copy-Item -Path Common $Target\Common -Recurse
Copy-Item -Path About $Target\About -Recurse -Exclude *.pdn

Copy-Item -Path CHANGELOG.md $Target
Copy-Item -Path LICENSE $Target
Copy-Item -Path LICENSE.Apache-2.0 $Target
Copy-Item -Path LICENSE.MIT $Target
Copy-Item -Path README.md $Target
Copy-Item -Path 1.3 $MainTarget\1.3 -Recurse
Copy-Item -Path 1.4 $MainTarget\1.4 -Recurse
Copy-Item -Path 1.5 $MainTarget\1.5 -Recurse

Copy-Item -Path Common $MainTarget\Common -Recurse
Copy-Item -Path About $MainTarget\About -Recurse -Exclude *.pdn

Copy-Item -Path CHANGELOG.md $MainTarget
Copy-Item -Path LICENSE $MainTarget
Copy-Item -Path LICENSE.Apache-2.0 $MainTarget
Copy-Item -Path LICENSE.MIT $MainTarget
Copy-Item -Path README.md $MainTarget
17 changes: 15 additions & 2 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@
"request": "launch",
"preLaunchTask": "build dll",
"args": [
"-savedatafolder=${workspaceFolder}\\.savedatafolder",
"-savedatafolder=${workspaceFolder}\\.savedatafolder\\${input:rimWorldVersion}",
//"-quicktest",
],
"program": "C:/Program Files (x86)/Steam/steamapps/common/RimWorld/RimWorldWin64.exe",
"program": "D://RimWorld/${input:rimWorldVersion}/RimWorldWin64.exe",
"cwd": "${workspaceFolder}",
"console": "internalConsole",
"internalConsoleOptions": "neverOpen",
Expand All @@ -32,5 +32,18 @@
"searchNuGetOrgSymbolServer": false
}
}
],
"inputs": [
{
"id": "rimWorldVersion",
"type": "pickString",
"description": "Rimworld version to launch?",
"options": [
"1.5",
"1.4",
"1.3",
],
"default": "1.5"
}
]
}
16 changes: 16 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,23 @@
"isDefault": true
},
"command": ".vscode/build.ps1",
"args": [
"${input:rimWorldVersion}"
],
"problemMatcher": []
}
],
"inputs": [
{
"id": "rimWorldVersion",
"type": "pickString",
"description": "Rimworld version to build?",
"options": [
"1.5",
"1.4",
"1.3",
],
"default": "1.5"
}
]
}

0 comments on commit 9e36838

Please sign in to comment.