Skip to content

Commit 4421431

Browse files
authored
chore(cross): Install python 3.13.5 (cube-js#9841)
1 parent 8ff4faa commit 4421431

6 files changed

+57
-49
lines changed

rust/cubestore/cross/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ Keep in mind:
1515
- Don't use modern unix*, which ship newest `libc` (current used 2.31)
1616
- Better to use one clang/gcc version across images (`clang-14`)
1717
- Try to use one OS for all images (`debian`) for unix*
18-
- Install 3 last versions for Python (`3.9`, `3.10`, `3.11`)
1918

2019
```sh
21-
# dmY
20+
export DOCKER_BUILDKIT_MAX_PARALLELISM=2
2221
docker buildx bake x86_64-unknown-linux-gnu-python --push
2322
docker buildx bake aarch64-unknown-linux-gnu-python --push
2423
docker buildx bake x86_64-unknown-linux-musl-python --push
2524

26-
export CROSS_VERSION=01082024
25+
# dmY
26+
export CROSS_VERSION=31072025
2727

2828
# Verify versions
2929
docker run --platform linux/amd64 --rm -it cubejs/rust-cross:x86_64-unknown-linux-gnu-$CROSS_VERSION cc --version

rust/cubestore/cross/aarch64-unknown-linux-gnu-python.Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,22 @@
11
FROM base
22

33
ARG PYTHON_VERSION
4+
ARG PYTHON_VERSION_SUFFIX
45
ARG PYTHON_RELEASE
56

67
# python is required for cross compiling python :D
78
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y python${PYTHON_RELEASE} \
89
&& rm -rf /var/lib/apt/lists/*;
910

10-
RUN wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz -O - | tar -xz \
11-
&& cd Python-${PYTHON_VERSION} \
11+
# --enable-optimizations is disabled, because it's not supported with CROSS
12+
RUN wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}${PYTHON_VERSION_SUFFIX}.tgz -O - | tar -xz \
13+
&& cd Python-${PYTHON_VERSION}${PYTHON_VERSION_SUFFIX} \
1214
&& touch config.site-aarch64 \
1315
&& echo "ac_cv_buggy_getaddrinfo=no" >> config.site-aarch64 \
1416
&& echo "ac_cv_file__dev_ptmx=no" >> config.site-aarch64 \
1517
&& echo "ac_cv_file__dev_ptc=no" >> config.site-aarch64 \
1618
&& CONFIG_SITE=config.site-aarch64 ./configure \
1719
--enable-shared \
18-
--enable-optimizations \
1920
--disable-ipv6 \
2021
--prefix=/usr/aarch64-linux-gnu \
2122
--build=aarch64-unknown-linux-gnu \

rust/cubestore/cross/aarch64-unknown-linux-gnu.Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,8 @@ ENV ARCH=arm \
3535
CC=aarch64-linux-gnu-gcc \
3636
CXX=aarch64-linux-gnu-g++ \
3737
CPP=aarch64-linux-gnu-cpp \
38-
LD=aarch64-linux-gnu-ld
38+
LD=aarch64-linux-gnu-ld \
39+
RUNLIB=aarch64-linux-gnu-ranlib
3940

4041
ENV ZLIB_VERSION=1.3.1
4142
RUN wget https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz -O - | tar -xz && \
@@ -45,7 +46,7 @@ RUN wget https://zlib.net/zlib-${ZLIB_VERSION}.tar.gz -O - | tar -xz && \
4546
make install && \
4647
cd .. && rm -rf zlib-${ZLIB_VERSION};
4748

48-
# https://www.openssl.org/source/old/1.1.1/
49+
# https://openssl-library.org/source/old/1.1.1/
4950
ENV OPENSSL_VERSION=1.1.1w
5051
RUN wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz -O - | tar -xz \
5152
&& cd openssl-${OPENSSL_VERSION} \

rust/cubestore/cross/docker-bake.hcl

Lines changed: 43 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,48 @@
11
variable "CROSS_VERSION" {
2-
default = "01082024"
2+
// dmY
3+
default = "31072025"
34
}
45

56
variable "LLVM_VERSION" {
67
default = "18"
78
}
89

10+
variable "PYTHON_VERSIONS" {
11+
default = [
12+
# TODO: Enable after release.
13+
# {
14+
# python_version = "3.14.0"
15+
# python_version_sufix = "rc1"
16+
# python_release = "3.14"
17+
# },
18+
{
19+
python_version = "3.13.5"
20+
python_version_sufix = ""
21+
python_release = "3.13"
22+
},
23+
{
24+
python_version = "3.12.4"
25+
python_version_sufix = ""
26+
python_release = "3.12"
27+
},
28+
{
29+
python_version = "3.11.3"
30+
python_version_sufix = ""
31+
python_release = "3.11"
32+
},
33+
{
34+
python_version = "3.10.11"
35+
python_version_sufix = ""
36+
python_release = "3.10"
37+
},
38+
{
39+
python_version = "3.9.18"
40+
python_version_sufix = ""
41+
python_release = "3.9"
42+
}
43+
]
44+
}
45+
946
target "aarch64-unknown-linux-gnu" {
1047
context = "."
1148
dockerfile = "aarch64-unknown-linux-gnu.Dockerfile"
@@ -24,29 +61,13 @@ target "aarch64-unknown-linux-gnu-python" {
2461
dockerfile = "aarch64-unknown-linux-gnu-python.Dockerfile"
2562
name = "aarch64-unknown-linux-gnu-python-${replace(item.python_release, ".", "-")}"
2663
matrix = {
27-
item = [
28-
{
29-
python_version = "3.12.4"
30-
python_release = "3.12"
31-
},
32-
{
33-
python_version = "3.11.3"
34-
python_release = "3.11"
35-
},
36-
{
37-
python_version = "3.10.11"
38-
python_release = "3.10"
39-
},
40-
{
41-
python_version = "3.9.18"
42-
python_release = "3.9"
43-
}
44-
]
64+
item = PYTHON_VERSIONS
4565
}
4666
args = {
4767
CROSS_VERSION = CROSS_VERSION
4868
PYTHON_VERSION = item.python_version
49-
PYTHON_RELEASE = item.python_release
69+
PYTHON_RELEASE = item.python_release,
70+
PYTHON_VERSION_SUFFIX = item.python_version_sufix
5071
}
5172
tags = ["cubejs/rust-cross:aarch64-unknown-linux-gnu-${CROSS_VERSION}-python-${item.python_release}"]
5273
platforms = ["linux/amd64"]
@@ -80,29 +101,13 @@ target "x86_64-unknown-linux-gnu-python" {
80101
dockerfile = "x86_64-unknown-linux-gnu-python.Dockerfile"
81102
name = "x86_64-unknown-linux-gnu-python-${replace(item.python_release, ".", "-")}"
82103
matrix = {
83-
item = [
84-
{
85-
python_version = "3.12.4"
86-
python_release = "3.12"
87-
},
88-
{
89-
python_version = "3.11.3"
90-
python_release = "3.11"
91-
},
92-
{
93-
python_version = "3.10.11"
94-
python_release = "3.10"
95-
},
96-
{
97-
python_version = "3.9.18"
98-
python_release = "3.9"
99-
}
100-
]
104+
item = PYTHON_VERSIONS
101105
}
102106
args = {
103107
CROSS_VERSION = CROSS_VERSION
104108
PYTHON_VERSION = item.python_version
105109
PYTHON_RELEASE = item.python_release
110+
PYTHON_VERSION_SUFFIX = item.python_version_sufix
106111
}
107112
tags = ["cubejs/rust-cross:x86_64-unknown-linux-gnu-${CROSS_VERSION}-python-${item.python_release}"]
108113
platforms = ["linux/amd64"]

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

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
FROM base
22

33
ARG PYTHON_VERSION
4+
ARG PYTHON_VERSION_SUFFIX
45
ARG PYTHON_RELEASE
56

6-
RUN cd tmp && wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}.tgz -O - | tar -xz \
7-
&& cd Python-${PYTHON_VERSION} \
7+
RUN cd tmp && wget https://www.python.org/ftp/python/${PYTHON_VERSION}/Python-${PYTHON_VERSION}${PYTHON_VERSION_SUFFIX}.tgz -O - | tar -xz \
8+
&& cd Python-${PYTHON_VERSION}${PYTHON_VERSION_SUFFIX} \
89
&& ./configure \
910
--enable-shared \
1011
--with-openssl=/openssl \

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ RUN update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-$LLV
1919
&& update-alternatives --install /usr/bin/cc cc /usr/bin/clang-$LLVM_VERSION 100 \
2020
&& update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-$LLVM_VERSION 100;
2121

22-
# https://www.openssl.org/source/old/1.1.1/
22+
# https://openssl-library.org/source/old/1.1.1/
2323
ARG OPENSSL_VERSION=1.1.1w
2424
RUN cd tmp && wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz -O - | tar -xz \
2525
&& cd openssl-${OPENSSL_VERSION} \

0 commit comments

Comments
 (0)