From 6994201d50711da9b27d2dcd518f74683c06003f Mon Sep 17 00:00:00 2001 From: John Preston Date: Wed, 29 Nov 2017 20:15:33 +0400 Subject: [PATCH] Fix travis and appveyor builds. --- .appveyor/install.bat | 2 +- .travis.yml | 8 ++--- .travis/build.sh | 53 ++++++++++++++++++++++++++++++++ Telegram/gyp/telegram_linux.gypi | 2 ++ 4 files changed, 60 insertions(+), 5 deletions(-) diff --git a/.appveyor/install.bat b/.appveyor/install.bat index 194eed0d8e..c04b4e2a9d 100644 --- a/.appveyor/install.bat +++ b/.appveyor/install.bat @@ -27,7 +27,7 @@ GOTO:EOF call:logInfo "Clone dependencies repository" git clone -q --depth 1 --branch=master https://github.com/telegramdesktop/dependencies_windows.git %LIB_DIR% cd %LIB_DIR% - + git clone https://github.com/Microsoft/Range-V3-VS2015 range-v3 if exist prepare.bat ( call prepare.bat ) else ( diff --git a/.travis.yml b/.travis.yml index 13ba3348c6..965c188db9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -33,8 +33,8 @@ addons: - dpatch - equivs - fakeroot - - g++-6 - - gcc-6 + - g++-7 + - gcc-7 - git - gnome-common - gobject-introspection @@ -58,8 +58,8 @@ addons: - yasm before_install: - - export CXX="g++-6" CC="gcc-6" - - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6 + - export CXX="g++-7" CC="gcc-7" + - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7 - sudo update-alternatives --config gcc - g++ --version diff --git a/.travis/build.sh b/.travis/build.sh index 21e4a4f637..5e48f5e4b8 100755 --- a/.travis/build.sh +++ b/.travis/build.sh @@ -27,6 +27,9 @@ GYP_PATH="$BUILD/gyp" GYP_CACHE_VERSION="3" GYP_PATCH="$UPSTREAM/Telegram/Patches/gyp.diff" +RANGE_PATH="$BUILD/range-v3" +RANGE_CACHE_VERSION="3" + VA_PATH="$BUILD/libva" VA_CACHE_VERSION="3" @@ -85,6 +88,9 @@ build() { # Patched GYP (supports cmake precompiled headers) getGYP + # Range v3 + getRange + # Guideline Support Library getGSL @@ -178,6 +184,52 @@ buildXkbCommon() { sudo ldconfig } +getRange() { + travisStartFold "Getting range-v3" + + local RANGE_CACHE="$CACHE/range-v3" + local RANGE_CACHE_FILE="$RANGE_CACHE/.cache.txt" + local RANGE_CACHE_KEY="${RANGE_CACHE_VERSION}" + local RANGE_CACHE_OUTDATED="1" + + if [ ! -d "$RANGE_CACHE" ]; then + mkdir -p "$RANGE_CACHE" + fi + + ln -sf "$RANGE_CACHE" "$RANGE_PATH" + + if [ -f "$RANGE_CACHE_FILE" ]; then + local RANGE_CACHE_KEY_FOUND=`tail -n 1 $RANGE_CACHE_FILE` + if [ "$RANGE_CACHE_KEY" == "$RANGE_CACHE_KEY_FOUND" ]; then + RANGE_CACHE_OUTDATED="0" + else + info_msg "Cache key '$RANGE_CACHE_KEY_FOUND' does not match '$RANGE_CACHE_KEY', getting range-v3" + fi + fi + if [ "$RANGE_CACHE_OUTDATED" == "1" ]; then + buildRange + sudo echo $RANGE_CACHE_KEY > "$RANGE_CACHE_FILE" + else + info_msg "Using cached range-v3" + fi +} + +buildRange() { + info_msg "Downloading range-v3" + + if [ -d "$EXTERNAL/range-v3" ]; then + rm -rf "$EXTERNAL/range-v3" + fi + cd $RANGE_PATH + rm -rf * + + cd "$EXTERNAL" + git clone --depth=1 https://github.com/ericniebler/range-v3 + + cd "$EXTERNAL/range-v3" + cp -r * "$RANGE_PATH/" +} + getVa() { travisStartFold "Getting libva" @@ -628,6 +680,7 @@ buildTelegram() { -Dlinux_path_vdpau=$VDPAU_PATH \ -Dlinux_path_ffmpeg=$FFMPEG_PATH \ -Dlinux_path_openal=$OPENAL_PATH \ + -Dlinux_path_range=$RANGE_PATH \ -Dlinux_path_qt=$QT_PATH \ -Dlinux_path_breakpad=$BREAKPAD_PATH \ -Dlinux_path_libexif_lib=/usr/local/lib \ diff --git a/Telegram/gyp/telegram_linux.gypi b/Telegram/gyp/telegram_linux.gypi index a7f6c45551..f6918c2240 100644 --- a/Telegram/gyp/telegram_linux.gypi +++ b/Telegram/gyp/telegram_linux.gypi @@ -34,6 +34,7 @@ 'linux_path_vdpau%': '/usr/local', 'linux_path_breakpad%': '/usr/local', 'linux_path_opus_include%': '<(libs_loc)/opus/include', + 'linux_path_range%': '/usr/local', }, 'include_dirs': [ '/usr/local/include', @@ -41,6 +42,7 @@ '<(linux_path_openal)/include', '<(linux_path_breakpad)/include/breakpad', '<(linux_path_opus_include)', + '<(linux_path_range)/include', ], 'library_dirs': [ '/usr/local/lib',