-
Notifications
You must be signed in to change notification settings - Fork 1
/
premake5.lua
193 lines (167 loc) · 4.45 KB
/
premake5.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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
workspace "Do-Not-Die"
architecture "x86_64"
toolset "v143"
configurations
{
"Debug",
"Release",
"Dist"
}
outputdir = "%{cfg.buildcfg}-%{cfg.system}-%{cfg.architecture}"
project "Do-Not-Die"
location "Do-Not-Die"
kind "WindowedApp"
language "C++"
targetdir("../output/bin/" .. outputdir .. "/%{prj.name}")
objdir("../output/bin-int/" .. outputdir .. "/%{prj.name}")
files
{
"premake5.lua",
"%{prj.name}/src/**.h",
"%{prj.name}/src/**.cpp",
"%{prj.name}/HLSL/**.hlsl"
}
includedirs
{
"../Game-Engine/Engine/src/Actors",
"../Game-Engine/Engine/src/Animation",
"../Game-Engine/Engine/src/Components",
"../Game-Engine/Engine/src/Core",
"../Game-Engine/Engine/src/DataTypes",
"../Game-Engine/Engine/src/Headers",
"../Game-Engine/Engine/src/Physics",
"../Game-Engine/Engine/src/ResourceTypes",
"../Game-Engine/Engine/src/Systems",
"../Game-Engine/Engine/src/Tools",
"../Game-Engine/Engine/src/UI",
"../Game-Engine/Engine/src/World",
"../Game-Engine/Engine/src/Event",
"../Game-Engine/Engine/src/Scene",
"../Game-Engine/Engine/src/Sound",
"../Game-Engine/Engine/src/Input",
"../Game-Engine/Engine/src/Managers",
"../Game-Engine/Engine/src",
"../Game-Engine/Engine/vendor/spdlog/include",
"Do-Not-Die/src/Actors",
"Do-Not-Die/src/Actors/AI",
"Do-Not-Die/src/Actors/Animation",
"Do-Not-Die/src/Actors/Enemies",
"Do-Not-Die/src/Systems",
"Do-Not-Die/src/Events",
"Do-Not-Die/src/FX",
"Do-Not-Die/src/GUI",
"Do-Not-Die/src/Scenes",
"Do-Not-Die/src/UI",
"Do-Not-Die/src/Item",
"Do-Not-Die/src/UI/EndingScene",
"Do-Not-Die/src/UI/InGameScene",
"Do-Not-Die/src/UI/StartScene",
"Do-Not-Die/src/UI/PopScene",
"../SDK/DirectXTK/include",
"../SDK/FBXSDK/include",
"../SDK/FMOD/include",
"../SDK/IMGUI/include",
"../SDK/RP3D/include"
}
libdirs
{
"../output/bin/Debug-windows-x86_64/Engine/",
"../SDK/DirectXTK/lib",
"../SDK/IMGUI/lib",
"../SDK/RP3D/lib"
}
links
{
"Engine",
"fmod_vc",
"fmodL_vc",
}
filter "files:**VS.hlsl"
shadertype "Vertex"
shaderentry "VS"
shadermodel "5.0"
filter "files:**PS.hlsl"
shadertype "Pixel"
shaderentry "PS"
shadermodel "5.0"
filter "files:**GS.hlsl"
shadertype "Geometry"
shaderentry "GS"
shadermodel "5.0"
filter "files:**CS.hlsl"
shadertype "Compute"
shaderentry "CS"
shadermodel "5.0"
filter "system:windows"
cppdialect "C++20"
staticruntime "Off"
systemversion "latest"
defines
{
"PLATFORM_WINDOWS"
}
filter "configurations:Debug"
defines "_DEBUG"
symbols "On"
runtime "Debug"
libdirs
{
"../SDK/FBXSDK/lib/debug",
"../SDK/FMOD/lib/debug",
"../output/bin/Debug-windows-x86_64/Engine/",
}
links
{
"Engine",
"libfbxsdk-md",
"libxml2-md",
"zlib-md",
"ImGui_Win32_Dx11_D"
}
prebuildcommands
{
"copy \"..\\..\\output\\bin\\Debug-windows-x86_64\\Engine\\*.dll\" \"..\\..\\output\\bin\\Debug-windows-x86_64\\Do-Not-Die\\*.dll\"",
"copy \"..\\..\\SDK\\FMOD\\lib\\debug\\*.dll\" \"..\\..\\output\\bin\\Debug-windows-x86_64\\Do-Not-Die\\*.dll\""
}
postbuildcommands
{
"copy \"..\\..\\output\\bin\\Debug-windows-x86_64\\Do-Not-Die\\*.cso\" \"..\\..\\Contents\\Shader\\*.cso\"",
}
filter "configurations:Release"
defines "_RELEASE"
optimize "On"
runtime "Release"
libdirs
{
"../SDK/FBXSDK/lib/release",
"../SDK/FMOD/lib/release",
"../output/bin/Release-windows-x86_64/Engine/",
}
prebuildcommands
{
"copy \"..\\..\\output\\bin\\Release-windows-x86_64\\Engine\\*.dll\" \"..\\..\\output\\bin\\Release-windows-x86_64\\Do-Not-Die\\*.dll\"",
"copy \"..\\..\\SDK\\FBXSDK\\lib\\release\\*.dll\" \"..\\..\\output\\bin\\Release-windows-x86_64\\Do-Not-Die\\*.dll\""
}
postbuildcommands
{
"copy \"..\\..\\output\\bin\\Release-windows-x86_64\\Do-Not-Die\\*.cso\" \"..\\..\\Contents\\Shader\\*.cso\"",
}
filter "configurations:Dist"
defines "_DIST"
optimize "On"
runtime "Release"
libdirs
{
"../SDK/FBXSDK/lib/release",
"../SDK/FMOD/lib/release",
"../output/bin/Dist-windows-x86_64/Engine/",
}
prebuildcommands
{
"copy \"..\\..\\output\\bin\\Dist-windows-x86_64\\Engine\\*.dll\" \"..\\..\\output\\bin\\Dist-windows-x86_64\\Do-Not-Die\\*.dll\"",
"copy \"..\\..\\SDK\\FBXSDK\\lib\\release\\*.dll\" \"..\\..\\output\\bin\\Release-windows-x86_64\\Do-Not-Die\\*.dll\""
}
postbuildcommands
{
"copy \"..\\..\\output\\bin\\Dist-windows-x86_64\\Do-Not-Die\\*.cso\" \"..\\..\\Contents\\Shader\\*.cso\"",
}