-
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpremake5.lua
More file actions
100 lines (80 loc) · 1.86 KB
/
premake5.lua
File metadata and controls
100 lines (80 loc) · 1.86 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
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
workspace "ModernDialogs"
configurations { "Debug", "Release" }
platforms { "x86", "x86_64"}
defaultplatform "x86_64"
startproject "Example"
flags
{
"MultiProcessorCompile"
}
filter "platforms:x86"
architecture "x86"
filter "platforms:x86_64"
architecture "x86_64"
outputdir = "%{cfg.buildcfg}-%{cfg.system}-%{cfg.architecture}"
newoption {
trigger = "std",
value = "C++XX",
description = "Select the C++ standard to use for compilation, defaults to C++-17",
allowed = {
{ "C++latest", "Latest C++ standard availble for the toolset"},
{ "C++17", "ISO C++17 standard"},
{ "C++2a", "ISO C++20 draft"},
{ "C++20", "ISO C++20 standard"},
{ "C++2b", "ISO C++23 draft"},
{ "C++23", "ISO C++23 standard"},
},
default = "C++17"
}
project "ModernDialogs"
location "ModernDialogs"
kind "StaticLib"
language "C++"
staticruntime "off"
systemversion "latest"
warnings "Extra"
cppdialect (_OPTIONS["std"] or "C++17")
targetdir ("bin/" .. outputdir .. "/%{prj.group}/%{prj.name}")
objdir ("bin-int/" .. outputdir .. "/%{prj.group}/%{prj.name}")
--Add all source and header files
files
{
"ModernDialogs/**.h",
"ModernDialogs/**.cpp"
}
filter "configurations:Debug*"
runtime "Debug"
symbols "On"
filter "configurations:Release*"
runtime "Release"
optimize "On"
project "Example"
location "Example"
kind "ConsoleApp"
language "C++"
staticruntime "off"
cppdialect "C++17"
systemversion "latest"
warnings "Extra"
targetdir ("bin/" .. outputdir .. "/%{prj.group}/%{prj.name}")
objdir ("bin-int/" .. outputdir .. "/%{prj.group}/%{prj.name}")
--Add all source and header files
files
{
"Example/**.h",
"Example/**.cpp"
}
includedirs
{
"ModernDialogs/"
}
links
{
"ModernDialogs"
}
filter "configurations:Debug*"
runtime "Debug"
symbols "On"
filter "configurations:Release*"
runtime "Release"
optimize "On"