Set default prebuilt paths in env template #74
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build SphereUI | |
| on: | |
| push: | |
| branches: [main, develop] | |
| pull_request: | |
| branches: [main, develop] | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - name: Setup MSVC (x64) | |
| uses: ilammy/msvc-dev-cmd@v1 | |
| with: | |
| arch: x64 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Fetch dependencies | |
| run: bun run fetch:deps | |
| - name: Cache Skia prebuilt | |
| id: cache-skia | |
| uses: actions/cache@v4 | |
| with: | |
| path: external/prebuilt/skia | |
| key: skia-${{ hashFiles('CMakeLists.txt') }} | |
| - name: Cache V8 prebuilt | |
| id: cache-v8 | |
| uses: actions/cache@v4 | |
| with: | |
| path: external/prebuilt/v8 | |
| key: v8-${{ hashFiles('CMakeLists.txt') }} | |
| - name: Configure CMake | |
| run: bun run configure | |
| - name: Build framework | |
| run: bun run build:framework | |
| - name: Build examples | |
| run: bun run build:example | |
| - name: Upload SphereKit SDK | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: SphereKit-SDK | |
| path: | | |
| build/SphereKit.Foundation.dll | |
| build/SphereKit.Foundation.lib | |
| build/SphereKit.GraphicInterface.dll | |
| build/SphereKit.GraphicInterface.lib | |
| build/SphereKit.GraphicComponent.dll | |
| build/SphereKit.GraphicComponent.lib | |
| build/SphereKit.DirectAudioEngine.dll | |
| build/SphereKit.DirectAudioEngine.lib | |
| build/SphereKit.JavaScriptEngine.dll | |
| build/SphereKit.JavaScriptEngine.lib | |
| build/Sphere.React.dll | |
| build/Sphere.React.lib | |
| build/SphereKit.Vue.dll | |
| build/SphereKit.Vue.lib | |
| include/SPHXApplication.hpp | |
| include/SPHXColor.hpp | |
| include/SPHXDirectAudioEngine.hpp | |
| include/SPHXFoundation.hpp | |
| include/SPHXGraphicComponents.hpp | |
| include/SPHXGraphicInterface.hpp | |
| include/SPHXIWidget.hpp | |
| include/SPHXImage.hpp | |
| include/SPHXPainter.hpp | |
| include/SPHXSvg.hpp | |
| include/SPHXJavaScriptEngine.hpp | |
| include/SphereReact.hpp | |
| include/SphereVUE.hpp | |
| include/audio/Streaming.hpp | |
| include/core/** | |
| include/gui/** | |
| include/platform/** | |
| include/utils/** | |
| framework/MikoUI/include/MikoUI.hpp | |
| retention-days: 30 | |
| - name: Upload examples | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: SphereKit-Examples | |
| path: | | |
| build/SphereExample.exe | |
| build/ActivityMonitor.exe | |
| build/MixerConsole.exe | |
| build/BorderlessPlayer.exe | |
| build/ReactUIDemo.exe | |
| build/VueUIDemo.exe | |
| retention-days: 30 | |
| - name: Upload build logs on failure | |
| if: failure() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: build-logs | |
| path: | | |
| build/**/*.log | |
| build/CMakeFiles/CMakeError.log | |
| build/CMakeFiles/CMakeOutput.log | |
| retention-days: 7 |