Files
OpenVR-AdvancedSettings-frame/.circleci/config.yml
T
username223 ba5e19d34d Revert "Add dedicated image for CircleCI builds" (#594)
* Revert "Add dedicated image for CircleCI builds"

This reverts commit 44a5d3eed0.

With how little we use the Docker hub features it does not make sense to
have external dependencies on it.

* Add `qt512websockets` to CI build

This is necessary for Ykeara's feature branch.
2022-04-01 19:22:07 -05:00

106 lines
4.6 KiB
YAML

version: 2.0
jobs:
build:
branches:
ignore:
- /docs-*/
- /do-not-run-ci-*/
- /only-appveyor-ci-*/
- /only-travis-ci-*/
environment:
QMAKE_SPEC: linux-g++
QT_SELECT: opt-qt512
MAKE_JOBS: 2
docker:
- image: circleci/buildpack-deps:xenial
steps:
- checkout
- run: sudo apt-get update && sudo apt-get upgrade -y
- run:
name: Get apt-key
# Required for LLVM
command: |
sudo apt-get install software-properties-common apt-transport-https -y
- run:
name: Get LLVM repos
command: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main'
sudo add-apt-repository 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main'
sudo apt-get update -qq
- run:
name: Install LLVM-8 binaries
# clang is required due to a check by Qmake.
# clang-tidy-8 has new errors compared to clang-tidy-7, so we haven't upgraded.
command: |
sudo apt-get install clang-format-8 -y
sudo apt-get install clang-tidy-7 -y
sudo apt-get install clang-8 -y
sudo apt-get install clang -y
- 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++
command: |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-7 -y
- run:
name: Add required QT repos
command: |
sudo add-apt-repository ppa:beineri/opt-qt-5.12.2-xenial -y
sudo apt-get update -qq
- run: sudo apt-get install build-essential libgl1-mesa-dev -y
- run:
name: Install QT packages
command: |
sudo apt-get install qt512-meta-minimal qt512multimedia qt512declarative qt512quickcontrols2 qt512quickcontrols qt512tools qt512imageformats qt512svg qt512base qtchooser qt512websockets -y
- run:
name: Install X11 packages
command: sudo apt-get install libx11-dev libxt-dev libxtst-dev -y
- run:
name: Install pulse packages
command: sudo apt-get install libpulse-dev -y
- run:
name: Install bear/clang-tidy
command: sudo apt-get install bear clang-tidy -y
- run:
name: Install SDL libs
command: sudo apt-get install libsdl2-2.0-0 -y
- run:
name: Set up qtchooser
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: Update version number
command: |
python ./build_scripts/append_to_version_file.py $(git rev-parse HEAD | cut -c -8)
cat ./build_scripts/compile_version_string.txt
- run:
name: Run build script
command: ./build_scripts/linux/build_linux.sh
- run:
name: Get qtdeploylinux
command: |
wget -c -nv https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage
chmod a+x ./linuxdeployqt-continuous-x86_64.AppImage
- run:
name: Create AppImage
command: ./build_scripts/linux/appimage.sh
- run:
name: Copy Artifacts
command: |
mkdir artifacts
cp -v ./OpenVR_Advanced_Settings-*.AppImage ./artifacts/
- store_artifacts:
path: ./artifacts/