Skip to content

Commit b23e902

Browse files
authored
Merge pull request ClickHouse#78667 from azat/bump-gdb
cctools: update gdb to 16.2 (6x faster backtraces on CI) and fix Apple TAPI/cctools port
2 parents 7cd36cb + f3383e7 commit b23e902

File tree

8 files changed

+22
-20
lines changed

8 files changed

+22
-20
lines changed

ci/defs/defs.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -101,15 +101,12 @@ class CIFiles:
101101
# platforms=Docker.Platforms.arm_amd,
102102
# depends_on=[],
103103
# ),
104-
# TODO: fix build failure:
105-
# 7 58.76 In file included from ./../code-sign-blobs/superblob.h:7:
106-
# 7 58.76 ./../code-sign-blobs/blob.h:185:60: error: no member named 'clone' in 'Security::BlobCore'
107-
# Docker.Config(
108-
# name="clickhouse/cctools",
109-
# path="./docker/packager/cctools",
110-
# platforms=Docker.Platforms.arm_amd,
111-
# depends_on=["clickhouse/fasttest"],
112-
# ),
104+
Docker.Config(
105+
name="clickhouse/cctools",
106+
path="./docker/packager/cctools",
107+
platforms=Docker.Platforms.arm_amd,
108+
depends_on=["clickhouse/fasttest"],
109+
),
113110
Docker.Config(
114111
name="clickhouse/test-util",
115112
path="./docker/test/util",

ci/docker/binary-builder/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ ENV CC=clang-${LLVM_VERSION}
55
ENV CXX=clang++-${LLVM_VERSION}
66

77
# If the cctools is updated, then first build it in the CI, then update here in a different commit
8-
COPY --from=clickhouse/cctools:d9e3596e706b /cctools /cctools
8+
COPY --from=clickhouse/cctools:13cfebfd8f1bbc65ab49 /cctools /cctools
99

1010
# A cross-linker for RISC-V 64 (we need it, because LLVM's LLD does not work):
1111
RUN apt-get update \

ci/docker/fasttest/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ RUN apt-get update \
6767
&& apt-get clean \
6868
&& rm -rf /var/lib/apt/lists/* /var/cache/debconf /tmp/*
6969

70-
COPY --from=clickhouse/cctools:0d6b90a7a490 /opt/gdb /opt/gdb
70+
COPY --from=clickhouse/cctools:13cfebfd8f1bbc65ab49 /opt/gdb /opt/gdb
7171
# Give suid to gdb to grant it attach permissions
7272
RUN chmod u+s /opt/gdb/bin/gdb
7373
ENV PATH="/opt/gdb/bin:${PATH}"

docker/packager/cctools/Dockerfile

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,27 @@
44
# It's based on the assumption that we don't care of the cctools version so much
55
# It event does not depend on the clickhouse/fasttest in the `docker/images.json`
66
ARG FROM_TAG=latest
7-
FROM clickhouse/fasttest:$FROM_TAG as builder
7+
FROM clickhouse/fasttest:$FROM_TAG AS builder
88

99
ENV CC=clang-${LLVM_VERSION}
1010
ENV CXX=clang++-${LLVM_VERSION}
1111

1212
RUN git clone https://github.com/tpoechtrager/apple-libtapi.git \
1313
&& cd apple-libtapi \
1414
&& git checkout 15dfc2a8c9a2a89d06ff227560a69f5265b692f9 \
15-
&& INSTALLPREFIX=/cctools ./build.sh \
15+
&& INSTALLPREFIX=/cctools NINJA=1 ./build.sh \
1616
&& ./install.sh \
1717
&& cd .. \
1818
&& rm -rf apple-libtapi
1919

2020
# Build and install tools for cross-linking to Darwin (x86-64)
2121
# Build and install tools for cross-linking to Darwin (aarch64)
22-
RUN git clone https://github.com/tpoechtrager/cctools-port.git \
22+
RUN git clone https://github.com/tpoechtrager/cctools-port.git --branch 986-ld64-711 \
23+
&& apt-get update \
24+
&& apt-get install --yes \
25+
make \
26+
&& apt-get clean \
2327
&& cd cctools-port/cctools \
24-
&& git checkout 2a3e1c2a6ff54a30f898b70cfb9ba1692a55fad7 \
2528
&& ./configure --prefix=/cctools --with-libtapi=/cctools \
2629
--target=x86_64-apple-darwin \
2730
&& make install -j$(nproc) \
@@ -40,7 +43,7 @@ RUN git clone https://github.com/tpoechtrager/cctools-port.git \
4043
# DWARF error: invalid or unhandled FORM value: 0x23
4144
#
4245
ENV LD=ld.lld-${LLVM_VERSION}
43-
ARG GDB_VERSION=15.1
46+
ARG GDB_VERSION=16.2
4447
RUN apt-get update \
4548
&& apt-get install --yes \
4649
libgmp-dev \
@@ -58,3 +61,5 @@ RUN wget https://sourceware.org/pub/gdb/releases/gdb-$GDB_VERSION.tar.gz \
5861
FROM scratch
5962
COPY --from=builder /cctools /cctools
6063
COPY --from=builder /opt/gdb /opt/gdb
64+
65+
# NOTE: this file should be kept in sync with other docker images, since they use COPY from this image

docker/test/integration/base/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,5 @@ maxClientCnxns=80' > /opt/zookeeper/conf/zoo.cfg && \
7373
ENV TZ=Etc/UTC
7474
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
7575

76-
COPY --from=clickhouse/cctools:0d6b90a7a490 /opt/gdb /opt/gdb
76+
COPY --from=clickhouse/cctools:13cfebfd8f1bbc65ab49 /opt/gdb /opt/gdb
7777
ENV PATH="/opt/gdb/bin:${PATH}"

docker/test/integration/runner/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ COPY modprobe.sh /usr/local/bin/modprobe
8585
COPY dockerd-entrypoint.sh /usr/local/bin/
8686
COPY misc/ /misc/
8787

88-
COPY --from=clickhouse/cctools:0d6b90a7a490 /opt/gdb /opt/gdb
88+
COPY --from=clickhouse/cctools:13cfebfd8f1bbc65ab49 /opt/gdb /opt/gdb
8989
ENV PATH="/opt/gdb/bin:${PATH}"
9090

9191
# Same options as in test/base/Dockerfile

docker/test/performance-comparison/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ RUN pip3 --no-cache-dir install -r requirements.txt
4141

4242
COPY run.sh /
4343

44-
COPY --from=clickhouse/cctools:0d6b90a7a490 /opt/gdb /opt/gdb
44+
COPY --from=clickhouse/cctools:13cfebfd8f1bbc65ab49 /opt/gdb /opt/gdb
4545
ENV PATH="/opt/gdb/bin:${PATH}"
4646

4747
CMD ["bash", "/run.sh"]

docker/test/util/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,5 +56,5 @@ RUN apt-get update \
5656
&& apt-get clean \
5757
&& rm -rf /var/lib/apt/lists/* /var/cache/debconf /tmp/*
5858

59-
COPY --from=clickhouse/cctools:0d6b90a7a490 /opt/gdb /opt/gdb
59+
COPY --from=clickhouse/cctools:13cfebfd8f1bbc65ab49 /opt/gdb /opt/gdb
6060
ENV PATH="/opt/gdb/bin:${PATH}"

0 commit comments

Comments
 (0)