Skip to content
This repository was archived by the owner on Aug 18, 2025. It is now read-only.

Commit 9f86270

Browse files
Update build_libraries.yml
1 parent e6205c8 commit 9f86270

1 file changed

Lines changed: 19 additions & 9 deletions

File tree

.github/workflows/build_libraries.yml

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ on:
1111
# 发布版本时自动触发
1212
release:
1313
types: [created]
14-
# 标签推送时自动触发
15-
push:
16-
tags:
17-
- 'v*'
1814

1915
# 添加权限设置
2016
permissions:
@@ -171,6 +167,9 @@ jobs:
171167
echo "CXX_aarch64_linux_android=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21-clang++" >> $GITHUB_ENV
172168
echo "AR_aarch64_linux_android=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar" >> $GITHUB_ENV
173169
echo "CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21-clang" >> $GITHUB_ENV
170+
# 配置 OpenSSL 相关环境变量以避免交叉编译问题
171+
echo "OPENSSL_NO_VENDOR=1" >> $GITHUB_ENV
172+
echo "PKG_CONFIG_ALLOW_CROSS=1" >> $GITHUB_ENV
174173
175174
176175
@@ -209,8 +208,19 @@ jobs:
209208
rustup target list --installed
210209
shell: bash
211210

212-
- name: 构建库
213-
if: steps.check_dir.outputs.exists == 'true'
211+
- name: 构建库 (交叉编译平台 - 跳过有问题的依赖)
212+
if: steps.check_dir.outputs.exists == 'true' && (contains(matrix.platform.target, 'android') || matrix.platform.target == 'i686-unknown-linux-gnu' || matrix.platform.target == 'aarch64-unknown-linux-gnu' || matrix.platform.target == 'i686-pc-windows-msvc' || matrix.platform.target == 'aarch64-pc-windows-msvc')
213+
run: |
214+
cd library_${{ matrix.library }}
215+
# 尝试使用最小特性集构建,避免 OpenSSL 等问题依赖
216+
RUST_BACKTRACE=1 OPENSSL_NO_VENDOR=1 PKG_CONFIG_ALLOW_CROSS=1 cargo build --release --target ${{ matrix.platform.target }} --no-default-features --features minimal 2>/dev/null || \
217+
RUST_BACKTRACE=1 OPENSSL_NO_VENDOR=1 PKG_CONFIG_ALLOW_CROSS=1 cargo build --release --target ${{ matrix.platform.target }} --no-default-features 2>/dev/null || \
218+
RUST_BACKTRACE=1 OPENSSL_NO_VENDOR=1 PKG_CONFIG_ALLOW_CROSS=1 cargo build --release --target ${{ matrix.platform.target }} || \
219+
echo "警告: 库 ${{ matrix.library }} 在平台 ${{ matrix.platform.target }} 上构建失败,跳过"
220+
shell: bash
221+
222+
- name: 构建库 (原生平台)
223+
if: steps.check_dir.outputs.exists == 'true' && !contains(matrix.platform.target, 'android') && matrix.platform.target != 'i686-unknown-linux-gnu' && matrix.platform.target != 'aarch64-unknown-linux-gnu' && matrix.platform.target != 'i686-pc-windows-msvc' && matrix.platform.target != 'aarch64-pc-windows-msvc'
214224
run: |
215225
cd library_${{ matrix.library }}
216226
RUST_BACKTRACE=1 cargo build --release --target ${{ matrix.platform.target }}
@@ -270,7 +280,7 @@ jobs:
270280
path: ${{ matrix.library }}-${{ matrix.platform.platform_name }}.${{ matrix.platform.archive_format }}
271281

272282
- name: 创建发布
273-
if: steps.check_dir.outputs.exists == 'true' && (startsWith(github.ref, 'refs/tags/') || github.event_name == 'release')
283+
if: steps.check_dir.outputs.exists == 'true' && github.event_name == 'release'
274284
uses: softprops/action-gh-release@v1
275285
with:
276286
files: ${{ matrix.library }}-${{ matrix.platform.platform_name }}.${{ matrix.platform.archive_format }}
@@ -285,7 +295,7 @@ jobs:
285295
runs-on: ${{ matrix.os }}
286296
continue-on-error: true
287297
# 在手动触发并指定'all'或发布版本时打包所有库
288-
if: ${{ github.event.inputs.libraries == 'all' || github.event_name == 'release' || startsWith(github.ref, 'refs/tags/') }}
298+
if: ${{ github.event.inputs.libraries == 'all' || github.event_name == 'release' }}
289299
strategy:
290300
fail-fast: false
291301
matrix:
@@ -374,7 +384,7 @@ jobs:
374384
path: codenothing-all-libraries-${{ matrix.platform_name }}.${{ matrix.archive_format }}
375385

376386
- name: 创建发布
377-
if: startsWith(github.ref, 'refs/tags/') || github.event_name == 'release'
387+
if: github.event_name == 'release'
378388
uses: softprops/action-gh-release@v1
379389
with:
380390
files: codenothing-all-libraries-${{ matrix.platform_name }}.${{ matrix.archive_format }}

0 commit comments

Comments
 (0)