-
Notifications
You must be signed in to change notification settings - Fork 2
/
premake5.lua
112 lines (98 loc) · 2.96 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
workspace "MMX"
architecture "x64"
configurations {
"Debug",
"Release"
}
IncDir = {}
IncDir["glfw"] = "3rdparty/glfw/include"
IncDir["glad"] = "3rdparty/glad/include"
IncDir["imgui"] = "3rdparty/imgui"
IncDir["ImGuizmo"] = "3rdparty/ImGuizmo"
IncDir["bullet3"] = "3rdparty/bullet3/src"
IncDir["spdlog"] = "3rdparty/spdlog/include"
IncDir["glm"] = "3rdparty/glm"
IncDir["stb"] = "3rdparty/stb"
IncDir["nativefiledialog"] = "3rdparty/nativefiledialog/src/include"
IncDir["EventBus"] = "3rdparty/EventBus/lib/src"
IncDir["icu4c"] = "3rdparty/icu4c/include"
IncDir["yaml"] = "3rdparty/yaml-cpp/include"
LibDir = {}
LibDir["icu4c"] = "3rdparty/icu4c/lib64"
group "3rdparty"
include "3rdparty/glfw"
include "3rdparty/glad"
include "3rdparty/imgui"
include "3rdparty/ImGuizmo"
include "3rdparty/bullet3"
include "3rdparty/spdlog"
include "3rdparty/nativefiledialog"
include "3rdparty/EventBus"
include "3rdparty/yaml-cpp"
group ""
project "MMX"
kind "ConsoleApp"
language "C++"
cppdialect "C++17"
targetdir "bin/%{prj.name}/%{cfg.buildcfg}"
objdir "obj/%{prj.name}/%{cfg.buildcfg}"
vectorextensions "AVX2"
pchheader "mmpch.hpp"
pchsource "src/mmpch.cpp"
-- Copy icu4c dll's
postbuildcommands {
"xcopy /y /f \"3rdparty/icu4c/bin64/icudt75.dll\" \"%{cfg.targetdir}\"",
"xcopy /y /f \"3rdparty/icu4c/bin64/icuin75.dll\" \"%{cfg.targetdir}\"",
"xcopy /y /f \"3rdparty/icu4c/bin64/icutu75.dll\" \"%{cfg.targetdir}\"",
"xcopy /y /f \"3rdparty/icu4c/bin64/icuuc75.dll\" \"%{cfg.targetdir}\""
}
links {
"glad",
"glfw",
"imgui",
"ImGuizmo",
"bullet3",
"spdlog",
"nativefiledialog",
"EventBus",
"%{LibDir.icu4c}/*.lib",
"yaml-cpp",
"opengl32.lib"
}
includedirs {
"%{IncDir.glfw}",
"%{IncDir.glad}",
"%{IncDir.imgui}",
"%{IncDir.ImGuizmo}",
"%{IncDir.bullet3}",
"%{IncDir.spdlog}",
"%{IncDir.glm}",
"%{IncDir.stb}",
"%{IncDir.nativefiledialog}",
"%{IncDir.EventBus}",
"%{IncDir.icu4c}",
"%{IncDir.yaml}",
"src"
}
defines {
}
files {
"src/**.cpp",
"src/**.hpp"
}
filter "system:windows"
staticruntime "on"
systemversion "latest"
disablewarnings {
"26812"
}
filter "configurations:Debug"
defines {
"MM_DEBUG"
}
symbols "on"
filter "configurations:Release"
defines {
"MM_RELEASE"
}
optimize "on"