aboutsummaryrefslogtreecommitdiff
path: root/tdlib.Dockerfile
diff options
context:
space:
mode:
authorBohdan Horbeshko <bodqhrohro@gmail.com>2024-04-10 02:08:37 +0300
committerBohdan Horbeshko <bodqhrohro@gmail.com>2024-04-10 02:08:37 +0300
commit3e772be7a6f3312958c0ea0de7eff7a45ece192b (patch)
tree922f10697860a71ab718ec9285c9753bbbdc97b2 /tdlib.Dockerfile
parent908bd76aacfae7ae11b49e83da060232703bfa4f (diff)
Add tdlib.Dockerfile
Diffstat (limited to 'tdlib.Dockerfile')
-rw-r--r--tdlib.Dockerfile23
1 files changed, 23 insertions, 0 deletions
diff --git a/tdlib.Dockerfile b/tdlib.Dockerfile
new file mode 100644
index 0000000..5774405
--- /dev/null
+++ b/tdlib.Dockerfile
@@ -0,0 +1,23 @@
+FROM golang:1.19-bullseye AS base
+
+RUN apt-get update
+RUN apt-get install -y libssl-dev cmake build-essential gperf libz-dev make git php
+
+FROM base AS tdlib
+
+ARG TD_COMMIT
+ARG MAKEOPTS
+RUN git clone https://github.com/tdlib/td /src/
+RUN git -C /src/ checkout "${TD_COMMIT}"
+RUN mkdir build
+WORKDIR /build/
+RUN cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/compiled/ /src/
+RUN cmake --build . --target prepare_cross_compiling ${MAKEOPTS}
+WORKDIR /src/
+RUN php SplitSource.php
+WORKDIR /build/
+RUN cmake --build . ${MAKEOPTS}
+RUN make install
+
+FROM scratch AS binaries
+COPY --from=tdlib /compiled/ /