2222
2323 strategy :
2424 matrix :
25- ARCH : ['x86_64']
25+ ARCH : ['x86_64', 'loong64' ]
2626 # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
2727
2828 steps :
4545 name='${{ github.ref_name }}'
4646 fi
4747 echo "tag result: $tag - $name"
48- echo "::set-output name= tag:: $tag"
49- echo "::set-output name=name:: $name"
48+ echo "tag= $tag" >> $GITHUB_OUTPUT
49+ echo "name=$name" >> $GITHUB_OUTPUT
5050
5151 # - name: Configure the project
5252 # uses: threeal/cmake-action@v1.3.0
@@ -55,10 +55,32 @@ jobs:
5555 # run: cmake --build build
5656
5757 - name : Build the project
58+ if : matrix.ARCH == 'x86_64'
59+ run : |
60+ export DOCKER_UID=$UID
61+ export DOCKER_GID=$GID
62+ tools/build-with-docker.sh
63+
64+ - name : Use Node.js ${{ matrix.node-version }}
65+ if : matrix.ARCH == 'loong64'
66+ uses : actions/setup-node@v3
67+ with :
68+ # Version Spec of the version to use in SemVer notation.
69+ # It also emits such aliases as lts, latest, nightly and canary builds
70+ # Examples: 12.x, 10.15.1, >=10.15.0, lts/Hydrogen, 16-nightly, latest, node
71+ node-version : ' 22'
72+ check-latest : false
73+ - name : Prepare PNPM
74+ if : matrix.ARCH == 'loong64'
75+ run : |
76+ corepack enable
77+ pnpm install --no-frozen-lockfile
78+ - name : Build the project
79+ if : matrix.ARCH == 'loong64'
5880 run : |
5981 export DOCKER_UID=$UID
6082 export DOCKER_GID=$GID
61- docker compose up
83+ tools/build-loong64.sh
6284
6385 - name : Upload prepare
6486 run : |
6890 mkdir -p tmp/build
6991 mv build/{wcc,wcsc,wcc_module.node,wcsc_module.node} tmp/build
7092 cd tmp/build
93+ mv wcc wcc-${{ matrix.ARCH }}
94+ mv wcsc wcsc-${{ matrix.ARCH }}
95+ mv wcc_module.node wcc-${{ matrix.ARCH }}.node
96+ mv wcsc_module.node wcsc-${{ matrix.ARCH }}.node
7197 ls -l
7298
7399 - name : Upload artifact
@@ -123,10 +149,10 @@ jobs:
123149 corepack enable
124150 ls -l
125151 mkdir build
126- cp **build/wcc build
127- cp **build/wcsc build
128- cp **build/wcc_module. node build
129- cp **build/wcsc_module. node build
152+ cp **-${{ matrix.ARCH }}. build/wcc-${{ matrix.ARCH }} build/wcc
153+ cp **-${{ matrix.ARCH }}. build/wcsc-${{ matrix.ARCH }} build/wcsc
154+ cp **-${{ matrix.ARCH }}. build/wcc-${{ matrix.ARCH }}. node build/wcc_module.node
155+ cp **-${{ matrix.ARCH }}. build/wcsc-${{ matrix.ARCH }}. node build/wcsc_module.node
130156 chmod +x build/*
131157 ls -l build
132158 node -v
@@ -178,7 +204,7 @@ jobs:
178204 sudo apt install -y fuse
179205 wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage
180206 chmod +x pyuploadtool-x86_64.AppImage
181- ./pyuploadtool-x86_64.AppImage **build/wcc **build/wcsc **build/wcc_module.node **build/wcsc_module.node
207+ ./pyuploadtool-x86_64.AppImage **build/wcc* **build/wcsc*
182208
183209 - name : Release
184210 uses : softprops/action-gh-release@v1
@@ -189,7 +215,5 @@ jobs:
189215 name : ${{ steps.tag.outputs.name }}
190216 tag_name : ${{ steps.tag.outputs.tag }}
191217 files : |
192- **build/wcc
193- **build/wcsc
194- **build/wcc_module.node
195- **build/wcsc_module.node
218+ **build/wcc*
219+ **build/wcsc*
0 commit comments