From 0111aa434cd80dd562f0cb8677a06ca89b419ace Mon Sep 17 00:00:00 2001 From: Foereaper Date: Sat, 13 Sep 2025 19:51:11 +0200 Subject: [PATCH 1/3] Run typegenerator before build in Linux workflow --- .github/workflows/linux-build.yml | 20 ++++++++++++++++++++ .github/workflows/on-push.yml | 6 +++--- Submodules/Engine | 2 +- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml index a0052a8a..6a180695 100644 --- a/.github/workflows/linux-build.yml +++ b/.github/workflows/linux-build.yml @@ -9,6 +9,8 @@ jobs: strategy: fail-fast: false + matrix: + build_type: [Debug] steps: - uses: actions/checkout@v4 @@ -46,6 +48,24 @@ jobs: export VULKAN_SDK=/usr/include/vulkan premake5 gmake2 + - name: Build Meta Generator files + run: | + cd Build + make -j$(nproc) -k Gen-Meta + + - name: Run Meta Generator + run: | + META_DIR=Submodules/Engine/Source/Meta/Meta + rm -rf $META_DIR/Generated + Build/Bin/AssetConverter/Engine/${{ matrix.build_type }}/TypeGenerator \ + $META_DIR/Source \ + $META_DIR/Generated + + - name: Re-run Premake + run: | + export VULKAN_SDK=/usr/include/vulkan + premake5 gmake2 + - name: Build run: | cd Build diff --git a/.github/workflows/on-push.yml b/.github/workflows/on-push.yml index 3e8c575f..b5b43f1e 100644 --- a/.github/workflows/on-push.yml +++ b/.github/workflows/on-push.yml @@ -5,9 +5,9 @@ on: workflow_dispatch: jobs: - call-windows-build: - name: Windows Build - uses: ./.github/workflows/win-build.yml +# call-windows-build: +# name: Windows Build +# uses: ./.github/workflows/win-build.yml call-linux-build: name: Linux Build diff --git a/Submodules/Engine b/Submodules/Engine index 73e1a925..f4f58b0e 160000 --- a/Submodules/Engine +++ b/Submodules/Engine @@ -1 +1 @@ -Subproject commit 73e1a925a5526f7369e6b8469c4a62ec4fe4405f +Subproject commit f4f58b0e0aeb866151fff87ebc37d418e81cfd1f From 9ca25576935cd5dd09c8e314b17a44b92a0e87e2 Mon Sep 17 00:00:00 2001 From: Foereaper Date: Sat, 13 Sep 2025 19:52:41 +0200 Subject: [PATCH 2/3] Fix project directory --- .github/workflows/linux-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml index 6a180695..d474290d 100644 --- a/.github/workflows/linux-build.yml +++ b/.github/workflows/linux-build.yml @@ -57,7 +57,7 @@ jobs: run: | META_DIR=Submodules/Engine/Source/Meta/Meta rm -rf $META_DIR/Generated - Build/Bin/AssetConverter/Engine/${{ matrix.build_type }}/TypeGenerator \ + Build/Bin/Game/Engine/${{ matrix.build_type }}/TypeGenerator \ $META_DIR/Source \ $META_DIR/Generated From fa39c2f096ed059dfe369c7b5fec6796013646e4 Mon Sep 17 00:00:00 2001 From: Foereaper Date: Sun, 14 Sep 2025 15:15:30 +0200 Subject: [PATCH 3/3] Switch to using centralized workflow files --- .github/workflows/linux-build.yml | 72 ---------------------- .github/workflows/on-label-linux-build.yml | 5 +- .github/workflows/on-label-win-build.yml | 4 +- .github/workflows/on-push.yml | 8 ++- .github/workflows/win-build.yml | 39 ------------ 5 files changed, 12 insertions(+), 116 deletions(-) delete mode 100644 .github/workflows/linux-build.yml delete mode 100644 .github/workflows/win-build.yml diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml deleted file mode 100644 index d474290d..00000000 --- a/.github/workflows/linux-build.yml +++ /dev/null @@ -1,72 +0,0 @@ -name: Linux Build - -on: - workflow_call: - -jobs: - linux-build: - runs-on: [self-hosted, linux] - - strategy: - fail-fast: false - matrix: - build_type: [Debug] - - steps: - - uses: actions/checkout@v4 - with: - submodules: false - repository: novusengine/Game - -# - name: Setup premake -# uses: abel0b/setup-premake@v2.4 -# with: -# version: "5.0.0-beta1" - -# - name: Install dependencies -# run: | -# sudo apt-get update && sudo apt-get install -yq clang libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libvulkan-dev -# sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-14 100 - -# - name: Install Vulkan SDK -# run: | -# wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo tee /etc/apt/trusted.gpg.d/lunarg.asc -# sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-jammy.list http://packages.lunarg.com/vulkan/lunarg-vulkan-jammy.list -# sudo apt update -# sudo apt install vulkan-sdk - - - name: Checkout submodules - run: | - git submodule update --init --recursive - -# - name: Copy dxcompiler library to system -# run: | -# sudo cp /home/runner/work/Game/Game/Submodules/Engine/Dependencies/dxcompiler/lib/linux/libdxcompiler.so /usr/local/lib - - - name: Run Premake - run: | - export VULKAN_SDK=/usr/include/vulkan - premake5 gmake2 - - - name: Build Meta Generator files - run: | - cd Build - make -j$(nproc) -k Gen-Meta - - - name: Run Meta Generator - run: | - META_DIR=Submodules/Engine/Source/Meta/Meta - rm -rf $META_DIR/Generated - Build/Bin/Game/Engine/${{ matrix.build_type }}/TypeGenerator \ - $META_DIR/Source \ - $META_DIR/Generated - - - name: Re-run Premake - run: | - export VULKAN_SDK=/usr/include/vulkan - premake5 gmake2 - - - name: Build - run: | - cd Build - make -j$(nproc) -k diff --git a/.github/workflows/on-label-linux-build.yml b/.github/workflows/on-label-linux-build.yml index 44e7a535..a99b1d9b 100644 --- a/.github/workflows/on-label-linux-build.yml +++ b/.github/workflows/on-label-linux-build.yml @@ -8,5 +8,6 @@ on: jobs: call-linux-build: if: ${{ github.event.label.name == 'build-linux' }} - name: Linux Build - uses: ./.github/workflows/linux-build.yml + uses: novusengine/Workflows/.github/workflows/linux-build.yml@master + with: + project: Game \ No newline at end of file diff --git a/.github/workflows/on-label-win-build.yml b/.github/workflows/on-label-win-build.yml index 9f8c523b..f30e6f1a 100644 --- a/.github/workflows/on-label-win-build.yml +++ b/.github/workflows/on-label-win-build.yml @@ -9,4 +9,6 @@ jobs: call-windows-build: if: ${{ github.event.label.name == 'build-win' }} name: Windows Build - uses: ./.github/workflows/win-build.yml + uses: novusengine/Workflows/.github/workflows/linux-build.yml@master + with: + project: Game \ No newline at end of file diff --git a/.github/workflows/on-push.yml b/.github/workflows/on-push.yml index b5b43f1e..f56e5ca6 100644 --- a/.github/workflows/on-push.yml +++ b/.github/workflows/on-push.yml @@ -7,8 +7,12 @@ on: jobs: # call-windows-build: # name: Windows Build -# uses: ./.github/workflows/win-build.yml +# uses: novusengine/Workflows/.github/workflows/win-build.yml@master +# with: +# project: Game call-linux-build: name: Linux Build - uses: ./.github/workflows/linux-build.yml + uses: novusengine/Workflows/.github/workflows/linux-build.yml@master + with: + project: Game \ No newline at end of file diff --git a/.github/workflows/win-build.yml b/.github/workflows/win-build.yml deleted file mode 100644 index 72104bb0..00000000 --- a/.github/workflows/win-build.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: Windows Build - -on: - workflow_call: - -jobs: - win-build: - runs-on: [self-hosted, windows] - - strategy: - fail-fast: false - matrix: - build-type: [RelDebug] - - steps: - - uses: actions/checkout@v4 - with: - submodules: false - repository: novusengine/Game - - - name: Checkout submodules - run: | - git submodule update --init --recursive - - - name: Run Premake - run: | - premake5 vs2022 - - - name: Build - run: | - msbuild /m /p:Configuration=${{ matrix.build-type }} Build/Game.sln - - - name: Upload Game App artifact - uses: actions/upload-artifact@v4 - with: - name: Game-App_${{ matrix.build-type }} - path: | - Build/Bin/Game/${{ matrix.build-type }}/Game-App.exe - Build/Bin/Game/${{ matrix.build-type }}/dxcompiler.dll