Compare commits

...

15 Commits

Author SHA1 Message Date
Taiki Endo
a6b28c31ef Release 2.18.2 2023-09-08 10:22:32 +09:00
Taiki Endo
09cf616b64 Update protoc@latest to 3.24.3 (#216) 2023-09-08 10:20:31 +09:00
Taiki Endo
2f6cd157e0 Simplify CI config 2023-09-05 23:14:31 +09:00
Taiki Endo
3660b253bf Update CI config 2023-09-05 23:05:37 +09:00
Taiki Endo
6cd53f784a Release 2.18.1 2023-09-05 22:49:32 +09:00
Taiki Endo
eb8dccef73 ci: Replace rockylinux with almalinux
rockylinux's package manager infrastructure sometimes is broken.

```
+ dnf install -y cargo tar gzip
Rocky Linux 8 - AppStream                        34 kB/s |  10 MB     05:05
Errors during downloading metadata for repository 'appstream':
  - Downloading successful, but checksum doesn't match. Calculated: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855(sha256)  Expected: 0087a37e2eca36cac787004b7945dbbcc2dba4dd776e50d6d1461bfe2cc30434(sha256)
  - Downloading successful, but checksum doesn't match. Calculated: 839488ebc08446a096a893996ed23eac321ac166724cd8c5d9092057834d2d79(sha256)  Expected: b31374fa4a7a732aae643cea0699f714480387baad33061b2fae4530d380a988(sha256)
  - Downloading successful, but checksum doesn't match. Calculated: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855(sha256)  Expected: 649280a7614f8a30d3fcc03560247b64906a6cf26024e090c0272766e671e5f3(sha256)
Error: Failed to download metadata for repo 'appstream': Yum repo downloading error: Downloading error(s): repodata/b31374fa4a7a732aae643cea0699f714480387baad33061b2fae4530d380a988-updateinfo.xml.gz - Cannot download, all mirrors were already tried without success
```

```
+ microdnf install -y cargo tar gzip
Downloading metadata...
error: cannot update repo 'baseos': repomd.xml parser error: Parse error at line: 1 (Extra content at the end of the document
)
```
2023-09-05 22:44:03 +09:00
Taiki Endo
442088fba1 Update changelog 2023-09-05 22:39:17 +09:00
Taiki Endo
18cb28e03d Sort supported tools table 2023-09-05 22:39:14 +09:00
Taiki Endo
099d544df2 Clean up --version calls 2023-09-05 22:39:05 +09:00
Taiki Endo
05558ee559 ci: Update actions/checkout action to v4 2023-09-05 22:38:58 +09:00
Taiki Endo
5692c4095a Release 2.18.0 2023-09-04 21:48:23 +09:00
Taiki Endo
afd84994bb Update changelog 2023-09-04 21:47:54 +09:00
John Nunley
b45f49a51d Add support for xbuild (#212)
Signed-off-by: John Nunley <dev@notgull.net>
2023-09-04 21:46:18 +09:00
Taiki Endo
01c3792929 Update cargo-hack@latest to 0.6.5 2023-09-04 21:45:18 +09:00
Taiki Endo
401ee5db19 Update cargo-deny@latest to 0.14.2 (#214) 2023-09-04 22:33:23 +10:00
13 changed files with 201 additions and 59 deletions

View File

@@ -1,3 +1,4 @@
almalinux
binstall
coreutils
distro
@@ -15,11 +16,11 @@ nextest
protoc
pwsh
quickinstall
rockylinux
shellcheck
shfmt
syft
udeps
wasmtime
watchexec
xbuild
xscale

View File

@@ -55,7 +55,7 @@ jobs:
runs-on: ${{ matrix.os }}
timeout-minutes: 60
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
persist-credentials: false
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
@@ -102,10 +102,10 @@ jobs:
- debian:11-slim # glibc 2.31
- debian:12-slim # glibc 2.36
- fedora:latest # glibc 2.37 (as of fedora 38)
- rockylinux:8 # glibc 2.28
- rockylinux:8-minimal # glibc 2.28
- rockylinux:9 # glibc 2.34
- rockylinux:9-minimal # glibc 2.34
- almalinux:8 # glibc 2.28
- almalinux:8-minimal # glibc 2.28
- almalinux:9 # glibc 2.34
- almalinux:9-minimal # glibc 2.34
- centos:7 # glibc 2.17
- alpine:latest # musl 1.2.4 (as of alpine 3.18)
runs-on: ubuntu-latest
@@ -118,29 +118,23 @@ jobs:
apt-get -o Acquire::Retries=10 -qq update
apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends cargo
if: startsWith(matrix.container, 'ubuntu') || startsWith(matrix.container, 'debian')
- name: Install requirements (fedora/rockylinux)
- name: Install requirements (fedora/almalinux/centos)
run: |
set -euxo pipefail
dnf=dnf
if ! type -P dnf &>/dev/null; then
dnf=microdnf
if ! type -P dnf &>/dev/null && type -P microdnf &>/dev/null; then
# tar and gzip are required for actions/checkout on *-minimal images
microdnf install -y tar gzip
fi
# tar and gzip are required for actions/checkout on rockylinux:*-minimal
$dnf install -y cargo tar gzip
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'rockylinux')
- name: Install requirements (centos)
run: |
set -euxo pipefail
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable
echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}"
if: startsWith(matrix.container, 'centos')
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'almalinux') || startsWith(matrix.container, 'centos')
- name: Install requirements (alpine)
run: |
set -eux
apk --no-cache add bash cargo
shell: sh
if: startsWith(matrix.container, 'alpine')
- uses: actions/checkout@v3
- uses: actions/checkout@v3 # TODO: actions/checkout@v3 requires glibc 2.28+
with:
persist-credentials: false
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
@@ -159,7 +153,7 @@ jobs:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Install Rust

View File

@@ -20,7 +20,7 @@ jobs:
permissions:
contents: write
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
persist-credentials: false
- uses: taiki-e/create-gh-release-action@v1

View File

@@ -10,6 +10,22 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased]
## [2.18.2] - 2023-09-08
- Update `protoc@latest` to 3.24.3.
## [2.18.1] - 2023-09-05
- Diagnostic improvements.
## [2.18.0] - 2023-09-04
- Support `xbuild`. ([#212](https://github.com/taiki-e/install-action/pull/212), thanks @notgull)
- Update `cargo-hack@latest` to 0.6.5.
- Update `cargo-deny@latest` to 0.14.2.
## [2.17.8] - 2023-09-01
- Update `syft@latest` to 0.89.0.
@@ -1157,7 +1173,10 @@ Note: This release is considered a breaking change because installing on version
Initial release
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.17.8...HEAD
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.18.2...HEAD
[2.18.2]: https://github.com/taiki-e/install-action/compare/v2.18.1...v2.18.2
[2.18.1]: https://github.com/taiki-e/install-action/compare/v2.18.0...v2.18.1
[2.18.0]: https://github.com/taiki-e/install-action/compare/v2.17.8...v2.18.0
[2.17.8]: https://github.com/taiki-e/install-action/compare/v2.17.7...v2.17.8
[2.17.7]: https://github.com/taiki-e/install-action/compare/v2.17.6...v2.17.7
[2.17.6]: https://github.com/taiki-e/install-action/compare/v2.17.5...v2.17.6

View File

@@ -82,8 +82,8 @@ https://spdx.org/licenses
| Name | Where binaries will be installed | Where will it be installed from | Supported platform | License |
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- |
| [**cargo-binstall**][cargo-binstall] | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/cargo-bins/cargo-binstall/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE) |
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
| [**cargo-careful**](https://github.com/RalfJung/cargo-careful) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/RalfJung/cargo-careful/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-MIT) |
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
| [**cargo-dinghy**](https://github.com/sonos/dinghy) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sonos/dinghy/releases) | Linux, macOS | [Apache-2.0](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-MIT) |
| [**cargo-hack**](https://github.com/taiki-e/cargo-hack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-hack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-MIT) |
| [**cargo-llvm-cov**](https://github.com/taiki-e/cargo-llvm-cov) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-llvm-cov/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-MIT) |
@@ -109,6 +109,7 @@ https://spdx.org/licenses
| [**valgrind**](https://valgrind.org) | `/snap/bin` | [snap](https://snapcraft.io/install/valgrind/ubuntu) | Linux | [GPL-2.0-or-later](https://valgrind.org/docs/manual/license.gpl.html) |
| [**wasm-pack**](https://github.com/rustwasm/wasm-pack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustwasm/wasm-pack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/rustwasm/wasm-pack/blob/HEAD/LICENSE-MIT) |
| [**wasmtime**](https://github.com/bytecodealliance/wasmtime) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/bytecodealliance/wasmtime/releases) | Linux, macOS, Windows | [Apache-2.0 WITH LLVM-exception](https://github.com/bytecodealliance/wasmtime/blob/HEAD/LICENSE) |
| [**xbuild**](https://github.com/rust-mobile/xbuild) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rust-mobile/xbuild/releases) | Linux, macOS, Windows | Apache-2.0 OR MIT |
| [**zola**](https://github.com/getzola/zola) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/getzola/zola/releases) | Linux, macOS, Windows | [MIT](https://github.com/getzola/zola/blob/HEAD/LICENSE) |
If `$CARGO_HOME/bin` is not available, Rust-related binaries will be installed to `$HOME/.cargo/bin`.<br>
@@ -131,7 +132,7 @@ See the linked documentation for information on security when installed using [s
## Compatibility
This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Alpine, Fedora, CentOS, Rocky).
This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Alpine, Fedora, CentOS, Alma).
To use this action in self-hosted runners or in containers, at least the following tools are required:
- bash

51
main.sh
View File

@@ -3,7 +3,7 @@
set -euo pipefail
IFS=$'\n\t'
x() {
rx() {
local cmd="$1"
shift
(
@@ -69,7 +69,12 @@ download_and_extract() {
fi
fi
local installed_bin
installed_bin="${bin_dir}/$(basename "${bin_in_archive}")"
# xbuild's binary name is "x", as opposed to the usual crate name
case "${tool}" in
xbuild) installed_bin="${bin_dir}/x" ;;
*) installed_bin="${bin_dir}/$(basename "${bin_in_archive}")" ;;
esac
local tar_args=()
case "${url}" in
@@ -246,7 +251,7 @@ install_cargo_binstall() {
info "installing cargo-binstall"
download_from_manifest "cargo-binstall" "latest"
info "cargo-binstall installed at $(type -P "cargo-binstall${exe}")"
x cargo binstall -V
rx cargo binstall -V
fi
}
apt_update() {
@@ -571,34 +576,32 @@ for tool in "${tools[@]}"; do
;;
esac
info "${tool} installed at $(type -P "${tool}${exe}")"
# At least cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
case "${tool}" in
cargo-careful) ;; # cargo-careful 0.3.4 does not support neither --version nor --help option.
xbuild) tool_bin="x" ;;
*) tool_bin="${tool}" ;;
esac
info "${tool} installed at $(type -P "${tool_bin}${exe}")"
# cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
case "${tool}" in
cargo-careful | cargo-machete) ;; # cargo-careful 0.3.4 and cargo-machete 0.5.0 do not support neither --version nor --help option.
cargo-*)
if type -P cargo &>/dev/null; then
case "${tool}" in
cargo-valgrind) x cargo "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*)
if ! x cargo "${tool#cargo-}" --version; then
x cargo "${tool#cargo-}" --help
fi
;;
esac
_cargo=cargo
else
case "${tool}" in
cargo-valgrind) x "${tool}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*)
if ! x "${tool}" "${tool#cargo-}" --version; then
x "${tool}" "${tool#cargo-}" --help
fi
;;
esac
_cargo="${tool}"
fi
case "${tool}" in
cargo-valgrind) rx "${_cargo}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
*)
if ! rx "${_cargo}" "${tool#cargo-}" --version; then
rx "${_cargo}" "${tool#cargo-}" --help
fi
;;
esac
;;
*)
if ! x "${tool}" --version; then
x "${tool}" --help
if ! rx "${tool_bin}" --version; then
rx "${tool_bin}" --help
fi
;;
esac

View File

@@ -19,10 +19,24 @@
}
},
"latest": {
"version": "0.14.1"
"version": "0.14.2"
},
"0.14": {
"version": "0.14.1"
"version": "0.14.2"
},
"0.14.2": {
"x86_64_linux_musl": {
"checksum": "5a4913ae3ce1298bd96d29b794ed245b0394f5ec0e2802f19d41fedc70bb5c3c"
},
"x86_64_macos": {
"checksum": "89c80839cfbb87bb8b0e4a1d55d638b79d0d9cac8fa53c0cbbe8fe271c8abcf4"
},
"x86_64_windows": {
"checksum": "25e59c4916a4e28d507185c6783051d0e0824d6e5af5737560be7bcfb1fc7af3"
},
"aarch64_macos": {
"checksum": "c1af65dac2330777744513430200d52cb615de9bef2fdb88cfec1a2e9f87c5f9"
}
},
"0.14.1": {
"x86_64_linux_musl": {

View File

@@ -2,10 +2,36 @@
"rust_crate": "cargo-hack",
"template": null,
"latest": {
"version": "0.6.4"
"version": "0.6.5"
},
"0.6": {
"version": "0.6.4"
"version": "0.6.5"
},
"0.6.5": {
"x86_64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-unknown-linux-musl.tar.gz",
"checksum": "767c91d80cacf9568576d9263b8801d4c38a245c472ac3c58320b15824539a74"
},
"x86_64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-apple-darwin.tar.gz",
"checksum": "20530649af2bfa2620368b6a111e5538f9306c4f64a65a1e6dbbb32a7a291b8a"
},
"x86_64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-x86_64-pc-windows-msvc.zip",
"checksum": "82731808c811daa55021e8a463884c3d1fa3ff4af67fdfd1b0f8db9936ec91df"
},
"aarch64_linux_musl": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-unknown-linux-musl.tar.gz",
"checksum": "743fe76f2115bedf6f5a86784ea254c105f171aeeb75e5f2845d6aa83be7319c"
},
"aarch64_macos": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-apple-darwin.tar.gz",
"checksum": "3a9ab29db73449b779656199ae645d7b4a3e055e22ee6fa056c7ec61cd57cb87"
},
"aarch64_windows": {
"url": "https://github.com/taiki-e/cargo-hack/releases/download/v0.6.5/cargo-hack-aarch64-pc-windows-msvc.tar.gz",
"checksum": "2bf9b10a41ce7585fa60b1be8424283433eb000c542652145d89d95be7a6fc99"
}
},
"0.6.4": {
"x86_64_linux_musl": {

28
manifests/protoc.json generated
View File

@@ -2,13 +2,35 @@
"rust_crate": null,
"template": null,
"latest": {
"version": "3.24.2"
"version": "3.24.3"
},
"3": {
"version": "3.24.2"
"version": "3.24.3"
},
"3.24": {
"version": "3.24.2"
"version": "3.24.3"
},
"3.24.3": {
"x86_64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-linux-x86_64.zip",
"checksum": "fc793561283d9ea6813fb757ae54f1afea6770afcd930904bdf3e590910420aa"
},
"x86_64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-osx-x86_64.zip",
"checksum": "13b45cdcde9b2101e982de897d5490cfd81dfa181605749c23982379ba0e3288"
},
"x86_64_windows": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-win64.zip",
"checksum": "c8f8c87e2eb6ba1e45f1f0b7b6c17f129309fff421c04290e272de1f7defd8f1"
},
"aarch64_linux_gnu": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-linux-aarch_64.zip",
"checksum": "77a5a41f3e9712af6a35de13143b9b2b77f075aa1ab18a63cca4483b30f6e3cd"
},
"aarch64_macos": {
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-osx-aarch_64.zip",
"checksum": "cca53adb73a6686dd60bb3b0da33961e6b9dab1f833c851b5e1bb7b5df02b36f"
}
},
"3.24.2": {
"x86_64_linux_gnu": {

34
manifests/xbuild.json generated Normal file
View File

@@ -0,0 +1,34 @@
{
"rust_crate": "xbuild",
"template": {
"x86_64_linux_gnu": {
"url": "https://github.com/rust-mobile/xbuild/releases/download/v${version}/xbuild-linux-x64",
"bin": "xbuild-linux-x64"
},
"x86_64_macos": {
"url": "https://github.com/rust-mobile/xbuild/releases/download/v${version}/xbuild-macos-x64",
"bin": "xbuild-macos-x64"
},
"x86_64_windows": {
"url": "https://github.com/rust-mobile/xbuild/releases/download/v${version}/xbuild-windows-x64.exe",
"bin": "xbuild-windows-x64.exe"
}
},
"latest": {
"version": "0.2.0"
},
"0.2": {
"version": "0.2.0"
},
"0.2.0": {
"x86_64_linux_gnu": {
"checksum": "9c294809ec3cb314b34e9f644b5bbf6ed262c25c1eeb78a3691836a95bc58e0d"
},
"x86_64_macos": {
"checksum": "e357205fde5262d77b8b1dc1cb066a4f7b4edd0a83b71b3513ae466b08343305"
},
"x86_64_windows": {
"checksum": "ce503cd64e6449d1c3e3bc2bfb621e9dd3ebfc775e99c97f98c2ab145e533946"
}
}
}

View File

@@ -5,7 +5,11 @@ IFS=$'\n\t'
cd "$(dirname "$0")"/../..
# They don't provide prebuilt binaries for musl or old glibc host.
glibc_pre_2_34_incompat=(
xbuild
)
glibc_pre_2_31_incompat=(
"${glibc_pre_2_34_incompat[@]}"
zola
)
glibc_pre_2_27_incompat=(
@@ -41,13 +45,18 @@ case "$(uname -s)" in
incompat_tools+=("${musl_incompat[@]}")
else
host_glibc_version=$(grep <<<"${ldd_version}" -E "GLIBC|GNU libc" | sed "s/.* //g")
higher_glibc_version=$(sort <<<"2.31"$'\n'"${host_glibc_version}" -Vu | tail -1)
higher_glibc_version=$(sort <<<"2.34"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.27"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" == "${host_glibc_version}" ]]; then
incompat_tools+=("${glibc_pre_2_31_incompat[@]}")
higher_glibc_version=$(sort <<<"2.31"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" != "${host_glibc_version}" ]]; then
higher_glibc_version=$(sort <<<"2.27"$'\n'"${host_glibc_version}" -Vu | tail -1)
if [[ "${higher_glibc_version}" == "${host_glibc_version}" ]]; then
incompat_tools+=("${glibc_pre_2_31_incompat[@]}")
else
incompat_tools+=("${glibc_pre_2_27_incompat[@]}")
fi
else
incompat_tools+=("${glibc_pre_2_27_incompat[@]}")
incompat_tools+=("${glibc_pre_2_34_incompat[@]}")
fi
fi
fi

View File

@@ -0,0 +1,13 @@
{
"repository": "https://github.com/rust-mobile/xbuild",
"tag_prefix": "v",
"rust_crate": "${package}",
"asset_name": "${package}-${os_name}-x64${exe}",
"bin": "${package}-${os_name}-x64${exe}",
"version_range": ">= 0.2.0",
"platform": {
"x86_64_linux_gnu": {},
"x86_64_macos": {},
"x86_64_windows": {}
}
}

View File

@@ -178,6 +178,12 @@ fn main() -> Result<()> {
continue;
}
}
// Specifically skip versions of xbuild with build metadata.
if base_info.rust_crate.as_deref() == Some("xbuild") && !semver_version.build.is_empty() {
continue;
}
let mut download_info = BTreeMap::new();
for (&platform, base_download_info) in &base_info.platform {
let asset_names = base_download_info