picom/.circleci/config.yml

118 lines
2.4 KiB
YAML

executors:
e:
docker:
- image: yshui/comptonci
working_directory: "/tmp/workspace"
version: 2.1
commands:
build:
parameters:
build-config:
type: string
default:
cc:
type: string
default: cc
steps:
- restore_cache:
keys:
- source-v1-{{ .Branch }}-{{ .Revision }}
- source-v1-{{ .Branch }}-
- source-v1-
- checkout
- save_cache:
key: source-v1-{{ .Branch }}-{{ .Revision }}
paths:
- ".git"
- run:
name: config
command: CC=<< parameters.cc >> meson << parameters.build-config >> -Dunittest=true --werror . build
- run:
name: build
command: ninja -vC build
test-xvfb:
steps:
- run:
name: xxx
command: xvfb-run -s "-screen 0 640x480x24" glxinfo
jobs:
basic:
executor: e
steps:
- build:
build-config: -Dbuild_docs=true -Db_coverage=true
- persist_to_workspace:
root: .
paths:
- .
test:
executor: e
steps:
- attach_workspace:
at: /tmp/workspace
- run:
name: test
command: ninja -vC /tmp/workspace/build test
- run:
name: upload coverage
command: bash <(curl -s https://codecov.io/bash)
minimal:
executor: e
steps:
- build:
build-config: -Dopengl=false -Ddbus=false -Dregex=false -Dconfig_file=false
nogl:
executor: e
steps:
- build:
build-config: -Dopengl=false
noregex:
executor: e
steps:
- build:
build-config: -Dregex=false
clang_basic:
executor: e
steps:
- build:
cc: clang-6.0
build-config:
clang_minimal:
executor: e
steps:
- build:
cc: clang-6.0
build-config: -Dopengl=false -Ddbus=false -Dregex=false -Dconfig_file=false
clang_nogl:
executor: e
steps:
- build:
cc: clang-6.0
build-config: -Dopengl=false
clang_noregex:
executor: e
steps:
- build:
cc: clang-6.0
build-config: -Dregex=false
workflows:
all_builds:
jobs:
- basic
- clang_basic
- minimal
- clang_minimal
- nogl
- clang_nogl
- test:
requires:
- basic
# - test-xvfb
# vim: set sw=2 ts=8 et: