Skip to content

Commit 9208520

Browse files
committed
Add tooling for (rustc) perf analysis
1 parent 119ac50 commit 9208520

File tree

4 files changed

+33
-6
lines changed

4 files changed

+33
-6
lines changed

.devcontainer/Dockerfile

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
FROM mcr.microsoft.com/vscode/devcontainers/rust:1-bullseye@sha256:7a4c4c8b4516b6360edcfe0e8eaefad01ac94542634504658e29b35f0b7ea600 AS base
22
ARG USER_UID=1000
33
ARG USER_GID="$USER_UID"
4-
RUN sudo groupmod --gid "$USER_GID" vscode \
5-
&& sudo usermod --uid "$USER_UID" --gid "$USER_GID" vscode \
6-
&& sudo chown -R "$USER_UID":"$USER_GID" /home/vscode
4+
RUN groupmod --gid "$USER_GID" vscode \
5+
&& usermod --uid "$USER_UID" --gid "$USER_GID" vscode \
6+
&& chown -R "$USER_UID":"$USER_GID" /home/vscode \
7+
&& apt-get update
78

89
FROM base AS mold
910
COPY build-context/mold.build-packages build-context/mold.url /tmp/
10-
RUN apt-get update \
11-
&& xargs -a /tmp/mold.build-packages apt-get -y install --no-install-recommends \
11+
RUN xargs -a /tmp/mold.build-packages apt-get -y install --no-install-recommends \
1212
&& rm /tmp/mold.build-packages
1313
USER vscode
1414
RUN mkdir ~/mold \
@@ -18,7 +18,11 @@ RUN mkdir ~/mold \
1818
&& sudo make install
1919

2020
FROM base AS dev
21-
RUN apt-get autoremove -y
21+
COPY build-context/packages /tmp/
22+
RUN xargs -a /tmp/packages apt-get -y install --no-install-recommends \
23+
&& apt-get autoremove -y \
24+
&& apt-get clean \
25+
&& rm /tmp/packages
2226
USER vscode
2327
COPY build-context/Cargo.toml /tmp/
2428
RUN awk -F' = ' '/ = /{print $2 " " $1}' /tmp/Cargo.toml | xargs -n2 -P$(nproc) cargo install --locked --version \

.devcontainer/build-context/Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ cargo-expand = "1.0.10"
66
cargo-hack = "0.5.8"
77
cargo-tree = "0.29.0"
88
just = "0.10.4"
9+
rustfilt = "0.2.1"
10+
rustup-toolchain-install-master = "1.8.0"
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
gdb=10.1-1.7
2+
libbabeltrace1=1.5.8-1+b3
3+
libboost-regex1.74.0=1.74.0-9
4+
libc6-dbg=2.31-13+deb11u2
5+
libdebuginfod1=0.183-1
6+
libdw1=0.183-1
7+
libipt2=2.0.3-1
8+
libsource-highlight-common=3.1.9-3
9+
libsource-highlight4v5=3.1.9-3+b1
10+
valgrind=1:3.16.1-1
11+
valgrind-dbg=1:3.16.1-1

.devcontainer/update.sh

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ BUILD_CONTEXT="build-context"
66
MOLD_GITHUB_REPO="rui314/mold"
77
MOLD_TARBALL_URL="mold.url"
88
MOLD_BUILD_DEPS="mold.build-packages"
9+
PACKAGES="packages"
910

1011
cd -- "$( dirname -- "${BASH_SOURCE[0]}" )"
1112

@@ -28,4 +29,13 @@ git add -A
2829
git diff-index --quiet HEAD \
2930
|| git commit -qm 'Update mold'
3031

32+
(
33+
unlink "$BUILD_CONTEXT/$PACKAGES"
34+
update-scripts/latest-packages.sh > "$BUILD_CONTEXT/$PACKAGES"
35+
) < "$BUILD_CONTEXT/$PACKAGES"
36+
37+
git add -A
38+
git diff-index --quiet HEAD \
39+
|| git commit -qm 'Update packages'
40+
3141
exit 0

0 commit comments

Comments
 (0)