3838 - host : ubuntu-latest
3939 target : ' x86_64-unknown-linux-gnu'
4040 docker : ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian
41- # Node.js in Baidu need to compatible with `GLIBC_2.12`
4241 build : >-
4342 set -e &&
44- rustup toolchain install $(cat ./rust-toolchain) &&
4543 rustup target add x86_64-unknown-linux-gnu &&
4644 yarn lerna exec "yarn build --target x86_64-unknown-linux-gnu" --concurrency 1 --stream --no-prefix &&
4745 strip packages/*/*.node
@@ -59,17 +57,14 @@ jobs:
5957 export CFLAGS="-isysroot $SYSROOT -isystem $SYSROOT";
6058 yarn lerna exec "yarn build --target aarch64-apple-darwin" --concurrency 1 --stream --no-prefix
6159 strip -x packages/*/*.node
62- - host : ubuntu-18.04
60+ - host : ubuntu-latest
6361 target : aarch64-unknown-linux-gnu
64- setup : |
65- sudo apt-get update
66- sudo apt-get install g++-aarch64-linux-gnu gcc-aarch64-linux-gnu -y
67- build : |
68- rustup toolchain install $(cat ./rust-toolchain)
69- rustup target add aarch64-unknown-linux-gnu
70- yarn lerna exec "yarn build --target aarch64-unknown-linux-gnu" --concurrency 1 --stream --no-prefix
71- aarch64-linux-gnu-strip packages/*/*.node
72- - host : ubuntu-18.04
62+ docker : ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian-aarch64
63+ build : >-
64+ rustup target add aarch64-unknown-linux-gnu &&
65+ yarn lerna exec "yarn build --target aarch64-unknown-linux-gnu" --concurrency 1 --stream --no-prefix &&
66+ llvm-strip packages/*/*.node
67+ - host : ubuntu-latest
7368 target : ' armv7-unknown-linux-gnueabihf'
7469 setup : |
7570 sudo apt-get update
@@ -78,22 +73,12 @@ jobs:
7873 - host : ubuntu-latest
7974 target : aarch64-linux-android
8075 build : |
81- export CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android24-clang"
82- export CC="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android24-clang"
83- export CXX="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android24-clang++"
84- export AR="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar"
85- export PATH="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin:${PATH}"
8676 yarn lerna exec "yarn build --target aarch64-linux-android" --concurrency 1 --stream --no-prefix
8777 ${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip packages/*/*.node
8878 - host : ubuntu-latest
8979 architecture : x64
9080 target : armv7-linux-androideabi
9181 build : |
92- export CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi24-clang"
93- export CC="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi24-clang"
94- export CXX="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi24-clang++"
95- export PATH="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin:${PATH}"
96- export AR="${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar"
9782 yarn lerna exec "yarn build --target armv7-linux-androideabi" --concurrency 1 --stream --no-prefix
9883 ${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip packages/*/*.node
9984 - host : ubuntu-latest
@@ -102,14 +87,13 @@ jobs:
10287 docker : ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
10388 build : >-
10489 set -e &&
105- rustup toolchain install $(cat ./rust-toolchain) &&
10690 rustup target add aarch64-unknown-linux-musl &&
10791 yarn lerna exec "yarn build --target aarch64-unknown-linux-musl" --concurrency 1 --stream --no-prefix
10892 - host : windows-latest
10993 target : ' aarch64-pc-windows-msvc'
11094 build : yarn lerna exec "yarn build --target aarch64-pc-windows-msvc" --concurrency 1 --stream --no-prefix
11195
112- name : stable - ${{ matrix.settings.target }} - node@16
96+ name : stable - ${{ matrix.settings.target }} - node@18
11397 runs-on : ${{ matrix.settings.host }}
11498
11599 steps :
@@ -119,23 +103,16 @@ jobs:
119103 uses : actions/setup-node@v3
120104 if : ${{ !matrix.settings.docker }}
121105 with :
122- node-version : 16
106+ node-version : 18
123107 check-latest : true
124108 cache : yarn
125109
126110 - name : Install
127- uses : actions-rs/toolchain@v1
128- if : ${{ !matrix.settings.docker }}
129- with :
130- profile : minimal
131- override : true
132- target : ${{ matrix.settings.target }}
133-
134- - name : Generate Cargo.lock
135- uses : actions-rs/cargo@v1
111+ uses : dtolnay/rust-toolchain@stable
136112 if : ${{ !matrix.settings.docker }}
137113 with :
138- command : generate-lockfile
114+ toolchain : nightly-2023-01-11
115+ targets : ${{ matrix.settings.target }}
139116
140117 - name : Cache cargo registry
141118 uses : actions/cache@v3
@@ -147,17 +124,16 @@ jobs:
147124 .cargo-cache
148125 key : ${{ matrix.settings.target }}-cargo-registry
149126
150- - name : Cache NPM dependencies
151- uses : actions/cache@v3
152- with :
153- path : node_modules
154- key : npm-cache-build-${{ matrix.settings.target }}-node@16
155-
156127 - name : Setup toolchain
157128 run : ${{ matrix.settings.setup }}
158129 if : ${{ matrix.settings.setup }}
159130 shell : bash
160131
132+ - uses : goto-bus-stop/setup-zig@v2
133+ if : ${{ matrix.settings.target == 'armv7-unknown-linux-gnueabihf' }}
134+ with :
135+ version : 0.10.0
136+
161137 - name : Setup node x86
162138 if : matrix.settings.target == 'i686-pc-windows-msvc'
163139 run : yarn config set supportedArchitectures.cpu "ia32"
@@ -181,7 +157,7 @@ jobs:
181157 uses : actions/setup-node@v3
182158 if : matrix.settings.target == 'i686-pc-windows-msvc'
183159 with :
184- node-version : 16
160+ node-version : 18
185161 check-latest : true
186162 cache : yarn
187163 architecture : x86
@@ -205,7 +181,7 @@ jobs:
205181 - uses : actions/checkout@v3
206182 - name : Build
207183 id : build
208- uses : vmactions/freebsd-vm@v0.2.3
184+ uses : vmactions/freebsd-vm@v0
209185 env :
210186 DEBUG : ' napi:*'
211187 RUSTUP_HOME : /usr/local/rustup
@@ -216,9 +192,9 @@ jobs:
216192 usesh : true
217193 mem : 3000
218194 prepare : |
219- pkg install -y curl python2 node14
195+ pkg install -y -f curl node libnghttp2
220196 curl -qL https://www.npmjs.com/install.sh | sh
221- npm install -g yarn
197+ npm install --location=global --ignore-scripts yarn
222198 curl https://sh.rustup.rs -sSf --output rustup.sh
223199 sh rustup.sh -y --profile minimal --default-toolchain stable
224200 export PATH="/usr/local/cargo/bin:$PATH"
@@ -592,16 +568,10 @@ jobs:
592568 - name : Setup node
593569 uses : actions/setup-node@v3
594570 with :
595- node-version : 16
571+ node-version : 18
596572 check-latest : true
597573 cache : yarn
598574
599- - name : Cache NPM dependencies
600- uses : actions/cache@v3
601- with :
602- path : node_modules
603- key : npm-cache-ubuntu-latest-publish-${{ hashFiles('yarn.lock') }}
604-
605575 - name : ' Install dependencies'
606576 run : yarn install --immutable --mode=skip-build
607577
0 commit comments