This repository was archived by the owner on May 17, 2026. It is now read-only.
Build-LuaJIT #10
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-LuaJIT | |
| on: workflow_dispatch | |
| jobs: | |
| Windows-x86: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup MSVC | |
| uses: ilammy/msvc-dev-cmd@v1 | |
| with: | |
| arch: x86 | |
| - name: Compiling | |
| run: ./project/luajit/scripts/Windows-Building.bat x86 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Windows-x86 | |
| path: LuaJIT/build/x86 | |
| if-no-files-found: warn | |
| Windows-x64: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup MSVC | |
| uses: ilammy/msvc-dev-cmd@v1 | |
| with: | |
| arch: x64 | |
| - name: Compiling | |
| run: ./project/luajit/scripts/Windows-Building.bat x64 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Windows-x64 | |
| path: LuaJIT/build/x64 | |
| if-no-files-found: warn | |
| Windows-arm64: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup MSVC | |
| uses: ilammy/msvc-dev-cmd@v1 | |
| with: | |
| arch: arm64 | |
| - name: Compiling | |
| run: ./project/luajit/scripts/Windows-Building.bat arm64 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Windows-arm64 | |
| path: LuaJIT/build/arm64 | |
| if-no-files-found: warn | |
| MinGW-x64: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup MinGW | |
| run: sudo apt update && sudo apt install mingw-w64 -y | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/MinGW-Building.sh && ./project/luajit/scripts/MinGW-Building.sh x64 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: MinGW-x64 | |
| path: LuaJIT/build/x64 | |
| if-no-files-found: warn | |
| MinGW-x86: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup MinGW | |
| run: sudo apt update && sudo apt install mingw-w64 -y | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/MinGW-Building.sh && ./project/luajit/scripts/MinGW-Building.sh x86 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: MinGW-x86 | |
| path: LuaJIT/build/x86 | |
| if-no-files-found: warn | |
| MacOS: | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/MacOS-Building.sh && ./project/luajit/scripts/MacOS-Building.sh | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Macos | |
| path: LuaJIT/build | |
| if-no-files-found: warn | |
| Linux-x86: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup i386 chroot | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y debootstrap schroot | |
| sudo debootstrap --arch=i386 bookworm /chroot/i386 http://deb.debian.org/debian | |
| sudo sh -c 'cat > /etc/schroot/chroot.d/i386.conf << EOF | |
| [i386] | |
| description=Debian i386 | |
| type=directory | |
| profile=default | |
| directory=/chroot/i386 | |
| users=runner | |
| EOF' | |
| - name: Compiling | |
| run: | | |
| sudo chroot /chroot/i386 /bin/bash -c " | |
| apt-get update && apt-get install -y make gcc git | |
| cd ${{ github.workspace }} | |
| chmod +x project/luajit/scripts/Linux-Building.sh | |
| ./project/luajit/scripts/Linux-Building.sh x86 | |
| " | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Linux-x86 | |
| path: LuaJIT/build/x86 | |
| if-no-files-found: warn | |
| Linux-x64: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/Linux-Building.sh && ./project/luajit/scripts/Linux-Building.sh x64 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Linux-x64 | |
| path: LuaJIT/build/x64 | |
| if-no-files-found: warn | |
| Linux-arm64: | |
| runs-on: ubuntu-22.04-arm | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/Linux-Building.sh && ./project/luajit/scripts/Linux-Building.sh arm64 | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Linux-arm64 | |
| path: LuaJIT/build/arm64 | |
| if-no-files-found: warn | |
| Linux-armv7: | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Setup armhf chroot | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y debootstrap schroot | |
| sudo debootstrap --arch=armhf bookworm /chroot/armhf http://deb.debian.org/debian | |
| sudo sh -c 'cat > /etc/schroot/chroot.d/armhf.conf << EOF | |
| [armhf] | |
| description=Debian armhf | |
| type=directory | |
| profile=default | |
| directory=/chroot/armhf | |
| users=runner | |
| EOF' | |
| - name: Compiling | |
| run: | | |
| sudo chroot /chroot/armhf /bin/bash -c " | |
| apt-get update && apt-get install -y make gcc git | |
| cd ${{ github.workspace }} | |
| chmod +x project/luajit/scripts/Linux-Building.sh | |
| ./project/luajit/scripts/Linux-Building.sh armv7 | |
| " | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Linux-armv7 | |
| path: LuaJIT/build/armv7 | |
| if-no-files-found: warn | |
| iOS: | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/iOS-Building.sh && ./project/luajit/scripts/iOS-Building.sh | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: iOS | |
| path: LuaJIT/build | |
| if-no-files-found: warn | |
| Android: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@main | |
| - name: Install Dependencies | |
| run: sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install make automake autoconf libtool build-essential gcc-multilib -y | |
| - name: Compiling | |
| run: chmod +x project/luajit/scripts/Android-Building.sh && ./project/luajit/scripts/Android-Building.sh | |
| - name: Upload Artifact | |
| uses: actions/upload-artifact@main | |
| with: | |
| name: Android | |
| path: LuaJIT/build | |
| if-no-files-found: warn | |
| Publisher: | |
| needs: [Windows-x86, Windows-x64, Windows-arm64, MinGW-x64, MinGW-x86, MacOS, Linux-x86, Linux-x64, Linux-arm64, Linux-armv7, iOS, Android] | |
| runs-on: ubuntu-24.04 | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v2 | |
| with: | |
| ref: ${{ github.head_ref }} | |
| - name: Download Windows-x86 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Windows-x86 | |
| path: ./LuaJIT/windows-x86 | |
| - name: Download Windows-x64 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Windows-x64 | |
| path: ./LuaJIT/windows-x64 | |
| - name: Download Windows-arm64 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Windows-arm64 | |
| path: ./LuaJIT/windows-arm64 | |
| - name: Download MinGW-x64 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: MinGW-x64 | |
| path: ./LuaJIT/mingw-x64 | |
| - name: Download MinGW-x86 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: MinGW-x86 | |
| path: ./LuaJIT/mingw-x86 | |
| - name: Download MacOS Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Macos | |
| path: ./LuaJIT/macos | |
| - name: Download Linux-x86 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Linux-x86 | |
| path: ./LuaJIT/linux-x86 | |
| - name: Download Linux-x64 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Linux-x64 | |
| path: ./LuaJIT/linux-x64 | |
| - name: Download Linux-arm64 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Linux-arm64 | |
| path: ./LuaJIT/linux-arm64 | |
| - name: Download Linux-armv7 Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Linux-armv7 | |
| path: ./LuaJIT/linux-armv7 | |
| - name: Download iOS Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: iOS | |
| path: ./LuaJIT/ios | |
| - name: Download Android Artifacts | |
| uses: actions/download-artifact@main | |
| with: | |
| name: Android | |
| path: ./LuaJIT/android | |
| - name: Copy to project/luajit/lib and project/luajit/include | |
| run: | | |
| mkdir -p ./project/luajit/lib/Windows | |
| mkdir -p ./project/luajit/lib/MinGW | |
| mkdir -p ./project/luajit/lib/MacOS | |
| mkdir -p ./project/luajit/lib/Linux | |
| mkdir -p ./project/luajit/lib/iOS | |
| mkdir -p ./project/luajit/lib/Android | |
| mkdir -p ./project/luajit/include | |
| rm -rf ./project/luajit/lib/Windows/* | |
| rm -rf ./project/luajit/lib/MinGW/* | |
| rm -rf ./project/luajit/lib/MacOS/* | |
| rm -rf ./project/luajit/lib/Linux/* | |
| rm -rf ./project/luajit/lib/iOS/* | |
| rm -rf ./project/luajit/lib/Android/* | |
| rm -rf ./project/luajit/include/* | |
| cp -r ./LuaJIT/windows-x86/lua51.lib ./project/luajit/lib/Windows/lua51-x86.lib | |
| cp -r ./LuaJIT/windows-x64/lua51.lib ./project/luajit/lib/Windows/lua51-x64.lib | |
| cp -r ./LuaJIT/windows-arm64/lua51.lib ./project/luajit/lib/Windows/lua51-arm64.lib | |
| cp -r ./LuaJIT/windows-x86/include/* ./project/luajit/include | |
| cp -r ./LuaJIT/mingw-x64/libluajit.a ./project/luajit/lib/MinGW/libluajit-x64.a | |
| cp -r ./LuaJIT/mingw-x86/libluajit.a ./project/luajit/lib/MinGW/libluajit-x86.a | |
| cp -r ./LuaJIT/mingw-x64/include/* ./project/luajit/include | |
| cp -r ./LuaJIT/macos/libluajit.a ./project/luajit/lib/MacOS/libluajit.a | |
| cp -r ./LuaJIT/macos/include/* ./project/luajit/include | |
| cp -r ./LuaJIT/linux-x86/libluajit.a ./project/luajit/lib/Linux/libluajit-x86.a | |
| cp -r ./LuaJIT/linux-x64/libluajit.a ./project/luajit/lib/Linux/libluajit-x64.a | |
| cp -r ./LuaJIT/linux-arm64/libluajit.a ./project/luajit/lib/Linux/libluajit-arm64.a | |
| cp -r ./LuaJIT/linux-armv7/libluajit.a ./project/luajit/lib/Linux/libluajit-armv7.a | |
| cp -r ./LuaJIT/linux-x64/include/* ./project/luajit/include | |
| cp -r ./LuaJIT/ios/libluajit_device.a ./project/luajit/lib/iOS/libluajit_device.a | |
| cp -r ./LuaJIT/ios/libluajit_sim.a ./project/luajit/lib/iOS/libluajit_sim.a | |
| cp -r ./LuaJIT/ios/include/* ./project/luajit/include/ | |
| cp -r ./LuaJIT/android/libluajit-arm64.a ./project/luajit/lib/Android/libluajit-arm64.a | |
| cp -r ./LuaJIT/android/libluajit-armv7a.a ./project/luajit/lib/Android/libluajit-armv7a.a | |
| cp -r ./LuaJIT/android/libluajit-x86_64.a ./project/luajit/lib/Android/libluajit-x86_64.a | |
| cp -r ./LuaJIT/android/libluajit-x86.a ./project/luajit/lib/Android/libluajit-x86.a | |
| cp -r ./LuaJIT/android/include/* ./project/luajit/include/ | |
| rm -rf ./LuaJIT | |
| - name: Push to GitHub | |
| uses: stefanzweifel/git-auto-commit-action@master | |
| with: | |
| commit_message: "Update `LuaJIT` libs and headers." |