-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefile
36 lines (25 loc) · 1.53 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
all:
$(MAKE) linux
$(MAKE) web
$(MAKE) win
# Linux
linux: godot-cpp/bin/libgodot-cpp.linux.release.64.a
@mkdir -p godotprj/bin/lib
g++ -fPIC -O3 -std=c++14 -o godotprj/bin/lib/libtest.so src/*.cpp -Iinclude -Igodot-cpp/include -Igodot-cpp/include/core -Igodot-cpp/include/gen -Igodot-cpp/godot-headers -shared -Lgodot-cpp/bin -lgodot-cpp.linux.release.64
godot-cpp/bin/libgodot-cpp.linux.release.64.a:
@cd godot-cpp && scons platform=linux target=release generate_bindings=yes -j 12
# Web
web: godot-cpp/bin/libgodot-cpp.javascript.release.wasm.bc
@mkdir -p godotprj/bin/lib
em++ -o godotprj/bin/lib/libtest.wasm -O3 -s SIDE_MODULE=1 src/*.cpp godot-cpp/bin/libgodot-cpp.javascript.release.wasm.bc -Iinclude -Igodot-cpp/include -Igodot-cpp/include/core -Igodot-cpp/include/gen -Igodot-cpp/godot-headers
godot-cpp/bin/libgodot-cpp.javascript.release.wasm.bc:
@cd godot-cpp && scons platform=javascript target=release generate_bindings=yes -j 12 use_llvm=yes
#Windows
win: godot-cpp/bin/libgodot-cpp.windows.release.64.a
@mkdir -p godotprj/bin/lib
x86_64-w64-mingw32-g++ -shared -static -fPIC -O3 -std=c++14 -o godotprj/bin/lib/libtest.dll src/*.cpp -Iinclude -Igodot-cpp/include -Igodot-cpp/include/core -Igodot-cpp/include/gen -Igodot-cpp/godot-headers -Lgodot-cpp/bin -lgodot-cpp.windows.release.64
godot-cpp/bin/libgodot-cpp.windows.release.64.a:
@cd godot-cpp && scons platform=windows target=release generate_bindings=yes -j 12 use_mingw=yes
clean:
@rm -rf export_{linux,web,win}/* godotprj/bin/lib/*
@find -name "*.import" | xargs rm -r