version: 2 jobs: build: docker: - image: "ubuntu:xenial" steps: - checkout - run: name: Set up env vars command: echo 'export QMAKE_SPEC=linux-g++' >> $BASH_ENV; echo 'export QT_SELECT=opt-qt512' >> $BASH_ENV - run: name: Update and upgrade command: ' apt-get update && apt-get upgrade -y' - run: name: Get wget command: ' apt-get install wget -y; apt-get install software-properties-common -y' - run: name: Prereqs for clang-format-8 command: wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -; add-apt-repository 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main' - run: name: Installing clang-format-8 command: ' apt update -qq; apt install clang-format-8 -y; clang-format-8 --version;' - run: name: Run clang-format command: 'python ./build_scripts/run-clang-format.py ./src -r --color always --clang-format-executable clang-format-8' - run: name: Install g++-7 command: apt-get install -y software-properties-common; add-apt-repository ppa:ubuntu-toolchain-r/test; apt update; apt install g++-7 -y; - run: name: Install required packages command: ' add-apt-repository ppa:kubuntu-ppa/backports -y; add-apt-repository ppa:beineri/opt-qt-5.12.2-xenial -y; apt-get update -qq; apt-get install build-essential libgl1-mesa-dev -y' - run: name: Install QT packages command: ' apt-get install qt512-meta-minimal qt512multimedia qt512declarative qt512quickcontrols2 qt512tools qt512base qtchooser -y' - run: name: Install X11 packages command: ' apt-get install libx11-dev libxt-dev libxtst-dev -y' - run: name: Install bear/clang-tidy command: ' apt-get install bear clang-tidy -y' - run: name: Set up QT command: 'qtchooser -install opt-qt512 /opt/qt512/bin/qmake' - run: name: Give build scripts +x command: 'chmod +x ./build_scripts/linux/build_linux.sh; chmod +x ./build_scripts/linux/format.sh; chmod +x ./build_scripts/linux/run-clang-tidy.sh ;chmod +x ./build_scripts/linux/verify_formatting.sh' - run: name: Run build script command: './build_scripts/linux/build_linux.sh'