mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-07 23:53:58 +02:00
Add TDLib build phases for tde2e part.
This commit is contained in:
parent
b583240d58
commit
2c048376d4
2 changed files with 107 additions and 0 deletions
|
@ -811,6 +811,38 @@ RUN git clone -b v3.2.2 --depth=1 {{ GIT }}/ada-url/ada.git \
|
||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -rf ada
|
&& rm -rf ada
|
||||||
|
|
||||||
|
FROM builder AS tdlib
|
||||||
|
COPY --link --from=openssl {{ LibrariesPath }}/openssl-cache /
|
||||||
|
|
||||||
|
# Shallow clone on a specific commit.
|
||||||
|
RUN git init td \
|
||||||
|
&& cd td \
|
||||||
|
&& git remote add origin {{ GIT }}/tdlib/td.git \
|
||||||
|
&& git fetch --depth=1 origin a03a90470d6fca9a5a3db747ba3f3e4a465b5fe7 \
|
||||||
|
&& git reset --hard FETCH_HEAD \
|
||||||
|
&& rm -rf .git \
|
||||||
|
&& env -u CFLAGS -u CXXFLAGS cmake -B out/Release . \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
|
||||||
|
-DCMAKE_C_FLAGS_DEBUG="{{ CFLAGS_DEBUG }}" \
|
||||||
|
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
|
||||||
|
-DCMAKE_CXX_FLAGS_DEBUG="{{ CFLAGS_DEBUG }}" \
|
||||||
|
&& cmake --build out/Release --config Release --target tde2e -j$(nproc)
|
||||||
|
|
||||||
|
WORKDIR td
|
||||||
|
|
||||||
|
{%- if DEBUG %}
|
||||||
|
|
||||||
|
FROM tdlib AS tdlib_debug
|
||||||
|
RUN env -u CFLAGS -u CXXFLAGS cmake -B out/Debug . \
|
||||||
|
-DCMAKE_BUILD_TYPE=Debug \
|
||||||
|
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
|
||||||
|
-DCMAKE_C_FLAGS_DEBUG="{{ CFLAGS_DEBUG }}" \
|
||||||
|
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
|
||||||
|
-DCMAKE_CXX_FLAGS_DEBUG="{{ CFLAGS_DEBUG }}" \
|
||||||
|
&& cmake --build out/Debug --config Debug --target tde2e -j$(nproc)
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
FROM builder
|
FROM builder
|
||||||
COPY --link --from=zlib {{ LibrariesPath }}/zlib-cache /
|
COPY --link --from=zlib {{ LibrariesPath }}/zlib-cache /
|
||||||
COPY --link --from=xz {{ LibrariesPath }}/xz-cache /
|
COPY --link --from=xz {{ LibrariesPath }}/xz-cache /
|
||||||
|
@ -860,6 +892,11 @@ COPY --link --from=ada {{ LibrariesPath }}/ada-cache /
|
||||||
COPY --link --from=webrtc_debug {{ LibrariesPath }}/tg_owt/out/Debug tg_owt/out/Debug
|
COPY --link --from=webrtc_debug {{ LibrariesPath }}/tg_owt/out/Debug tg_owt/out/Debug
|
||||||
{%- endif %}
|
{%- endif %}
|
||||||
|
|
||||||
|
COPY --link --from=tdlib {{ LibrariesPath }}/td td
|
||||||
|
{%- if DEBUG %}
|
||||||
|
COPY --link --from=tdlib_debug {{ LibrariesPath }}/td/out/Debug td/out/Debug
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
WORKDIR ../tdesktop
|
WORKDIR ../tdesktop
|
||||||
ENV QT {{ QT }}
|
ENV QT {{ QT }}
|
||||||
ENV BOOST_INCLUDEDIR /usr/include/boost1.78
|
ENV BOOST_INCLUDEDIR /usr/include/boost1.78
|
||||||
|
|
|
@ -1925,6 +1925,76 @@ win:
|
||||||
# -Dprotobuf_WITH_ZLIB_DEFAULT=OFF
|
# -Dprotobuf_WITH_ZLIB_DEFAULT=OFF
|
||||||
# cmake --build . $MAKE_THREADS_CNT
|
# cmake --build . $MAKE_THREADS_CNT
|
||||||
|
|
||||||
|
stage('td', """
|
||||||
|
git clone https://github.com/tdlib/td.git
|
||||||
|
cd td
|
||||||
|
git checkout a03a90470d
|
||||||
|
win:
|
||||||
|
SET OPENSSL_DIR=%LIBS_DIR%\\openssl3
|
||||||
|
SET OPENSSL_LIBS_DIR=%OPENSSL_DIR%\\out
|
||||||
|
SET ZLIB_LIBS_DIR=%LIBS_DIR%\\zlib
|
||||||
|
mkdir out
|
||||||
|
cd out
|
||||||
|
mkdir Debug
|
||||||
|
cd Debug
|
||||||
|
cmake -A %WIN32X64% ^
|
||||||
|
-DOPENSSL_FOUND=1 ^
|
||||||
|
-DOPENSSL_INCLUDE_DIR=%OPENSSL_DIR%\\include ^
|
||||||
|
-DOPENSSL_CRYPTO_LIBRARY="%OPENSSL_LIBS_DIR%.dbg\\libcrypto.lib" ^
|
||||||
|
-DGPERF_EXECUTABLE=%ROOT_DIR%\\ThirdParty\\gperf\\bin\\gperf ^
|
||||||
|
-DZLIB_FOUND=1 ^
|
||||||
|
-DZLIB_INCLUDE_DIR=%ZLIB_LIBS_DIR% ^
|
||||||
|
-DZLIB_LIBRARIES="%ZLIB_LIBS_DIR%\\Debug\\zlibstaticd.lib" ^
|
||||||
|
-DCMAKE_CXX_FLAGS_DEBUG="/DZLIB_WINAPI /DNDEBUG /MTd /Zi /Od /Ob0" ^
|
||||||
|
-DCMAKE_C_FLAGS_DEBUG="/DNDEBUG /MTd /Zi /Od /Ob0" ^
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS="/SAFESEH:NO Ws2_32.lib Gdi32.lib Advapi32.lib Crypt32.lib User32.lib %OPENSSL_LIBS_DIR%.dbg\\libssl.lib" ^
|
||||||
|
-DCMAKE_SHARED_LINKER_FLAGS="/SAFESEH:NO Ws2_32.lib Gdi32.lib Advapi32.lib Crypt32.lib User32.lib %OPENSSL_LIBS_DIR%.dbg\\libssl.lib" ^
|
||||||
|
-DTD_ENABLE_MULTI_PROCESSOR_COMPILATION=ON ^
|
||||||
|
../..
|
||||||
|
cmake --build . --config Debug --target tde2e
|
||||||
|
release:
|
||||||
|
cd ..
|
||||||
|
mkdir Release
|
||||||
|
cd Release
|
||||||
|
cmake -A %WIN32X64% ^
|
||||||
|
-DOPENSSL_FOUND=1 ^
|
||||||
|
-DOPENSSL_INCLUDE_DIR=%OPENSSL_DIR%\\include ^
|
||||||
|
-DOPENSSL_CRYPTO_LIBRARY="%OPENSSL_LIBS_DIR%\\libcrypto.lib" ^
|
||||||
|
-DGPERF_EXECUTABLE=%ROOT_DIR%\\ThirdParty\\gperf\\bin\\gperf ^
|
||||||
|
-DZLIB_FOUND=1 ^
|
||||||
|
-DZLIB_INCLUDE_DIR=%ZLIB_LIBS_DIR% ^
|
||||||
|
-DZLIB_LIBRARIES="%ZLIB_LIBS_DIR%\\Release\\zlibstatic.lib" ^
|
||||||
|
-DCMAKE_CXX_FLAGS_RELEASE="/DZLIB_WINAPI /MT /Ob2" ^
|
||||||
|
-DCMAKE_C_FLAGS_RELEASE="/MT /Ob2" ^
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS="/SAFESEH:NO Ws2_32.lib Gdi32.lib Advapi32.lib Crypt32.lib User32.lib %OPENSSL_LIBS_DIR%\\libssl.lib" ^
|
||||||
|
-DCMAKE_SHARED_LINKER_FLAGS="/SAFESEH:NO Ws2_32.lib Gdi32.lib Advapi32.lib Crypt32.lib User32.lib %OPENSSL_LIBS_DIR%\\libssl.lib" ^
|
||||||
|
-DTD_ENABLE_MULTI_PROCESSOR_COMPILATION=ON ^
|
||||||
|
../..
|
||||||
|
cmake --build . --config Release --target tde2e
|
||||||
|
mac:
|
||||||
|
buildTd() {
|
||||||
|
BUILD_CONFIG=$1
|
||||||
|
mkdir -p out/$BUILD_CONFIG
|
||||||
|
cd out/$BUILD_CONFIG
|
||||||
|
cmake -G Ninja \
|
||||||
|
-DCMAKE_BUILD_TYPE=$BUILD_CONFIG \
|
||||||
|
-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" \
|
||||||
|
-DOPENSSL_FOUND=1 \
|
||||||
|
-DOPENSSL_INCLUDE_DIR=$LIBS_DIR/openssl3/include \
|
||||||
|
-DOPENSSL_SSL_LIBRARY=$LIBS_DIR/openssl3/libssl.a \
|
||||||
|
-DOPENSSL_CRYPTO_LIBRARY=$LIBS_DIR/openssl3/libcrypto.a \
|
||||||
|
-DZLIB_FOUND=1 \
|
||||||
|
-DZLIB_LIBRARIES=$USED_PREFIX/lib/libz.a \
|
||||||
|
../..
|
||||||
|
cmake --build . --config $BUILD_CONFIG --target tde2e $MAKE_THREADS_CNT
|
||||||
|
cd ../..
|
||||||
|
}
|
||||||
|
|
||||||
|
buildTd Debug
|
||||||
|
release:
|
||||||
|
buildTd Release
|
||||||
|
""")
|
||||||
|
|
||||||
if win:
|
if win:
|
||||||
currentCodePage = subprocess.run('chcp', capture_output=True, shell=True, text=True, env=modifiedEnv).stdout.strip().split()[-1]
|
currentCodePage = subprocess.run('chcp', capture_output=True, shell=True, text=True, env=modifiedEnv).stdout.strip().split()[-1]
|
||||||
subprocess.run('chcp 65001 > nul', shell=True, env=modifiedEnv)
|
subprocess.run('chcp 65001 > nul', shell=True, env=modifiedEnv)
|
||||||
|
|
Loading…
Add table
Reference in a new issue