1
0
Fork 0
tdlight-java-natives-linux-.../jenkins/scripts/compile.sh

39 lines
1.7 KiB
Bash
Executable File

#!/bin/bash -e
# ====== Setup environment variables
source ./jenkins/scripts/setup_variables.sh
# ====== Setup workspace
bash ./jenkins/scripts/setup_workspace.sh
# ====== Build Td
# Prepare build
cd $TD_BUILD_DIR
nice -n 5 chrt -b 0 cmake -DCMAKE_BUILD_TYPE=$BUILDPROFILE -DTD_ENABLE_JNI=ON -DCMAKE_INSTALL_PREFIX:PATH=${TD_BIN_DIR} -DOPENSSL_USE_STATIC_LIBS=True -DTD_SKIP_BENCHMARK=ON -DTD_SKIP_TEST=OFF -DTD_SKIP_TG_CLI=ON ${TD_SRC_DIR}
# Split sources
nice -n 5 chrt -b 0 cmake --build $TD_BUILD_DIR --target prepare_cross_compiling -- -j${TRAVIS_CPU_CORES}
cd $TD_SRC_DIR
nice -n 5 chrt -b 0 php SplitSource.php
# Build
cd $TD_BUILD_DIR
nice -n 5 chrt -b 0 cmake --build $TD_BUILD_DIR --target install --config $BUILDPROFILE -- -j${TRAVIS_CPU_CORES}
# Undo split-sources
cd $TD_SRC_DIR
nice -n 5 chrt -b 0 php SplitSource.php --undo
# ====== Build TdNatives
cd $TDNATIVES_CPP_BUILD_DIR
nice -n 5 chrt -b 0 cmake -DCMAKE_BUILD_TYPE=$BUILDPROFILE -DTD_SRC_DIR=${TD_SRC_DIR} -DCMAKE_INSTALL_PREFIX:PATH=${TD_BIN_DIR} -DTD_GENERATED_BINARIES_DIR=${TD_BIN_DIR}/bin -DTDNATIVES_BIN_DIR=${TDNATIVES_BIN_DIR} -DTDNATIVES_DOCS_BIN_DIR=${TDNATIVES_DOCS_BIN_DIR} -DTd_DIR=${TD_BIN_DIR}/lib/cmake/Td -DJAVA_SRC_DIR=${JAVA_SRC_DIR} -DTDNATIVES_CPP_SRC_DIR:PATH=$TDNATIVES_CPP_SRC_DIR -DOPENSSL_USE_STATIC_LIBS=True $TDNATIVES_CPP_SRC_DIR
nice -n 5 chrt -b 0 cmake --build $TDNATIVES_CPP_BUILD_DIR --target install --config $BUILDPROFILE -- -j${TRAVIS_CPU_CORES}
# ====== Print results stats
echo "CCACHE statistics:"
ccache -s
# ====== Copy output
cd $TDNATIVES_CPP_BUILD_DIR
mkdir -p $TDLIB_RESOURCES_OUTPUT_DIR
mv $TDNATIVES_BIN_DIR/$SRC_TDJNI_LIBNAME $TDLIB_RESOURCES_OUTPUT_DIR/$DEST_TDJNI_LIBNAME