-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
44 lines (30 loc) · 1.47 KB
/
Makefile
File metadata and controls
44 lines (30 loc) · 1.47 KB
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
.PHONY: simulator
ALL_PUML_FILES := $(shell find generic_application/graphs -name "*.puml")
ALL_SVG_FILES := $(patsubst %.puml,%.svg,$(ALL_PUML_FILES))
all: web
clean:
rm -f $(ALL_SVG_FILES)
rm -f simulator/react/app/welcome/configuration.json
make -C ../language clean
parser:
make -C ../language parser
../.tools/plantuml.jar:
mkdir -p ../.tools
wget https://github.com/plantuml/plantuml/releases/download/v1.2026.1/plantuml-mit-1.2026.1.jar -O ../.tools/plantuml.jar
%.svg: %.puml ../.tools/plantuml.jar
cat $*.puml | java -Djava.awt.headless=true -jar ../.tools/plantuml.jar -pipe --format svg > $@
puml: $(ALL_SVG_FILES)
simulator: parser
cd ../codegen/InterlockingCodegen && dotnet run -- ../../locking_table_interlocking
wasm: simulator
cd simulator && wasm-pack build --target bundler
simulator/react/app/welcome/configuration.json: specific_application/configuration.json
cp specific_application/configuration.json simulator/react/app/welcome/configuration.json
simulator/react/node_modules: simulator/react/package.json simulator/react/package-lock.json
cd simulator/react && npm ci
web: wasm simulator/react/app/welcome/configuration.json simulator/react/node_modules
cd simulator/react && npm run build && npm run start
build: wasm simulator/react/app/welcome/configuration.json simulator/react/node_modules
cd simulator/react && npm run build
dev: wasm simulator/react/app/welcome/configuration.json simulator/react/node_modules
cd simulator/react && npm run dev