diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b1d2eff..2744c55 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019] + os: [macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019] node: [12, 13, 14, 15, 16, 17, 19] steps: - name: Checkout repository @@ -43,7 +43,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019] + os: [macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019, windows-2022] node: [18, 20, 21, 22] steps: - name: Checkout repository @@ -84,8 +84,8 @@ jobs: - name: Package prebuild run: npm run build - build_aarch64_legacy_nodejs: - name: Prebuild aarch64 (legacy Node.js) + build_aarch64_legacy_nodejs_linux: + name: Prebuild aarch64 Linux (legacy Node.js) runs-on: ${{ matrix.os }} strategy: fail-fast: false @@ -109,8 +109,8 @@ jobs: sudo apt update -y && sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ npx node-pre-gyp --target_arch=arm64 configure build package - build_aarch64: - name: Prebuild aarch64 + build_aarch64_linux: + name: Prebuild aarch64 Linux runs-on: ${{ matrix.os }} strategy: fail-fast: false @@ -134,6 +134,57 @@ jobs: sudo apt update -y && sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ npx node-pre-gyp --target_arch=arm64 configure build package + build_aarch64_legacy_nodejs_mac: + name: Prebuild aarch64 macOS (legacy Node.js) + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-14] + node: [16, 17, 19] + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Install Node v${{ matrix.node }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + + - name: Setup python + uses: actions/setup-python@v4 + with: + python-version: '3.8' + + - name: Install dependencies + run: npm install --build-from-source + + - name: Package prebuild + run: npm run build + + build_aarch64_mac: + name: Prebuild aarch64 macOS + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-14] + node: [18, 20, 21, 22] + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Install Node v${{ matrix.node }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + + - name: Install dependencies + run: npm install --build-from-source + + - name: Package prebuild + run: npm run build + build_musl_aarch64: name: Prebuild aarch64 (musl) runs-on: ubuntu-latest diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c9a663a..a8655e9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -9,7 +9,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019] + os: [macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019] node: [12, 13, 14, 15, 16, 17, 19] steps: - name: Checkout repository @@ -44,7 +44,7 @@ jobs: strategy: fail-fast: false matrix: - os: [macos-11, macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019] + os: [macos-12, macos-13, ubuntu-20.04, ubuntu-22.04, windows-2019, windows-2022] node: [18, 20, 21, 22] steps: - name: Checkout repository @@ -99,8 +99,8 @@ jobs: with: path: 'build/stage/**/*.tar.gz' - build_aarch64_legacy_nodejs: - name: Prebuild aarch64 (legacy Node.js) + build_aarch64_legacy_nodejs_linux: + name: Prebuild aarch64 Linux (legacy Node.js) runs-on: ${{ matrix.os }} strategy: fail-fast: false @@ -131,8 +131,8 @@ jobs: with: path: 'build/stage/**/*.tar.gz' - build_aarch64: - name: Prebuild aarch64 + build_aarch64_linux: + name: Prebuild aarch64 Linux runs-on: ${{ matrix.os }} strategy: fail-fast: false @@ -163,6 +163,71 @@ jobs: with: path: 'build/stage/**/*.tar.gz' + build_aarch64_legacy_nodejs_mac: + name: Prebuild aarch64 macOS (legacy Node.js) + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-14] + node: [16, 17, 19] + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Install Node v${{ matrix.node }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + + - name: Setup python + uses: actions/setup-python@v4 + with: + python-version: '3.8' + + - name: Install dependencies + run: npm install --build-from-source + + - name: Package prebuild + run: npm run build + + - name: Upload prebuild asset + uses: icrawl/action-artifact@v2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + path: 'build/stage/**/*.tar.gz' + + build_aarch64_mac: + name: Prebuild aarch64 macOS + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [macos-14] + node: [18, 20, 21, 22] + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Install Node v${{ matrix.node }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + + - name: Install dependencies + run: npm install --build-from-source + + - name: Package prebuild + run: npm run build + + - name: Upload prebuild asset + uses: icrawl/action-artifact@v2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + path: 'build/stage/**/*.tar.gz' + build_musl_aarch64: name: Prebuild aarch64 (musl) runs-on: ubuntu-latest