-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathpremake5_module.lua
65 lines (56 loc) · 1.78 KB
/
premake5_module.lua
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
kind "SharedLib"
language "C++"
warnings "Default"
cppdialect "C++17"
targetdir ("lib/%{prj.name}")
objdir ("lib/%{prj.name}-int")
vectorextensions "SSE4.1"
location "modules/%{prj.name}"
flags {
"FatalWarnings",
"MultiProcessorCompile"
}
files { "modules/%{prj.name}/**.cpp", "modules/%{prj.name}/**.h" }
includedirs {
"core/apparatus/include/",
"deps/glad/include",
"deps/glfw/include",
"deps/mz",
"deps/imgui",
"deps/spdlog/include",
"deps/stb_image",
"deps/entt/single_include",
"deps/entt/src",
"deps/box2d/include",
"deps",
"%{wks.location}/",
"%{prj.location}",
"%{wks.location}/modules"
}
links {
"apparatus",
"imgui",
"box2d"
}
filter "system:windows"
prebuildcommands {
"start /wait %{wks.location}lib\\parser\\parser.exe \"%{wks.location}\\modules\\%{prj.name}\\_generated.cpp\" \"%{prj.location}\"",
"echo AP parser finished with exit code %ERRORLEVEL%"
}
postbuildcommands {
"copy %{wks.location}lib\\%{prj.name}\\%{prj.name}.dll %{wks.location}lib\\launcher\\%{prj.name}.dll",
"copy %{wks.location}lib\\%{prj.name}\\%{prj.name}.dll %{wks.location}lib\\runtime\\%{prj.name}.dll"
}
defines { "_OS_WINDOWS" }
filter "system:linux"
prebuildcommands {
"%{wks.location}/lib/parser/parser \"%{wks.location}/modules/%{prj.name}/_generated.cpp\" \"%{prj.location}\""
}
postbuildcommands {
"mkdir -p %{wks.location}/lib/launcher",
"mkdir -p %{wks.location}/lib/runtime",
"cp -f %{wks.location}/lib/%{prj.name}/lib%{prj.name}.so %{wks.location}/lib/launcher/%{prj.name}.so",
"cp -f %{wks.location}/lib/%{prj.name}/lib%{prj.name}.so %{wks.location}/lib/runtime/%{prj.name}.so"
}
pic "On"
defines { "_OS_LINUX" }