Move Implib to Dockerfile

This commit is contained in:
Ilya Fedin 2025-05-30 19:14:18 +00:00 committed by John Preston
parent 73649128f3
commit 5f0e9538cf
3 changed files with 33 additions and 5 deletions

View file

@ -21,8 +21,6 @@ project(Telegram
if (APPLE)
enable_language(OBJC OBJCXX)
elseif (LINUX)
enable_language(ASM)
endif()
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT Telegram)
@ -39,7 +37,6 @@ include(cmake/variables.cmake)
include(cmake/nice_target_sources.cmake)
include(cmake/target_compile_options_if_exists.cmake)
include(cmake/target_link_frameworks.cmake)
include(cmake/target_link_optional_libraries.cmake)
include(cmake/target_link_options_if_exists.cmake)
include(cmake/target_link_static_libraries.cmake)
include(cmake/init_target.cmake)

View file

@ -36,12 +36,43 @@ ENV RANLIB=gcc-ranlib
ENV NM=gcc-nm
ENV CFLAGS='{% if DEBUG %}-g{% endif %} -O3 {% if LTO %}-flto=auto -ffat-lto-objects{% endif %} -pipe -fPIC -fno-strict-aliasing -fexceptions -fasynchronous-unwind-tables -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fhardened -Wno-hardened'
ENV CXXFLAGS=$CFLAGS
ENV LDFLAGS='{% if not LTO %}-fuse-ld=lld{% endif %}'
ENV LDFLAGS='{% if not LTO %}-fuse-ld=lld{% endif %} -pthread -ldl -Wl,--as-needed -Wl,-z,muldefs'
ENV CMAKE_GENERATOR=Ninja
ENV CMAKE_BUILD_TYPE=None
ENV CMAKE_BUILD_PARALLEL_LEVEL=
RUN git clone --depth=1 https://github.com/yugr/Implib.so.git \
&& mkdir Implib.so/build \
&& cd Implib.so/build \
&& implib() { \
LIBFILE=$(basename $1); \
LIBNAME=$(basename $1 .so); \
../implib-gen.py -q $1; \
gcc $CFLAGS -c -o $LIBFILE.tramp.o $LIBFILE.tramp.S; \
gcc $CFLAGS -c -o $LIBFILE.init.o $LIBFILE.init.c; \
ar rcs /usr/local/lib64/$LIBNAME.a $LIBFILE.tramp.o $LIBFILE.init.o; \
} \
&& implib /usr/lib64/libgtk-3.so \
&& implib /usr/lib64/libgdk-3.so \
&& implib /usr/lib64/libgdk_pixbuf-2.0.so \
&& implib /usr/lib64/libpango-1.0.so \
&& implib /usr/lib64/libvdpau.so \
&& implib /usr/lib64/libva-x11.so \
&& implib /usr/lib64/libva-drm.so \
&& implib /usr/lib64/libva.so \
&& implib /usr/lib64/libEGL.so \
&& implib /usr/lib64/libGL.so \
&& implib /usr/lib64/libdrm.so \
&& implib /usr/lib64/libwayland-egl.so \
&& implib /usr/lib64/libwayland-cursor.so \
&& implib /usr/lib64/libwayland-client.so \
&& implib /usr/lib64/libwayland-server.so \
&& implib /usr/lib64/libX11-xcb.so \
&& implib /usr/lib64/libxcb.so \
&& cd ../.. \
&& rm -rf Implib.so
FROM builder AS patches
RUN git init patches \
&& cd patches \

2
cmake

@ -1 +1 @@
Subproject commit 9223f910e3c90f44ac06bfe846baa932c1926c3a
Subproject commit 72e005977d80a12af5ca9028d666437319c46693