Symbian build workflow

This commit is contained in:
Shinovon 2025-05-20 19:31:32 +05:00
parent 396d18ff3b
commit 1fef9e1f23

57
.github/workflows/build_symbian.yml vendored Normal file
View File

@ -0,0 +1,57 @@
name: Build latest (Symbian)
# trigger via either push to selected branches or on manual run
on:
push:
branches:
- main
- master
- ModernLighting
- AngledLighting
workflow_dispatch:
concurrency:
group: ${{ github.ref }}-symbian
cancel-in-progress: true
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Download Symbian SDK
run: Invoke-WebRequest https://nnp.nnchan.ru/dl/symbiansr1_rvct4_workflow.zip -OutFile symbiansdk.zip
- name: Extract Symbian SDK
run: Expand-Archive symbiansdk.zip -DestinationPath .
- name: Compile Symbian build
id: compile
run: |
$SDK = "$pwd/SDK/"
$Env:EPOCROOT = "$SDK".Substring(2)
$Env:RVCT40BIN = "$pwd/ARM/RVCT/Programs/4.0/400/win_32-pentium"
$Env:RVCT40INC = "$pwd/ARM/RVCT/Data/4.0/400/include/windows"
$Env:RVCT40LIB = "$pwd/ARM/RVCT/Data/4.0/400/lib"
$Env:ARMLMD_LICENSE_FILE = "$pwd/ARM/Licenses/license.dat;$pwd/ARM/Licenses/License.lic"
cmd /c "$SDK/epoc32/tools/sbs\bin\sbs.bat -b misc/symbian/bld.inf -c armv5_urel -f - -m $SDK/epoc32/build/ClassiCube/makefile -j 4"
(Get-Content misc/symbian/ClassiCube.pkg).Replace('$(EPOCROOT)', "$SDK").Replace('$(PLATFORM)', 'armv5').Replace('$(TARGET)', 'urel') | Set-Content misc/symbian/ClassiCube.pkg
cd misc/symbian
cmd /c "$SDK/epoc32/tools/makesis.exe ClassiCube.pkg ClassiCube.sis"
- uses: ./.github/actions/upload_build
if: ${{ always() && steps.compile.outcome == 'success' }}
with:
SOURCE_FILE: 'misc/symbian/ClassiCube.sis'
DEST_NAME: 'ClassiCube-Symbian.sis'
- uses: ./.github/actions/notify_failure
if: ${{ always() && steps.compile.outcome == 'failure' }}
with:
NOTIFY_MESSAGE: 'Failed to compile Symbian build'
WEBHOOK_URL: '${{ secrets.WEBHOOK_URL }}'
- uses: ./.github/actions/notify_success
if: ${{ always() && steps.compile.outcome == 'success' }}
with:
DESTINATION_URL: '${{ secrets.NOTIFY_URL }}'
WORKFLOW_NAME: 'symbian'