diff --git a/package/ci/circleci.yml b/package/ci/circleci.yml index b861ef9d0..8409563df 100644 --- a/package/ci/circleci.yml +++ b/package/ci/circleci.yml @@ -31,6 +31,10 @@ executors: android-29: machine: image: android:202102-01 + arm64: + machine: + image: ubuntu-2004:202101-01 + resource_class: arm.medium commands: install-base-linux: @@ -47,6 +51,20 @@ commands: if [[ "$CMAKE_CXX_FLAGS" == *"--coverage"* ]]; then export LCOV_PACKAGES="lcov curl"; fi apt install -y git ninja-build $LCOV_PACKAGES << parameters.extra >> + install-base-linux-arm64: + parameters: + extra: + type: string + default: "" + steps: + - run: + name: Update apt and install base packages + # Compared to Docker images this needs sudo + command: | + sudo apt update + if [[ "$CMAKE_CXX_FLAGS" == *"--coverage"* ]]; then export LCOV_PACKAGES="lcov curl"; fi + sudo apt install -y ninja-build gcc cmake $LCOV_PACKAGES << parameters.extra >> + cap-ninja-jobs: parameters: count: @@ -262,6 +280,22 @@ jobs: script: unix-desktop.sh - lcov + linux-arm64: + executor: arm64 + environment: + CMAKE_CXX_FLAGS: --coverage + CONFIGURATION: Debug + PLATFORM_GL_API: GLX + steps: + # Not installing the old GCC 4.8 and CMake 3.4 to speed up. These are + # tested more than enough on other jobs. + - install-base-linux-arm64: + extra: libgl1-mesa-dev libsdl2-dev libglfw3-dev libopenal-dev libvulkan-dev + - setup-null-openal-driver + - build: + script: unix-desktop.sh + - lcov + # vulkan-loader is broken on 16.04 and swiftshader vulkan needs GCC 7 to # compile, so using 18.04 for Vulkan tests instead. Compile tests with GCC # 4.8 are still done on 16.04 @@ -532,6 +566,7 @@ workflows: build: jobs: - linux-gl + - linux-arm64 - linux-vulkan - linux-gles2 - linux-gles3