Skip to content

Commit 2a94c9c

Browse files
authored
chore(cross): Upgrade aarch64-unknown-linux-gnu to Ubuntu 20.04 (#5898)
1 parent fb39776 commit 2a94c9c

File tree

6 files changed

+41
-69
lines changed

6 files changed

+41
-69
lines changed

.github/workflows/push-cross-images.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
1-
name: Build
1+
name: Cross Images
22

33
on:
44
push:
55
paths:
66
- '.github/workflows/push-cross-images.yml'
77
- 'rust/cubestore/cross/**'
8-
branches:
9-
- 'master'
108

119
jobs:
1210
docker-dev:
@@ -41,5 +39,5 @@ jobs:
4139
context: ./
4240
file: ./rust/cubestore/cross/${{ matrix.target }}.Dockerfile
4341
platforms: linux/amd64
44-
push: true
42+
push: ${{ github.ref == 'refs/heads/master' }}
4543
tags: cubejs/rust-cross:${{ matrix.target }}

rust/cubestore/Cargo.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rust/cubestore/Cross.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@ image = "cubejs/rust-cross:x86_64-pc-windows-gnu-10012022"
1111
xargo = false
1212

1313
[target.x86_64-unknown-linux-gnu]
14-
image = "cubejs/rust-cross:x86_64-unknown-linux-gnu"
14+
image = "cubejs/rust-cross:x86_64-unknown-linux-gnu-02012023"
1515
xargo = false
1616

1717
[target.x86_64-unknown-linux-musl]
18-
image = "cubejs/rust-cross:x86_64-unknown-linux-musl"
18+
image = "cubejs/rust-cross:x86_64-unknown-linux-musl-02012023"
1919
xargo = false
2020

2121
[target.aarch64-unknown-linux-gnu]
22-
image = "cubejs/rust-cross:aarch64-unknown-linux-gnu"
22+
image = "cubejs/rust-cross:aarch64-unknown-linux-gnu-02012023"
2323
xargo = false

rust/cubestore/cross/README.md

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,29 +18,23 @@ Keep in mind:
1818

1919
```sh
2020
# dmY
21-
export CROSS_VERSION=10012022
21+
export CROSS_VERSION=02012023
2222

2323
# docker build -t cubejs/rust-cross:x86_64-apple-darwin-$CROSS_VERSION -f x86_64-apple-darwin.Dockerfile .
2424
# docker buildx build --platform linux/amd64 -t cubejs/rust-cross:x86_64-pc-windows-gnu-$CROSS_VERSION -f x86_64-pc-windows-gnu.Dockerfile .
2525
# docker buildx build --platform linux/amd64 -t cubejs/rust-cross:x86_64-pc-windows-msvc-$CROSS_VERSION -f x86_64-pc-windows-msvc.Dockerfile .
2626

27-
docker buildx build --platform linux/amd64 -t cubejs/rust-cross:x86_64-unknown-linux-gnu-$CROSS_VERSION -f x86_64-unknown-linux-gnu-stretch.Dockerfile .
27+
docker buildx build --platform linux/amd64 -t cubejs/rust-cross:x86_64-unknown-linux-gnu-$CROSS_VERSION -f x86_64-unknown-linux-gnu.Dockerfile .
2828
docker buildx build --platform linux/amd64 -t cubejs/rust-cross:x86_64-unknown-linux-musl-$CROSS_VERSION -f x86_64-unknown-linux-musl.Dockerfile .
2929
docker buildx build --platform linux/amd64 -t cubejs/rust-cross:aarch64-unknown-linux-gnu-$CROSS_VERSION -f aarch64-unknown-linux-gnu.Dockerfile .
3030

31-
# Experimental
32-
docker buildx build --platform linux/amd64 -t cubejs/rust-cross:x86_64-unknown-linux-gnu-buster-$CROSS_VERSION -f x86_64-unknown-linux-gnu-buster.Dockerfile .
33-
3431
#docker push cubejs/rust-cross:x86_64-apple-darwin
3532
#docker push cubejs/rust-cross:x86_64-pc-windows-gnu-$CROSS_VERSION
3633
#docker push cubejs/rust-cross:x86_64-pc-windows-msvc-$CROSS_VERSION
3734
docker push cubejs/rust-cross:x86_64-unknown-linux-gnu-$CROSS_VERSION
3835
docker push cubejs/rust-cross:x86_64-unknown-linux-musl-$CROSS_VERSION
3936
docker push cubejs/rust-cross:aarch64-unknown-linux-gnu-$CROSS_VERSION
4037

41-
# Experimental
42-
docker push cubejs/rust-cross:x86_64-unknown-linux-gnu-buster-$CROSS_VERSION
43-
4438
# Verify versions
4539
docker run --rm -it cubejs/rust-cross:x86_64-unknown-linux-gnu-$CROSS_VERSION cc --version
4640
docker run --rm -it cubejs/rust-cross:x86_64-unknown-linux-gnu-buster-$CROSS_VERSION cc --version
Lines changed: 31 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,48 @@
1-
# Based on top of ubuntu 16.04
1+
# Based on top of ubuntu 20.04
2+
# TODO: Migrate to https://github.com/cross-rs/cross/pkgs/container/aarch64-unknown-linux-gnu, when it will be released!
23
# https://github.com/rust-embedded/cross/blob/master/docker/Dockerfile.aarch64-unknown-linux-gnu
3-
FROM rustembedded/cross:aarch64-unknown-linux-gnu
4+
FROM cubejs/cross-aarch64-unknown-linux-gnu:31122022
45

56
RUN apt-get update \
67
&& apt-get -y upgrade \
78
&& DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common pkg-config wget apt-transport-https ca-certificates \
89
&& wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - \
9-
&& add-apt-repository "deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-12 main" \
10-
&& apt-get update \
10+
&& add-apt-repository "deb https://apt.llvm.org/focal/ llvm-toolchain-focal-12 main" \
1111
&& DEBIAN_FRONTEND=noninteractive apt-get install -y gcc-multilib g++-multilib \
12-
&& DEBIAN_FRONTEND=noninteractive apt-get install -y llvm-12 clang-12 libclang-12-dev clang-12 make libssl-dev libsasl2-dev \
12+
&& DEBIAN_FRONTEND=noninteractive apt-get install -y llvm-12 clang-12 libclang-12-dev clang-12 \
13+
make cmake libsasl2-dev \
1314
libc6 libc6-dev libc6-arm64-cross libc6-dev-arm64-cross \
1415
gcc-aarch64-linux-gnu g++-aarch64-linux-gnu \
16+
&& apt-get autoremove -y \
1517
&& rm -rf /var/lib/apt/lists/*;
1618

1719
RUN update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-12 100
1820
RUN update-alternatives --install /usr/bin/clang clang /usr/bin/clang-12 100
1921
RUN update-alternatives --install /usr/bin/clang-cpp clang-cpp /usr/bin/clang-cpp-12 100
2022

2123
# https://www.openssl.org/source/old/1.1.1/
22-
ARG OPENSSL_VERSION=1.1.1l
23-
24-
ENV MACHINE=armv8
25-
ENV ARCH=arm
26-
ENV CC=aarch64-linux-gnu-gcc
24+
ENV OPENSSL_VERSION=1.1.1l
25+
ENV LIZB_VERSION=1.2.13
26+
27+
ENV ARCH=arm \
28+
MACHINE=armv8 \
29+
AS=aarch64-linux-gnu-as \
30+
AR=aarch64-linux-gnu-ar \
31+
CC=aarch64-linux-gnu-gcc \
32+
CXX=aarch64-linux-gnu-g++ \
33+
CPP=aarch64-linux-gnu-cpp \
34+
LD=aarch64-linux-gnu-ld
35+
36+
RUN wget https://zlib.net/zlib-${LIZB_VERSION}.tar.gz -O - | tar -xz && \
37+
cd zlib-${LIZB_VERSION} && \
38+
./configure --prefix=/usr/aarch64-linux-gnu && \
39+
make -j $(nproc) && \
40+
make install && \
41+
cd .. && rm -rf zlib-${LIZB_VERSION};
2742

2843
RUN wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz -O - | tar -xz &&\
2944
cd openssl-${OPENSSL_VERSION} && \
30-
./Configure --prefix=/openssl --openssldir=/openssl/lib linux-aarch64 && \
45+
./Configure --prefix=/usr/aarch64-linux-gnu --openssldir=/usr/aarch64-linux-gnu/lib linux-aarch64 && \
3146
make depend && \
3247
make -j $(nproc) && \
3348
make install_sw && \
@@ -38,13 +53,11 @@ ENV PKG_CONFIG_ALLOW_CROSS=true
3853
ENV PKG_CONFIG_ALL_STATIC=true
3954
ENV RUSTFLAGS="-C target-feature=-crt-static"
4055

41-
ENV OPENSSL_DIR=/openssl \
56+
ENV OPENSSL_DIR=/usr/aarch64-linux-gnu \
4257
OPENSSL_STATIC=yes \
43-
OPENSSL_INCLUDE_DIR=/openssl/include \
44-
OPENSSL_LIB_DIR=/openssl/lib
45-
46-
ENV OPENSSL_ROOT_DIR=/openssl
47-
ENV OPENSSL_LIBRARIES=/openssl/lib
48-
ENV LIBZ_SYS_STATIC=1
58+
OPENSSL_INCLUDE_DIR=/usr/aarch64-linux-gnu/include \
59+
OPENSSL_LIB_DIR=/usr/aarch64-linux-gnu/lib \
60+
OPENSSL_LIBRARIES=/usr/aarch64-linux-gnu/lib \
61+
LIBZ_SYS_STATIC=1
4962

5063
ENV PATH="/cargo/bin:$PATH"

rust/cubestore/cross/x86_64-unknown-linux-gnu-stretch.Dockerfile

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)