-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
57 lines (45 loc) · 1.3 KB
/
Makefile
File metadata and controls
57 lines (45 loc) · 1.3 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
45
46
47
48
49
50
51
52
53
54
55
56
57
.PHONY: signaling game channel host all clean down
ifeq ($(OS), Windows_NT)
DETECTED_OS := Windows
else
DETECTED_OS := $(shell uname -s)
endif
LIBDATACHANNEL_PREFIX ?= C:/libdatachannel
OPENSSL_PREFIX ?= C:/Program Files/OpenSSL-Win64
WIN_RUNTIME_PATH = %CD%\channel\build\Release;$(subst /,\,$(LIBDATACHANNEL_PREFIX))\bin;$(subst /,\,$(OPENSSL_PREFIX))\bin
all: signaling game
signaling:
docker compose up --build -d
host:
ifeq ($(DETECTED_OS), Windows)
set "PATH=$(WIN_RUNTIME_PATH);%PATH%" && cd game && .\gradlew run --args='--host'
else
cd game && ./gradlew run --args='--host'
endif
game:
ifeq ($(DETECTED_OS), Windows)
set "PATH=$(WIN_RUNTIME_PATH);%PATH%" && cd game && .\gradlew run
else
cd game && ./gradlew run
endif
channel:
ifeq ($(DETECTED_OS), Windows)
cd channel && cmake -B build -DCMAKE_PREFIX_PATH="$(LIBDATACHANNEL_PREFIX);$(OPENSSL_PREFIX)" && cmake --build build --config Release
else
cd channel && cmake -B build && cmake --build build
endif
test:
ifeq ($(DETECTED_OS), Windows)
set "PATH=$(WIN_RUNTIME_PATH);%PATH%" && cd game && .\gradlew build && .\gradlew test
else
cd game && ./gradlew build && ./gradlew test
endif
down:
docker compose down
clean:
docker compose down
ifeq ($(DETECTED_OS), Windows)
cmd /c "cd game && gradlew.bat clean"
else
cd game && ./gradlew clean
endif