171 lines
3.6 KiB
Lua
171 lines
3.6 KiB
Lua
require "ecc/ecc"
|
|
|
|
workspace "fake-mario"
|
|
architecture "x64"
|
|
|
|
configurations
|
|
{
|
|
"debug",
|
|
"release"
|
|
}
|
|
|
|
local outputdir = "%{cfg.buildcfg}-%{cfg.system}-%{cfg.architecture}"
|
|
local vs_intdir = "$(SolutionDir)intermediate-files/" .. outputdir
|
|
local intdir = "%{wks.location}/intermediate-files/" .. outputdir
|
|
local vs_bindir = "$(SolutionDir)bin/" .. outputdir
|
|
local bindir = "%{wks.location}/bin/" .. outputdir
|
|
local linuxlibdir = "%{wks.location}/vendor/SFML/lib/linux"
|
|
local vs_libreldir = "$(SolutionDir)vendor/SFML/lib/MinSizeRel"
|
|
local libreldir = "%{wks.location}/vendor/SFML/lib/MinSizeRel"
|
|
local vs_libdebugdir = "$(SolutionDir)vendor/SFML/lib/Debug"
|
|
local libdebugdir = "%{wks.location}/vendor/SFML/lib/Debug"
|
|
local vs_sfmldir = "$(SolutionDir)vendor/SFML"
|
|
local sfmldir = "%{wks.location}/vendor/SFML"
|
|
local vs_imguidir = "$(SolutionDir)vendor/imgui"
|
|
local imguidir = "%{wks.location}/vendor/imgui"
|
|
local vs_includedir = "$(SolutionDir)include"
|
|
local includedir = "%{wks.location}/include"
|
|
|
|
project "fake-mario"
|
|
cppdialect "C++17"
|
|
language "C++"
|
|
defines "SFML_STATIC"
|
|
|
|
files
|
|
{
|
|
"src/**.cpp",
|
|
"include/**.h",
|
|
"include/**.hpp",
|
|
"vendor/imgui/imgui.cpp",
|
|
"vendor/imgui/imgui_draw.cpp",
|
|
"vendor/imgui/imgui_tables.cpp",
|
|
"vendor/imgui/imgui_widgets.cpp",
|
|
"vendor/imgui/imgui-SFML.cpp"
|
|
}
|
|
|
|
--visual studio--
|
|
filter {"action:vs*", "system:windows"}
|
|
targetdir (vs_bindir )
|
|
objdir (vs_intdir)
|
|
staticruntime "on"
|
|
includedirs
|
|
{
|
|
vs_includedir,
|
|
vs_sfmldir .. "/include",
|
|
vs_imguidir
|
|
}
|
|
|
|
filter {"action:vs*", "system:windows", "configurations:debug"}
|
|
libdirs {vs_libdebugdir}
|
|
|
|
filter {"action:vs*", "system:windows", "configurations:release"}
|
|
libdirs {vs_libreldir}
|
|
|
|
--not visual studio on windows--
|
|
filter {"not action:vs*", "system:windows"}
|
|
targetdir (bindir)
|
|
objdir (intdir)
|
|
includedirs
|
|
{
|
|
includedir,
|
|
imguidir
|
|
}
|
|
|
|
filter {"not action:vs*", "system:windows", "configurations:debug"}
|
|
libdirs {libdebugdir}
|
|
|
|
filter {"not action:vs*", "system:windows", "configurations:release"}
|
|
libdirs {libreldir}
|
|
|
|
|
|
|
|
--platform specific settings--
|
|
filter{"system:windows"}
|
|
systemversion "latest"
|
|
defines "PLATFORM_WINDOWS"
|
|
|
|
filter {"system:windows", "configurations:debug"}
|
|
kind "ConsoleApp"
|
|
defines{"_DEBUG", "_CONSOLE"}
|
|
runtime "Debug"
|
|
links
|
|
{
|
|
"sfml-graphics-s-d",
|
|
"sfml-window-s-d",
|
|
"opengl32",
|
|
"gdi32",
|
|
"freetyped",
|
|
"sfml-audio-s-d",
|
|
"flacd",
|
|
"vorbisencd",
|
|
"vorbisfiled",
|
|
"vorbisd",
|
|
"oggd",
|
|
"sfml-network-s-d",
|
|
"ws2_32",
|
|
"sfml-system-s-d",
|
|
"winmm"
|
|
}
|
|
|
|
filter {"system:windows", "configurations:release"}
|
|
kind "WindowedApp"
|
|
optimize "Speed"
|
|
inlining "Auto"
|
|
entrypoint "mainCRTStartup"
|
|
defines{"NDEBUG"}
|
|
runtime "Release"
|
|
links
|
|
{
|
|
"sfml-graphics-s",
|
|
"sfml-window-s",
|
|
"opengl32",
|
|
"gdi32",
|
|
"freetype",
|
|
"sfml-audio-s",
|
|
"flac",
|
|
"vorbisenc",
|
|
"vorbisfile",
|
|
"vorbis",
|
|
"ogg",
|
|
"sfml-network-s",
|
|
"ws2_32",
|
|
"sfml-system-s",
|
|
"winmm"
|
|
}
|
|
|
|
filter {"system:linux"}
|
|
targetdir (bindir)
|
|
objdir (intdir)
|
|
libdirs{linuxlibdir}
|
|
includedirs
|
|
{
|
|
includedir,
|
|
sfmldir .. "/include",
|
|
imguidir
|
|
}
|
|
systemversion "latest"
|
|
defines "PLATFORM_LINUX"
|
|
links
|
|
{
|
|
"sfml-graphics",
|
|
"sfml-window",
|
|
"sfml-audio",
|
|
"sfml-network",
|
|
"sfml-system",
|
|
"OpenGL"
|
|
|
|
}
|
|
|
|
filter {"system:linux" , "configurations:debug"}
|
|
kind "ConsoleApp"
|
|
symbols "on"
|
|
runtime "Debug"
|
|
|
|
filter {"system:linux" , "configurations:release"}
|
|
kind "WindowedApp"
|
|
optimize "Speed"
|
|
inlining "Auto"
|
|
entrypoint "mainCRTStartup"
|
|
symbols "off"
|
|
runtime "Release"
|