-
Notifications
You must be signed in to change notification settings - Fork 13.3k
solaris build environment should include libsendfile/liblgrp #94976
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
As of version 0.2.120 of the libc crate, the solaris target now requires some additional libraries to be present in the sysroot. Note that the solaris target doesn't really build against files from Solaris, but rather against some files from DilOS (a platform similar to both Solaris and illumos). Pull in the extra libraries and their compilation links from that apt repository.
(rust-highfive has picked a reviewer for you, use r? to override) |
Note that I've looked in the apt repository I believe this docker image uses, and found the files I would expect to see, via: #!/bin/bash
set -o errexit
set -o pipefail
REPO=https://apt.dilos.org/dilos
A=dilos2
B=main
printf 'loading package manifest...\n'
pkgs=$(curl -sSf -L "$REPO/dists/$A/$B/binary-solaris-i386/Packages.gz" |
gunzip)
function file_for {
awk -v "p=$1" '
$1 == "Package:" && $2 == p { q = 1; }
/^$/ { q = 0; }
q && $1 == "Filename:" { print $2; }' <<< "$pkgs"
}
files=(
$(file_for libsendfile)
$(file_for libsendfile-dev)
$(file_for liblgrp)
$(file_for liblgrp-dev)
)
td="$(mktemp -d)"
for f in "${files[@]}"; do
b=$(basename "$f")
printf 'package: %s\n' "$b"
curl -sSfL -o "$td/$b" "$REPO/$f"
7z -so x "$td/$b" 2>/dev/null | tar tvf - | sed 's/^/ /'
printf '\n'
done
rm -rf "$td" This gives output:
Will the CI pipeline produce the new docker image (dist-various-2) and use that to build the solaris target for this change, or do we need to do something extra to test that? |
@bors r+ rollup=iffy
Yep, this'll automatically rebuild the docker image and use that going forward. |
📌 Commit 0dcb175 has been approved by |
⌛ Testing commit 0dcb175 with merge 442ea85c0cd3580482c8770a136fcc5cf7feb1e4... |
💥 Test timed out |
@bors retry dist-i586-gnu-i586-i686-musl timed out in ui tests |
⌛ Testing commit 0dcb175 with merge 311b962c39fc7eb88e6d977272d45253ef4489b3... |
💔 Test failed - checks-actions |
@bors retry x86_64-apple-2: The hosted runner: GitHub Actions 47 lost communication with the server. |
☀️ Test successful - checks-actions |
Finished benchmarking commit (183090f): comparison url. Summary: This benchmark run did not return any relevant results. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression |
As of version 0.2.120 of the libc crate, the solaris target now requires
some additional libraries to be present in the sysroot. Note that the
solaris target doesn't really build against files from Solaris, but
rather against some files from DilOS (a platform similar to both Solaris
and illumos). Pull in the extra libraries and their compilation links
from that apt repository.
This aims to assist with #94052.