#!/bin/bash # script for use with travis and on linux only # # Copyright (c) 2015-2016 MegaGlest Team under GNU GPL v3.0+ export LANG=C SCRIPTDIR="$(dirname "$(readlink -f "$0")")" # ---------------------------------------------------------------------------- # Load shared functions . $SCRIPTDIR/mk/linux/mg_shared.sh detect_system # ---------------------------------------------------------------------------- Compiler_name="$1"; Compiler_version="$2" Compiler_version_grep="$(echo "$Compiler_version" | sed 's/\./\\./g')" set -x if [ "$Compiler_version" != "" ] && [ "$Compiler_version" != "default" ]; then # UPDATE REPOS sudo apt-get update -qq sudo apt-get install -y -qq set +x if [ "$Compiler_name" = "gcc" ]; then VersionAvByDefault="$(apt-cache search ^g[c+][c+]-[0-9] | grep -v '[0-9]-[a-zA-Z]' | grep "^gcc-$Compiler_version_grep")" elif [ "$Compiler_name" = "clang" ]; then VersionAvByDefault="$(apt-cache search ^clang-[0-9] | grep -v '[0-9]-[a-zA-Z]' | grep "^clang-$Compiler_version_grep")" fi set -x if [ "$VersionAvByDefault" = "" ]; then if [ "$distribution" = "Ubuntu" ]; then #if [ "$Compiler_name" = "gcc" ] || ( [ "$Compiler_name" = "clang" ] && [ "$codename" = "precise" ] ); then if [ "$Compiler_name" = "gcc" ] || [ "$Compiler_name" = "clang" ]; then # https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test sudo add-apt-repository --yes "deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu ${codename} main" #sudo add-apt-repository --yes "deb-src http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu ${codename} main" fi fi if [ "$distribution" = "Ubuntu" ] || [ "$distribution" = "Debian" ]; then if [ "$Compiler_name" = "clang" ]; then # http://apt.llvm.org/ sudo add-apt-repository --yes "deb http://apt.llvm.org/${codename}/ llvm-toolchain-${codename} main" #sudo add-apt-repository --yes "deb-src http://apt.llvm.org/${codename}/ llvm-toolchain-${codename} main" sudo add-apt-repository --yes "deb http://apt.llvm.org/${codename}/ llvm-toolchain-${codename}-${Compiler_version} main" #sudo add-apt-repository --yes "deb-src http://apt.llvm.org/${codename}/ llvm-toolchain-${codename}-${Compiler_version} main" wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - fi fi fi fi if [ "$VersionAvByDefault" = "" ]; then # UPDATE REPOS sudo apt-get update -qq #sudo apt-get upgrade -qq # UPGRADE SYSTEM TO LATEST PATCH LEVEL sudo apt-get install -y -qq fi set -e if [ "$Compiler_version" != "" ] && [ "$Compiler_version" != "default" ]; then if [ "$Compiler_name" = "gcc" ]; then set +ex Gcc_AvSepGpp="$(apt-cache search ^g[c+][c+]-[0-9] | grep -v '[0-9]-[a-zA-Z]' | grep "^g++-$Compiler_version_grep")" set -ex if [ "$Gcc_AvSepGpp" = "" ]; then sudo apt-get --allow-unauthenticated install -qq --force-yes gcc-${Compiler_version} else sudo apt-get --allow-unauthenticated install -qq --force-yes gcc-${Compiler_version} g++-${Compiler_version} fi elif [ "$Compiler_name" = "clang" ]; then sudo apt-get --allow-unauthenticated install -qq --force-yes clang-${Compiler_version} fi fi # what available versions we can use set +x apt-cache search ^g[c+][c+]-[0-9] | grep -v '[0-9]-[a-zA-Z]' apt-cache search ^clang-[0-9] | grep -v '[0-9]-[a-zA-Z]' set -x # INSTALL OUR DEPENDENCIES sudo $SCRIPTDIR/mk/linux/setupBuildDeps.sh --quiet if [ "$distribution" = "Ubuntu" ]; then case $release in 12.04*) SDL2_version="2.0.5" wget https://www.libsdl.org/release/SDL2-${SDL2_version}.tar.gz tar xf SDL2-${SDL2_version}.tar.gz ( cd SDL2-${SDL2_version} ./configure --enable-static --disable-shared make sudo make install ) ;; *) ;; esac fi