mirror of
https://github.com/denoland/deno.git
synced 2024-11-21 15:04:11 -05:00
chore: Ensure we only end up with the clang version we want & upgrade libffi (#19421)
The number of clang versions installed on the build machines is too dang high.
This commit is contained in:
parent
caad79ef78
commit
f35161d3c5
4 changed files with 18 additions and 8 deletions
7
.github/workflows/ci.generate.ts
vendored
7
.github/workflows/ci.generate.ts
vendored
|
@ -24,12 +24,14 @@ const prCacheKeyPrefix =
|
||||||
`${cacheVersion}-cargo-target-\${{ matrix.os }}-\${{ matrix.profile }}-\${{ matrix.job }}-`;
|
`${cacheVersion}-cargo-target-\${{ matrix.os }}-\${{ matrix.profile }}-\${{ matrix.job }}-`;
|
||||||
|
|
||||||
const installPkgsCommand =
|
const installPkgsCommand =
|
||||||
"sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15";
|
"sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15 clang-tools-15 clang-format-15 clang-tidy-15";
|
||||||
const sysRootStep = {
|
const sysRootStep = {
|
||||||
name: "Set up incremental LTO and sysroot build",
|
name: "Set up incremental LTO and sysroot build",
|
||||||
run: `# Avoid running man-db triggers, which sometimes takes several minutes
|
run: `# Avoid running man-db triggers, which sometimes takes several minutes
|
||||||
# to complete.
|
# to complete.
|
||||||
sudo apt-get remove --purge -y man-db
|
sudo apt-get remove --purge -y man-db
|
||||||
|
# Remove older clang before we install
|
||||||
|
sudo apt-get remove 'clang-12*' 'clang-13*' 'clang-14*' 'llvm-12*' 'llvm-13*' 'llvm-14*' 'lld-12*' 'lld-13*' 'lld-14*'
|
||||||
|
|
||||||
# Install clang-15, lld-15, and debootstrap.
|
# Install clang-15, lld-15, and debootstrap.
|
||||||
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" |
|
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" |
|
||||||
|
@ -40,6 +42,8 @@ sudo dd of=/etc/apt/trusted.gpg.d/llvm-snapshot.gpg
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
# this was unreliable sometimes, so try again if it fails
|
# this was unreliable sometimes, so try again if it fails
|
||||||
${installPkgsCommand} || echo 'Failed. Trying again.' && sudo apt-get clean && sudo apt-get update && ${installPkgsCommand}
|
${installPkgsCommand} || echo 'Failed. Trying again.' && sudo apt-get clean && sudo apt-get update && ${installPkgsCommand}
|
||||||
|
# Fix alternatives
|
||||||
|
(yes '' | sudo update-alternatives --force --all) || true
|
||||||
|
|
||||||
# Create ubuntu-16.04 sysroot environment, which is used to avoid
|
# Create ubuntu-16.04 sysroot environment, which is used to avoid
|
||||||
# depending on a very recent version of glibc.
|
# depending on a very recent version of glibc.
|
||||||
|
@ -461,6 +465,7 @@ const ci = {
|
||||||
"python --version",
|
"python --version",
|
||||||
"rustc --version",
|
"rustc --version",
|
||||||
"cargo --version",
|
"cargo --version",
|
||||||
|
"which dpkg && dpkg -l",
|
||||||
// Deno is installed when linting.
|
// Deno is installed when linting.
|
||||||
'if [ "${{ matrix.job }}" == "lint" ]',
|
'if [ "${{ matrix.job }}" == "lint" ]',
|
||||||
"then",
|
"then",
|
||||||
|
|
7
.github/workflows/ci.yml
vendored
7
.github/workflows/ci.yml
vendored
|
@ -209,6 +209,8 @@ jobs:
|
||||||
# Avoid running man-db triggers, which sometimes takes several minutes
|
# Avoid running man-db triggers, which sometimes takes several minutes
|
||||||
# to complete.
|
# to complete.
|
||||||
sudo apt-get remove --purge -y man-db
|
sudo apt-get remove --purge -y man-db
|
||||||
|
# Remove older clang before we install
|
||||||
|
sudo apt-get remove 'clang-12*' 'clang-13*' 'clang-14*' 'llvm-12*' 'llvm-13*' 'llvm-14*' 'lld-12*' 'lld-13*' 'lld-14*'
|
||||||
|
|
||||||
# Install clang-15, lld-15, and debootstrap.
|
# Install clang-15, lld-15, and debootstrap.
|
||||||
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" |
|
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" |
|
||||||
|
@ -218,7 +220,9 @@ jobs:
|
||||||
sudo dd of=/etc/apt/trusted.gpg.d/llvm-snapshot.gpg
|
sudo dd of=/etc/apt/trusted.gpg.d/llvm-snapshot.gpg
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
# this was unreliable sometimes, so try again if it fails
|
# this was unreliable sometimes, so try again if it fails
|
||||||
sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15 || echo 'Failed. Trying again.' && sudo apt-get clean && sudo apt-get update && sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15
|
sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15 clang-tools-15 clang-format-15 clang-tidy-15 || echo 'Failed. Trying again.' && sudo apt-get clean && sudo apt-get update && sudo apt-get install --no-install-recommends debootstrap clang-15 lld-15 clang-tools-15 clang-format-15 clang-tidy-15
|
||||||
|
# Fix alternatives
|
||||||
|
(yes '' | sudo update-alternatives --force --all) || true
|
||||||
|
|
||||||
# Create ubuntu-16.04 sysroot environment, which is used to avoid
|
# Create ubuntu-16.04 sysroot environment, which is used to avoid
|
||||||
# depending on a very recent version of glibc.
|
# depending on a very recent version of glibc.
|
||||||
|
@ -277,6 +281,7 @@ jobs:
|
||||||
python --version
|
python --version
|
||||||
rustc --version
|
rustc --version
|
||||||
cargo --version
|
cargo --version
|
||||||
|
which dpkg && dpkg -l
|
||||||
if [ "${{ matrix.job }}" == "lint" ]
|
if [ "${{ matrix.job }}" == "lint" ]
|
||||||
then
|
then
|
||||||
deno --version
|
deno --version
|
||||||
|
|
8
Cargo.lock
generated
8
Cargo.lock
generated
|
@ -2789,9 +2789,9 @@ checksum = "99227334921fae1a979cf0bfdfcc6b3e5ce376ef57e16fb6fb3ea2ed6095f80c"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libffi"
|
name = "libffi"
|
||||||
version = "3.1.0"
|
version = "3.2.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "6cb06d5b4c428f3cd682943741c39ed4157ae989fffe1094a08eaf7c4014cf60"
|
checksum = "ce826c243048e3d5cec441799724de52e2d42f820468431fc3fceee2341871e2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"libffi-sys",
|
"libffi-sys",
|
||||||
|
@ -2799,9 +2799,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "libffi-sys"
|
name = "libffi-sys"
|
||||||
version = "2.1.0"
|
version = "2.2.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "11c6f11e063a27ffe040a9d15f0b661bf41edc2383b7ae0e0ad5a7e7d53d9da3"
|
checksum = "dc65067b78c0fc069771e8b9a9e02df71e08858bec92c1f101377c67b9dca7c7"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cc",
|
"cc",
|
||||||
]
|
]
|
||||||
|
|
|
@ -17,8 +17,8 @@ path = "lib.rs"
|
||||||
deno_core.workspace = true
|
deno_core.workspace = true
|
||||||
dlopen.workspace = true
|
dlopen.workspace = true
|
||||||
dynasmrt = "1.2.3"
|
dynasmrt = "1.2.3"
|
||||||
libffi = "=3.1.0"
|
libffi = "=3.2.0"
|
||||||
libffi-sys = "=2.1.0" # temporary pin for downgrade to Rust 1.69
|
libffi-sys = "=2.2.1"
|
||||||
serde.workspace = true
|
serde.workspace = true
|
||||||
serde-value = "0.7"
|
serde-value = "0.7"
|
||||||
serde_json = "1.0"
|
serde_json = "1.0"
|
||||||
|
|
Loading…
Reference in a new issue