diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3a155a5eb..8abdebcab 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,176 +30,176 @@ jobs: meta: uses: ./.github/workflows/meta.yml - windows: - needs: meta - runs-on: windows-latest - strategy: - matrix: - arch: [aarch64, x86_64] - fail-fast: false - - steps: - - name: Windows runner hack - shell: cmd - run: | - dir d:\a - cd .. - mkdir C:\MaaFramework - rmdir MaaFramework - mklink /j MaaFramework C:\MaaFramework - dism /Online /Disable-Feature /FeatureName:Windows-Defender /Remove /NoRestart /Quiet - cd . - - - name: Windows runner hack (2) - uses: al-cheb/configure-pagefile-action@v1.4 - with: - minimum-size: 16GB - maximum-size: 16GB - disk-root: "D:" - - - uses: actions/checkout@v4 - with: - submodules: true - - - name: Setup Windows 10 SDK - uses: GuillaumeFalourd/setup-windows10-sdk-action@v2.2 - with: - sdk-version: 26100 - - - name: Bootstrap MaaDeps - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-windows - - - uses: pnpm/action-setup@v4 - with: - version: latest - - - name: Use Node - uses: actions/setup-node@v4 - with: - node-version: 20 - - - name: Prepare node_modules - run: | - cd source/binding/NodeJS - pnpm i - cd - - - - name: Build MAA - run: | - cmake --preset "${{ matrix.arch == 'x86_64' && 'MSVC 2022' || 'MSVC 2022 ARM' }}" -DCMAKE_SYSTEM_VERSION="10.0.26100.0" -DMAADEPS_TRIPLET="maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-windows" -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' -DBUILD_NODEJS_BINDING=ON - - cmake --build build --preset "${{ matrix.arch == 'x86_64' && 'MSVC 2022' || 'MSVC 2022 ARM' }} - RelWithDebInfo" -j 16 - - - name: Install - shell: bash - if: always() - run: | - cmake --install build --prefix install --config RelWithDebInfo - rm -rf install/bin/msvc-debug - - cp -r docs install - cp README*.md install - - cp -r sample install - - cp -r LICENSE.md install - - - uses: actions/upload-artifact@v4 - if: always() - with: - name: MAA-win-${{ matrix.arch }} - path: "install" - - ubuntu: - needs: meta - runs-on: ubuntu-latest - container: archlinux:base-devel - strategy: - matrix: - arch: [aarch64, x86_64] - fail-fast: false - - steps: - # maybe should explicitly update some pkg instead of all? - - name: Update system - run: | - pacman -Syu --noconfirm - - - name: Install dep - run: | - pacman -Sy - pacman -S --noconfirm cmake python ccache ninja git - - - uses: pnpm/action-setup@v4 - with: - version: latest - - - name: Use Node - uses: actions/setup-node@v4 - with: - node-version: 20 - - # https://github.com/MaaXYZ/MaaFramework/actions/runs/5643408179/job/15285186255 - - uses: actions/checkout@v4 - with: - submodules: true - - - name: Install cross compile toolchains - if: ${{ matrix.arch != 'x86_64' }} - run: | - pacman -Sy - pacman -S --noconfirm aarch64-linux-gnu-gcc - - - name: Setup ccache - uses: Chocobo1/setup-ccache-action@v1 - with: - remove_stale_cache: false - - - name: Bootstrap MaaDeps - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux - - - name: Prepare node_modules - run: | - cd source/binding/NodeJS - pnpm i - cd - - - - name: Build MAA - env: - CC: ${{ matrix.arch == 'x86_64' && 'gcc' || 'aarch64-linux-gnu-gcc' }} - CXX: ${{ matrix.arch == 'x86_64' && 'g++' || 'aarch64-linux-gnu-g++' }} - run: | - cmake --preset 'NinjaMulti' \ - -DMAADEPS_TRIPLET='maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux' \ - -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' \ - -DBUILD_NODEJS_BINDING=ON - - cmake --build build --preset 'NinjaMulti - RelWithDebInfo' -j 16 - - - name: Install - shell: bash - if: always() - run: | - cmake --install build --prefix install --config RelWithDebInfo - - cp -r docs install - cp README*.md install - - cp -r sample install - - cp -r LICENSE.md install - - - uses: actions/upload-artifact@v4 - if: always() - with: - name: MAA-linux-${{ matrix.arch }} - path: "install" + # windows: + # needs: meta + # runs-on: windows-latest + # strategy: + # matrix: + # arch: [aarch64, x86_64] + # fail-fast: false + + # steps: + # - name: Windows runner hack + # shell: cmd + # run: | + # dir d:\a + # cd .. + # mkdir C:\MaaFramework + # rmdir MaaFramework + # mklink /j MaaFramework C:\MaaFramework + # dism /Online /Disable-Feature /FeatureName:Windows-Defender /Remove /NoRestart /Quiet + # cd . + + # - name: Windows runner hack (2) + # uses: al-cheb/configure-pagefile-action@v1.4 + # with: + # minimum-size: 16GB + # maximum-size: 16GB + # disk-root: "D:" + + # - uses: actions/checkout@v4 + # with: + # submodules: true + + # - name: Setup Windows 10 SDK + # uses: GuillaumeFalourd/setup-windows10-sdk-action@v2.2 + # with: + # sdk-version: 26100 + + # - name: Bootstrap MaaDeps + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # run: | + # python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-windows + + # - uses: pnpm/action-setup@v4 + # with: + # version: latest + + # - name: Use Node + # uses: actions/setup-node@v4 + # with: + # node-version: 20 + + # - name: Prepare node_modules + # run: | + # cd source/binding/NodeJS + # pnpm i + # cd - + + # - name: Build MAA + # run: | + # cmake --preset "${{ matrix.arch == 'x86_64' && 'MSVC 2022' || 'MSVC 2022 ARM' }}" -DCMAKE_SYSTEM_VERSION="10.0.26100.0" -DMAADEPS_TRIPLET="maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-windows" -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' -DBUILD_NODEJS_BINDING=ON + + # cmake --build build --preset "${{ matrix.arch == 'x86_64' && 'MSVC 2022' || 'MSVC 2022 ARM' }} - RelWithDebInfo" -j 16 + + # - name: Install + # shell: bash + # if: always() + # run: | + # cmake --install build --prefix install --config RelWithDebInfo + # rm -rf install/bin/msvc-debug + + # cp -r docs install + # cp README*.md install + + # cp -r sample install + + # cp -r LICENSE.md install + + # - uses: actions/upload-artifact@v4 + # if: always() + # with: + # name: MAA-win-${{ matrix.arch }} + # path: "install" + + # ubuntu: + # needs: meta + # runs-on: ubuntu-latest + # container: archlinux:base-devel + # strategy: + # matrix: + # arch: [aarch64, x86_64] + # fail-fast: false + + # steps: + # # maybe should explicitly update some pkg instead of all? + # - name: Update system + # run: | + # pacman -Syu --noconfirm + + # - name: Install dep + # run: | + # pacman -Sy + # pacman -S --noconfirm cmake python ccache ninja git + + # - uses: pnpm/action-setup@v4 + # with: + # version: latest + + # - name: Use Node + # uses: actions/setup-node@v4 + # with: + # node-version: 20 + + # # https://github.com/MaaXYZ/MaaFramework/actions/runs/5643408179/job/15285186255 + # - uses: actions/checkout@v4 + # with: + # submodules: true + + # - name: Install cross compile toolchains + # if: ${{ matrix.arch != 'x86_64' }} + # run: | + # pacman -Sy + # pacman -S --noconfirm aarch64-linux-gnu-gcc + + # - name: Setup ccache + # uses: Chocobo1/setup-ccache-action@v1 + # with: + # remove_stale_cache: false + + # - name: Bootstrap MaaDeps + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # run: | + # python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux + + # - name: Prepare node_modules + # run: | + # cd source/binding/NodeJS + # pnpm i + # cd - + + # - name: Build MAA + # env: + # CC: ${{ matrix.arch == 'x86_64' && 'gcc' || 'aarch64-linux-gnu-gcc' }} + # CXX: ${{ matrix.arch == 'x86_64' && 'g++' || 'aarch64-linux-gnu-g++' }} + # run: | + # cmake --preset 'NinjaMulti' \ + # -DMAADEPS_TRIPLET='maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-linux' \ + # -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' \ + # -DBUILD_NODEJS_BINDING=ON + + # cmake --build build --preset 'NinjaMulti - RelWithDebInfo' -j 16 + + # - name: Install + # shell: bash + # if: always() + # run: | + # cmake --install build --prefix install --config RelWithDebInfo + + # cp -r docs install + # cp README*.md install + + # cp -r sample install + + # cp -r LICENSE.md install + + # - uses: actions/upload-artifact@v4 + # if: always() + # with: + # name: MAA-linux-${{ matrix.arch }} + # path: "install" macos: needs: meta @@ -283,71 +283,71 @@ jobs: name: MAA-macos-${{ matrix.arch }} path: "install" - android: - needs: meta - runs-on: ubuntu-latest - strategy: - matrix: - include: - - arch: x86_64 - - arch: aarch64 - fail-fast: false - - steps: - - uses: actions/checkout@v4 - with: - submodules: true - - - name: Install Packages - run: | - sudo apt-get update -y - sudo apt-get install -y ninja-build python3-pyelftools elfutils patchelf nasm - - - uses: nttld/setup-ndk@v1 - id: setup-ndk - with: - ndk-version: r27c - - - name: Setup ccache - uses: Chocobo1/setup-ccache-action@v1 - with: - remove_stale_cache: false - - - name: Bootstrap MaaDeps - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-android - - - name: Build MAA - run: | - cmake --preset 'NinjaMulti' \ - -DCMAKE_TOOLCHAIN_FILE=${{ steps.setup-ndk.outputs.ndk-path}}/build/cmake/android.toolchain.cmake \ - -DANDROID_ABI=${{ matrix.arch == 'x86_64' && 'x86_64' || 'arm64-v8a' }} \ - -DANDROID_PLATFORM=android-23 \ - -DMAADEPS_TRIPLET='maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-android' \ - -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' - - cmake --build build --preset 'NinjaMulti - RelWithDebInfo' -j 16 - - - name: Install - shell: bash - if: always() - run: | - cmake --install build --prefix install --config RelWithDebInfo - - cp -r docs install - cp README*.md install - - cp -r sample install - - cp -r LICENSE.md install - - - uses: actions/upload-artifact@v4 - if: always() - with: - name: MAA-android-${{ matrix.arch }} - path: "install" + # android: + # needs: meta + # runs-on: ubuntu-latest + # strategy: + # matrix: + # include: + # - arch: x86_64 + # - arch: aarch64 + # fail-fast: false + + # steps: + # - uses: actions/checkout@v4 + # with: + # submodules: true + + # - name: Install Packages + # run: | + # sudo apt-get update -y + # sudo apt-get install -y ninja-build python3-pyelftools elfutils patchelf nasm + + # - uses: nttld/setup-ndk@v1 + # id: setup-ndk + # with: + # ndk-version: r27c + + # - name: Setup ccache + # uses: Chocobo1/setup-ccache-action@v1 + # with: + # remove_stale_cache: false + + # - name: Bootstrap MaaDeps + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # run: | + # python3 tools/maadeps-download.py ${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-android + + # - name: Build MAA + # run: | + # cmake --preset 'NinjaMulti' \ + # -DCMAKE_TOOLCHAIN_FILE=${{ steps.setup-ndk.outputs.ndk-path}}/build/cmake/android.toolchain.cmake \ + # -DANDROID_ABI=${{ matrix.arch == 'x86_64' && 'x86_64' || 'arm64-v8a' }} \ + # -DANDROID_PLATFORM=android-23 \ + # -DMAADEPS_TRIPLET='maa-${{ matrix.arch == 'x86_64' && 'x64' || 'arm64' }}-android' \ + # -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}' + + # cmake --build build --preset 'NinjaMulti - RelWithDebInfo' -j 16 + + # - name: Install + # shell: bash + # if: always() + # run: | + # cmake --install build --prefix install --config RelWithDebInfo + + # cp -r docs install + # cp README*.md install + + # cp -r sample install + + # cp -r LICENSE.md install + + # - uses: actions/upload-artifact@v4 + # if: always() + # with: + # name: MAA-android-${{ matrix.arch }} + # path: "install" nuget_pack: needs: [meta, windows, ubuntu, macos, android]