inital commit кек

This commit is contained in:
SashegDev
2026-06-04 03:12:17 +00:00
parent 82675f402d
commit f2888dea3a
190 changed files with 18421 additions and 21 deletions
+71
View File
@@ -0,0 +1,71 @@
# ============================================================
# CBE Emulator - Windows build script (PowerShell)
# Run on Windows with JDK 14+ installed.
# Usage:
# .\build-windows.ps1 # builds app-image (folder with .exe)
# .\build-windows.ps1 -Type msi # builds MSI installer
# .\build-windows.ps1 -Type exe # builds EXE installer
# ============================================================
param(
[ValidateSet('app-image', 'msi', 'exe')]
[string]$Type = 'app-image'
)
$ErrorActionPreference = 'Stop'
Set-Location $PSScriptRoot
Write-Host ""
Write-Host "=== CBE Emulator - Windows build ===" -ForegroundColor Cyan
Write-Host ""
# 1. Build
Write-Host "[1/4] Building Gradle project..." -ForegroundColor Yellow
& .\gradlew.bat :modules:gui:stage --no-daemon
if ($LASTEXITCODE -ne 0) { Write-Error "Gradle build failed"; exit 1 }
# 2. Detect jpackage
$jpackage = (Get-Command jpackage -ErrorAction SilentlyContinue)
if (-not $jpackage) {
Write-Error "jpackage not found in PATH. Please install JDK 14+."
exit 1
}
# 3. jpackage
$stageDir = "modules\gui\build\stage"
$outDir = "build\installer"
if (Test-Path $outDir) { Remove-Item -Recurse -Force $outDir }
New-Item -ItemType Directory -Path $outDir | Out-Null
Write-Host "[2/4] Running jpackage (type=$Type)..." -ForegroundColor Yellow
& jpackage `
--input $stageDir `
--dest $outDir `
--name CBE-Emulator `
--main-jar cbe-emu.jar `
--main-class com.cbe.gui.Main `
--app-version 0.1.0 `
--vendor "CBE Project" `
--description "CBE Platform - Emulator" `
--type $Type `
--java-options "-Xmx256m"
if ($LASTEXITCODE -ne 0) { Write-Error "jpackage failed"; exit 1 }
Write-Host "[3/4] Output:" -ForegroundColor Green
Get-ChildItem $outDir | ForEach-Object { Write-Host " $($_.FullName)" }
# 4. Stage example plugins
$pluginsDir = "build\plugins"
if (-not (Test-Path $pluginsDir)) { New-Item -ItemType Directory -Path $pluginsDir | Out-Null }
Copy-Item "examples\tiny-cpu.cpu\*" -Recurse -Force -Destination $pluginsDir
Copy-Item "examples\basic-ram.ram\*" -Recurse -Force -Destination $pluginsDir
Copy-Item "examples\vga-display.gpu\*" -Recurse -Force -Destination $pluginsDir
Write-Host ""
Write-Host "[4/4] Done." -ForegroundColor Green
Write-Host "Installer/output: $outDir" -ForegroundColor Green
Write-Host "Example plugins: $pluginsDir" -ForegroundColor Green
Write-Host ""
Write-Host "For app-image type, the launcher is at:" -ForegroundColor Cyan
Write-Host " $outDir\CBE-Emulator\CBE-Emulator.exe" -ForegroundColor White