name: buildluna on: workflow_call: jobs: build_cpp_xp: runs-on: windows-2019 steps: - uses: actions/checkout@v4 with: submodules: recursive - uses: GuillaumeFalourd/setup-windows10-sdk-action@v2 with: sdk-version: 22621 - run: python .github/scripts/build_lunatranslator.py cpp xp - uses: actions/upload-artifact@v4 with: name: cpp_xp path: cpp/builds hook_xp: runs-on: windows-2019 permissions: id-token: write attestations: write contents: write steps: - uses: actions/checkout@v4 - run: git submodule init cpp/libs/minhook - run: git submodule update cpp/libs/minhook - uses: GuillaumeFalourd/setup-windows10-sdk-action@v2 with: sdk-version: 22621 - run: python .github/scripts/build_lunahook.py build winxp_core - uses: actions/upload-artifact@v4 with: name: hook_xp path: cpp/LunaHook/builds/Release_winxp hook: runs-on: windows-latest strategy: matrix: bits: [32, 64] permissions: id-token: write attestations: write contents: write steps: - uses: actions/checkout@v4 - run: git submodule init cpp/libs/minhook - run: git submodule update cpp/libs/minhook - uses: GuillaumeFalourd/setup-windows10-sdk-action@v2 with: sdk-version: 22621 - run: python .github/scripts/build_lunahook.py build ${{matrix.bits}} 1 - uses: actions/upload-artifact@v4 with: name: hook_${{matrix.bits}} path: cpp/LunaHook/builds/Release pyrt: runs-on: windows-latest strategy: matrix: architecture: [x86, x64] steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: '3.7.9' architecture: ${{ matrix.architecture }} - run: python .github/scripts/build_lunatranslator.py pyrt ${{ matrix.architecture }} 3.7.9 - uses: actions/upload-artifact@v4 with: name: pyrt_${{ matrix.architecture }} path: py/pyrt build_cpp: runs-on: windows-latest strategy: matrix: architecture: [x86, x64] steps: - uses: actions/checkout@v4 with: submodules: recursive - uses: GuillaumeFalourd/setup-windows10-sdk-action@v2 with: sdk-version: 22621 - run: python .github/scripts/build_lunatranslator.py cpp ${{ matrix.architecture }} - uses: actions/upload-artifact@v4 with: name: cpp_${{ matrix.architecture }} path: cpp/builds merge: runs-on: windows-latest needs: [pyrt,build_cpp,hook] strategy: matrix: include: - architecture: x86 fname: LunaTranslator_x86 - architecture: x64 fname: LunaTranslator steps: - uses: actions/checkout@v4 - run: git submodule init py/files/LunaTranslator_qss - run: git submodule update py/files/LunaTranslator_qss - uses: actions/download-artifact@v4 with: path: build - run: python .github/scripts/build_lunatranslator.py merge ${{ matrix.architecture }} - uses: actions/upload-artifact@v4 with: name: ${{ matrix.fname }} path: py/build/${{matrix.fname}}.zip merge_xp: runs-on: windows-latest needs: [build_cpp_xp,hook_xp] steps: - uses: actions/checkout@v4 - run: git submodule init py/files/LunaTranslator_qss - run: git submodule update py/files/LunaTranslator_qss - uses: actions/download-artifact@v4 with: path: build - run: python .github/scripts/build_lunatranslator.py merge xp - uses: actions/upload-artifact@v4 with: name: LunaTranslator_x86_winxp path: py/build/LunaTranslator_x86_winxp.zip