Skip to content

Commit

Permalink
Separate Qt 5 and Qt 6 CI builds
Browse files Browse the repository at this point in the history
| Architecture | Qt 5 CI Build | Qt 6 CI Build |
|--------------|---------------|---------------|
| **x86**      | Supported     | Not Supported |
| **x64**      | Supported     | Supported     |
| **ARM64**    | Not Supported | Supported     |
  • Loading branch information
offhub committed Nov 21, 2024
1 parent 644abe6 commit 17aa830
Show file tree
Hide file tree
Showing 10 changed files with 435 additions and 127 deletions.
113 changes: 9 additions & 104 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: CI
name: CI (Qt 5)

on:
workflow_dispatch:
Expand Down Expand Up @@ -71,7 +71,7 @@ on:
env:
forbuildVariables: use Installer\buildVariables.cmd file
#qt_version: 5.15.16
#qt6_version: 6.3.1
#qt6_version: 6.6.3
#openssl_version: 3.4.0
#ghSsl_user: xanasoft
#ghSsl_repo: openssl-builds
Expand All @@ -91,6 +91,13 @@ jobs:
- name: Checkout code
uses: actions/[email protected]

- name: Load Variables from buildVariables.cmd
shell: cmd
run: |
@echo on
call "${{ github.workspace }}\Installer\buildVariables.cmd"
echo qt6_version=%qt6_version% >> %GITHUB_ENV%
- name: Setup msbuild
uses: microsoft/setup-msbuild@v2

Expand Down Expand Up @@ -183,108 +190,6 @@ jobs:
Installer/SbiePlus_x64/*
retention-days: 60


Build_ARM64:
runs-on: windows-2019
timeout-minutes: 45

steps:
- name: Checkout code
uses: actions/[email protected]

- name: Load Variables from buildVariables.cmd
shell: cmd
run: |
@echo on
call "${{ github.workspace }}\Installer\buildVariables.cmd"
echo qt6_version=%qt6_version% >> %GITHUB_ENV%
- name: Setup msbuild
uses: microsoft/setup-msbuild@v2

#
# Compile Sandboxie Core
#

- name: Build Sandboxie x86 (DLLs & svc)
run: msbuild /t:build Sandboxie\SandboxDll.sln /p:Configuration="SbieRelease" /p:Platform=Win32 -maxcpucount:8

- name: Build Sandboxie ARM64 (all)
run: msbuild /t:build Sandboxie\Sandbox.sln /p:Configuration="SbieRelease" /p:Platform=ARM64 -maxcpucount:8

- name: Build Sandboxie ARM64EC (DLL)
run: msbuild /t:build Sandboxie\SandboxDll.sln /p:Configuration="SbieRelease" /p:Platform=ARM64EC -maxcpucount:8

#
# Prepare Qt Framework for ARM64 (we also need Qt x64 for some utilities like qmake)
#

- name: Install Qt6 x64
uses: jurplel/[email protected]
with:
# version: '6.2.4'
version: '${{ env.qt6_version }}'
# dir: ..
# arch: ${{ matrix.qt-target }}
arch: 'win64_msvc2019_64'
# tools: 'tools_qtcreator,4.14.0-0-202012170949,qt.tools.qtcreator'
cache: true

- name: Install Qt6 ARM64
uses: jurplel/[email protected]
with:
# version: '6.2.4'
version: '${{ env.qt6_version }}'
# dir: ..
# arch: ${{ matrix.qt-target }}
arch: 'win64_msvc2019_arm64'
# tools: 'tools_qtcreator,4.14.0-0-202012170949,qt.tools.qtcreator'
cache: true

- name: Installing Jom
# if: steps.cache-qt.outputs.cache-hit != 'true'
run: SandboxiePlus\install_jom.cmd

#
# Compile Sandboxie Plus
#

- name: Build Sandboxie-Plus ARM64
run: SandboxiePlus\qmake_plus.cmd ARM64

- name: Build SbieShell ARM64
run: msbuild /t:restore,build -p:RestorePackagesConfig=true SandboxiePlus\SbieShell\SbieShell.sln /p:Configuration="Release" /p:Platform=ARM64

#
# Compile Sandboxie Tools
#

- name: Build Sandboxie-Tools ARM64
run: msbuild /t:build SandboxieTools\SandboxieTools.sln /p:Configuration="Release" /p:Platform=ARM64 -maxcpucount:8

#
# Merge everything together
#

- name: Get openssl binaries
run: Installer\get_openssl.cmd

- name: Get 7z binaries
run: Installer\get_7zip.cmd

- name: Merging Build
run: Installer\copy_build.cmd ARM64

- name: Upload Sandboxie ARM64
#if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request'
uses: actions/[email protected]
with:
name: Sandboxie_ARM64
path: |
Installer/SbiePlus_a64/*
retention-days: 60


Build_x86:
runs-on: windows-2019
timeout-minutes: 45
Expand Down
Loading

0 comments on commit 17aa830

Please sign in to comment.