-
Notifications
You must be signed in to change notification settings - Fork 3
/
Makefile
85 lines (72 loc) · 1.66 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
include src/macros.mk
REGISTRY := local
.DEFAULT_GOAL :=
.PHONY: default
default: \
out/qos_client/index.json \
out/qos_host/index.json \
out/qos_enclave/index.json
.PHONY: test
test: out/.common-loaded
$(call run,make test)
.PHONY: lint
lint: out/.common-loaded
$(call run,make lint)
.PHONY: format
format: out/.common-loaded
$(call run,make fmt)
.PHONY: docs
docs: out/.common-loaded
$(call run,cargo doc)
.PHONY: build-linux-only
build-linux-only: out/.common-loaded
$(call run,make build-linux-only)
.PHONY: shell
shell: out/.common-loaded
docker run \
--interactive \
--tty \
--volume .:/home/qos \
--workdir /home/qos \
--user $(shell id -u):$(shell id -g) \
qos-local/common:latest \
/bin/bash
out/nitro.pcrs: out/qos_enclave.tar
@$(call run,/src/scripts/extract_oci_file.sh qos_enclave.tar nitro.pcrs)
out/qos_enclave/index.json: \
out/common/index.json \
src/images/qos_enclave/Containerfile \
$(shell git ls-files \
src/init \
src/qos_enclave \
src/qos_core \
src/qos_aws \
src/qos_system \
)
$(call build,qos_enclave)
out/qos_host/index.json: \
out/common/index.json \
src/images/qos_host/Containerfile \
$(shell git ls-files \
src/qos_host \
src/qos_core \
)
$(call build,qos_host)
out/qos_client/index.json: \
out/common/index.json \
src/images/qos_client/Containerfile \
$(shell git ls-files \
src/qos_client \
src/qos_p256 \
src/qos_nsm \
src/qos_hex \
src/qos_crypto \
src/qos_core \
)
$(call build,qos_client)
out/common/index.json: \
src/images/common/Containerfile
$(call build,common)
out/.common-loaded: out/common/index.json
cd ./out/common && tar -cf - . | docker load
touch ./out/.common-loaded