The open source OpenXR runtime
1# SPDX-License-Identifier: CC0-1.0
2# SPDX-FileCopyrightText: 2022-2023 Collabora, Ltd. and the Monado contributors
3#
4# To generate all the templated files, run this from the root of the repo:
5# make -f .gitlab-ci/ci-scripts.mk
6
7# These also all have their template named the same with a .jinja suffix in the template subdir.
8FILES_IN_SUBDIR := \
9 .gitlab-ci/distributions \
10 .gitlab-ci/reprepro.sh \
11 .gitlab-ci/install-android-sdk.sh \
12 .gitlab-ci/install-ndk.sh \
13
14CONFIG_FILE := .gitlab-ci/config.yml
15OUTPUTS := .gitlab-ci.yml \
16 $(FILES_IN_SUBDIR)
17
18all: $(OUTPUTS)
19 chmod +x .gitlab-ci/*.sh
20.PHONY: all
21
22clean:
23 rm -f $(OUTPUTS)
24.PHONY: clean
25
26CI_FAIRY := ci-fairy generate-template --config=$(CONFIG_FILE)
27
28# Because we have includes, and it goes to a different directory, this is special cased
29.gitlab-ci.yml: .gitlab-ci/templates/.gitlab-ci.yml.jinja $(CONFIG_FILE)
30 $(CI_FAIRY) $< > $@
31# Extra deps
32.gitlab-ci.yml: .gitlab-ci/templates/include.win_containers.yml
33.gitlab-ci.yml: .gitlab-ci/templates/include.ci-containers-variables.yml.jinja
34.gitlab-ci.yml: .gitlab-ci/templates/include.ci-containers.yml.jinja
35.gitlab-ci.yml: .gitlab-ci/templates/include.functions.jinja
36
37# Everything else is structured alike
38$(FILES_IN_SUBDIR): .gitlab-ci/%: .gitlab-ci/templates/%.jinja $(CONFIG_FILE)
39 $(CI_FAIRY) $< > $@