mirror of
https://github.com/kunkundi/crossdesk.git
synced 2026-10-19 18:33:00 +08:00
[build] unify minimum Xmake version across platforms
This commit is contained in:
@@ -5,7 +5,7 @@ FROM ${BASE_IMAGE}
|
||||
|
||||
ARG TARGETARCH
|
||||
ARG CMAKE_VERSION=3.31.6
|
||||
ARG XMAKE_VERSION=3.0.9
|
||||
ARG XMAKE_VERSION=3.1.1
|
||||
ARG RUST_VERSION=1.92.0
|
||||
ARG RUSTUP_VERSION=1.28.2
|
||||
|
||||
|
||||
@@ -5,6 +5,9 @@ CMake 3.31、xmake、Rust、Linux 开发库(包括 D-Bus、DRM,以及仅用
|
||||
PipeWire 0.3/SPA 头文件 SDK)以及根据项目
|
||||
`xmake.lua` 提前编译好的依赖。
|
||||
|
||||
Xmake 最低支持 3.1.1,与移动端一致,构建环境校验允许更新版本。发布镜像的工具链 tag
|
||||
记录实际安装的版本;默认使用最低支持版本验证构建。
|
||||
|
||||
## 发布方式
|
||||
|
||||
推送影响镜像的文件到 `ci/linux-build-image` 分支时,
|
||||
@@ -12,7 +15,7 @@ PipeWire 0.3/SPA 头文件 SDK)以及根据项目
|
||||
全部通过后再合并为同一个 multi-arch 镜像:
|
||||
|
||||
```text
|
||||
crossdesk/ubuntu20.04:buildenv-cuda12.6.3-gcc10-cmake3.31.6-pipewire0.3.48-xmake3.0.9-rust1.92.0
|
||||
crossdesk/ubuntu20.04:buildenv-cuda12.6.3-gcc10-cmake3.31.6-pipewire0.3.48-xmake3.1.1-rust1.92.0
|
||||
```
|
||||
|
||||
Docker 会根据运行机器自动选择正确架构。amd64 变体以
|
||||
|
||||
@@ -3,7 +3,7 @@ set -euo pipefail
|
||||
|
||||
EXPECTED_ARCH="${EXPECTED_ARCH:-}"
|
||||
EXPECTED_CMAKE_VERSION="${EXPECTED_CMAKE_VERSION:-3.31.6}"
|
||||
EXPECTED_XMAKE_VERSION="${EXPECTED_XMAKE_VERSION:-3.0.9}"
|
||||
XMAKE_MIN_VERSION="${XMAKE_MIN_VERSION:-3.1.1}"
|
||||
EXPECTED_RUST_VERSION="${EXPECTED_RUST_VERSION:-1.92.0}"
|
||||
BUILD_CC="${CC:-/usr/bin/gcc-10}"
|
||||
BUILD_CXX="${CXX:-/usr/bin/g++-10}"
|
||||
@@ -28,7 +28,11 @@ if [[ -n "${EXPECTED_ARCH}" && "${ACTUAL_ARCH}" != "${EXPECTED_ARCH}" ]]; then
|
||||
fi
|
||||
|
||||
XMAKE_VERSION_OUTPUT="$(xmake --version 2>&1)"
|
||||
grep -F "v${EXPECTED_XMAKE_VERSION}" <<<"${XMAKE_VERSION_OUTPUT}" >/dev/null
|
||||
ACTUAL_XMAKE_VERSION="$(sed -nE 's/.*xmake v([0-9]+\.[0-9]+\.[0-9]+)(\+.*|,.*|[[:space:]].*|$)/\1/p' <<<"${XMAKE_VERSION_OUTPUT}" | head -n 1)"
|
||||
if [[ -z "${ACTUAL_XMAKE_VERSION}" ]] || ! dpkg --compare-versions "${ACTUAL_XMAKE_VERSION}" ge "${XMAKE_MIN_VERSION}"; then
|
||||
echo "Xmake ${XMAKE_MIN_VERSION} or newer is required, found ${ACTUAL_XMAKE_VERSION:-unknown}" >&2
|
||||
exit 1
|
||||
fi
|
||||
rustc --version | grep -F "rustc ${EXPECTED_RUST_VERSION}" >/dev/null
|
||||
cargo --version >/dev/null
|
||||
cmake --version | grep -F "cmake version ${EXPECTED_CMAKE_VERSION}" >/dev/null
|
||||
|
||||
Reference in New Issue
Block a user