Skip to content

Commit d011ae2

Browse files
committed
fix: Setup devcontainers for building aws-lc-sys
This needs a few environment variables and debian packages installed to facilitate building that package. This includes the env vars in the `just-cargo` invocation, and the packages in the rust, rust-musl, and devcontainer images.
1 parent 58370e7 commit d011ae2

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

Dockerfile

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,11 @@ RUN --mount=type=cache,from=apt-base,source=/etc/apt,target=/etc/apt,ro \
314314
jo \
315315
jq \
316316
libssl-dev \
317-
pkg-config
317+
pkg-config \
318+
g++-aarch64-linux-gnu \
319+
gcc-aarch64-linux-gnu \
320+
binutils-aarch64-linux-gnu \
321+
libc6-dev-arm64-cross
318322
RUN --mount=type=cache,from=apt-llvm,source=/etc/apt,target=/etc/apt,ro \
319323
--mount=type=cache,from=apt-llvm,source=/var/cache/apt,target=/var/cache/apt,sharing=locked \
320324
--mount=type=cache,from=apt-llvm,source=/var/lib/apt/lists,target=/var/lib/apt/lists,sharing=locked \
@@ -346,6 +350,7 @@ RUN --mount=type=cache,from=apt-base,source=/etc/apt,target=/etc/apt,ro \
346350
DEBIAN_FRONTEND=noninteractive apt-get install -y \
347351
g++-aarch64-linux-gnu \
348352
gcc-aarch64-linux-gnu \
353+
binutils-aarch64-linux-gnu \
349354
libc6-dev-arm64-cross
350355

351356
##
@@ -374,7 +379,11 @@ RUN --mount=type=cache,from=apt-base,source=/etc/apt,target=/etc/apt,ro \
374379
time \
375380
tshark \
376381
umoci \
377-
unzip
382+
unzip \
383+
g++-aarch64-linux-gnu \
384+
gcc-aarch64-linux-gnu \
385+
binutils-aarch64-linux-gnu \
386+
libc6-dev-arm64-cross
378387

379388
# Link the gnu versions of ranlib to the musl toolchain.
380389
# See: https://github.com/linkerd/linkerd2/issues/13350

bin/just-cargo

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,15 @@ _rustflags-self-contained := "-Clink-self-contained=yes -Clinker=rust-lld -Clink
3434
export AR_aarch64_unknown_linux_gnu := _ar
3535
export CC_aarch64_unknown_linux_gnu := _clang
3636
export CFLAGS_aarch64_unknown_linux_gnu := '--sysroot=/usr/aarch64-linux-gnu'
37+
AWS_LC_SYS_CFLAGS_aarch64_unknown_linux_gnu := '-fuse-ld=/usr/aarch64-linux-gnu/bin/ld'
3738
export STRIP_aarch64_unknown_linux_gnu := _strip
3839
export CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER := 'aarch64-linux-gnu-gcc'
3940

4041
# linux/arm64 + musl
4142
export AR_aarch64_unknown_linux_musl := _ar
4243
export CC_aarch64_unknown_linux_musl := _clang
4344
export CFLAGS_aarch64_unknown_linux_musl := '--sysroot=/usr/aarch64-linux-gnu'
45+
AWS_LC_SYS_CFLAGS_aarch64_unknown_linux_musl := '-fuse-ld=/usr/aarch64-linux-gnu/bin/ld'
4446
export STRIP_aarch64_unknown_linux_musl := _strip
4547
export CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS := _rustflags-self-contained
4648

0 commit comments

Comments
 (0)