2021-12-19 12:58:03 -05:00
|
|
|
workspace "Navigator"
|
2021-12-18 19:23:14 -05:00
|
|
|
architecture "x64"
|
|
|
|
configurations {
|
|
|
|
"Debug",
|
|
|
|
"Release"
|
|
|
|
}
|
|
|
|
startproject "NavProject"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
outputdir = "%{cfg.buildcfg}-%{cfg.system}-%{cfg.architecture}"
|
|
|
|
-- External directories to be included
|
|
|
|
IncludeDirs ={}
|
2021-12-18 20:00:32 -05:00
|
|
|
IncludeDirs["glfw"] = "Navigator/vendor/glfw/include"
|
|
|
|
IncludeDirs["ImGui"] = "Navigator/vendor/imgui"
|
2021-12-20 12:08:25 -05:00
|
|
|
IncludeDirs["glad"] = "Navigator/vendor/glad/include"
|
2021-12-20 15:23:17 -05:00
|
|
|
IncludeDirs["ImPlot"] = "Navigator/vendor/implot"
|
2021-12-18 19:23:14 -05:00
|
|
|
|
2021-12-18 20:00:32 -05:00
|
|
|
include "Navigator/vendor/glfw"
|
|
|
|
include "Navigator/vendor/imgui"
|
2021-12-20 12:08:25 -05:00
|
|
|
include "Navigator/vendor/glad"
|
2021-12-18 19:23:14 -05:00
|
|
|
project "Navigator"
|
2021-12-18 20:00:32 -05:00
|
|
|
location "Navigator"
|
2021-12-20 12:08:25 -05:00
|
|
|
kind "SharedLib"
|
2021-12-18 19:23:14 -05:00
|
|
|
language "C++"
|
|
|
|
cppdialect "C++17"
|
|
|
|
targetdir ("lib/" .. outputdir .. "/%{prj.name}")
|
|
|
|
objdir ("bin-int/" .. outputdir .. "/%{prj.name}")
|
2021-12-19 12:58:03 -05:00
|
|
|
|
|
|
|
filter "system:windows"
|
|
|
|
defines "NAV_WINDOWS"
|
2021-12-19 15:11:24 -05:00
|
|
|
pchheader "navpch.h"
|
|
|
|
pchsource "Navigator/src/navpch.cpp"
|
2021-12-19 12:58:03 -05:00
|
|
|
forceincludes {"navpch.h"}
|
2021-12-20 12:08:25 -05:00
|
|
|
|
2021-12-19 12:58:03 -05:00
|
|
|
filter "system:linux or macosx"
|
2021-12-19 15:11:24 -05:00
|
|
|
pchheader "%{prj.name}/src/navpch.h"
|
2021-12-31 14:48:18 -05:00
|
|
|
filter "system:macosx"
|
|
|
|
pchheader "src/navpch.h"
|
|
|
|
sysincludedirs {
|
|
|
|
"%{prj.name}/vendor/spdlog/include/",
|
|
|
|
"%{IncludeDirs.glfw}",
|
|
|
|
"%{IncludeDirs.ImGui}",
|
|
|
|
"%{IncludeDirs.glad}",
|
|
|
|
"%{IncludeDirs.ImPlot}"
|
|
|
|
}
|
|
|
|
filter {}
|
2021-12-20 12:08:25 -05:00
|
|
|
|
|
|
|
includedirs {
|
|
|
|
"%{prj.name}/src/",
|
|
|
|
"%{prj.name}/vendor/spdlog/include/",
|
|
|
|
"%{IncludeDirs.glfw}",
|
|
|
|
"%{IncludeDirs.ImGui}",
|
2021-12-20 15:23:17 -05:00
|
|
|
"%{IncludeDirs.glad}",
|
|
|
|
"%{IncludeDirs.ImPlot}"
|
2021-12-20 12:08:25 -05:00
|
|
|
}
|
|
|
|
|
2021-12-18 19:23:14 -05:00
|
|
|
|
|
|
|
files {
|
2021-12-18 20:00:32 -05:00
|
|
|
"%{prj.name}/src/**.h",
|
2021-12-20 15:23:17 -05:00
|
|
|
"%{prj.name}/vendor/implot/*.h",
|
|
|
|
"%{prj.name}/src/**.cpp",
|
|
|
|
"%{prj.name}/vendor/implot/*.cpp"
|
2021-12-18 19:23:14 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
defines {
|
|
|
|
"_CRT_SECURE_NO_WARNINGS"
|
|
|
|
}
|
|
|
|
|
|
|
|
links {
|
|
|
|
"GLFW",
|
2021-12-20 12:08:25 -05:00
|
|
|
"GLAD",
|
|
|
|
"ImGui"
|
2021-12-18 19:23:14 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
systemversion "latest"
|
|
|
|
defines {
|
|
|
|
"GLFW_INCLUDE_NONE"
|
|
|
|
}
|
|
|
|
|
2021-12-20 12:08:25 -05:00
|
|
|
|
|
|
|
filter "system:linux"
|
|
|
|
defines "NAV_LINUX"
|
|
|
|
links {
|
|
|
|
"GL",
|
|
|
|
"X11",
|
2021-12-21 17:14:24 -05:00
|
|
|
"dl"
|
|
|
|
}
|
|
|
|
linkoptions {
|
|
|
|
"-pthread"
|
2021-12-20 12:08:25 -05:00
|
|
|
}
|
|
|
|
filter "system:macosx"
|
|
|
|
defines "NAV_APPLE"
|
|
|
|
links {
|
2021-12-31 14:48:18 -05:00
|
|
|
"Cocoa.framework",
|
|
|
|
"CoreVideo.framework",
|
|
|
|
"IOKit.framework",
|
|
|
|
"OpenGL.framework",
|
|
|
|
"Carbon.framework",
|
2021-12-20 12:08:25 -05:00
|
|
|
"dl",
|
2021-12-21 17:14:24 -05:00
|
|
|
}
|
|
|
|
linkoptions{
|
2021-12-31 14:48:18 -05:00
|
|
|
"-pthread",
|
|
|
|
"-undefined dynamic_lookup"
|
2021-12-20 12:08:25 -05:00
|
|
|
}
|
2022-01-08 22:36:16 -05:00
|
|
|
filter "system:windows"
|
|
|
|
defines "NAV_EXPORT"
|
|
|
|
postbuildcommands {
|
|
|
|
("{COPY} %{cfg.buildtarget.relpath} \"../bin/" .. outputdir .. "/NavProject/\"")
|
|
|
|
}
|
|
|
|
links {
|
|
|
|
"opengl32.lib"
|
|
|
|
}
|
2021-12-20 12:08:25 -05:00
|
|
|
|
2021-12-18 19:23:14 -05:00
|
|
|
filter "configurations:Debug"
|
|
|
|
defines "NAV_DEBUG"
|
|
|
|
runtime "Debug"
|
|
|
|
symbols "on"
|
|
|
|
|
|
|
|
filter "configurations:Release"
|
|
|
|
defines "NAV_RELEASE"
|
|
|
|
runtime "Release"
|
|
|
|
optimize "on"
|
|
|
|
|
|
|
|
project "NavProject"
|
2021-12-18 20:00:32 -05:00
|
|
|
location "NavProject"
|
2021-12-18 19:23:14 -05:00
|
|
|
kind "ConsoleApp"
|
|
|
|
language "C++"
|
|
|
|
cppdialect "C++17"
|
|
|
|
staticruntime "on"
|
|
|
|
targetdir ("bin/" .. outputdir .. "/%{prj.name}")
|
|
|
|
objdir ("bin-int/" .. outputdir .. "/%{prj.name}")
|
|
|
|
|
|
|
|
files {
|
2021-12-18 20:00:32 -05:00
|
|
|
"NavProject/main.cpp"
|
2021-12-18 19:23:14 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
includedirs {
|
2021-12-18 20:00:32 -05:00
|
|
|
"Navigator/src",
|
2021-12-19 15:11:24 -05:00
|
|
|
"Navigator/src/Navigator",
|
2021-12-18 20:00:32 -05:00
|
|
|
"Navigator/vendor/spdlog/include/",
|
2021-12-20 15:23:17 -05:00
|
|
|
"Navigator/vendor/implot/",
|
2021-12-18 20:00:32 -05:00
|
|
|
"Navigator/vendor"
|
2021-12-18 19:23:14 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
links {
|
|
|
|
"Navigator"
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
systemversion "latest"
|
|
|
|
|
2021-12-31 14:48:18 -05:00
|
|
|
filter "system:macosx"
|
2022-01-08 22:36:16 -05:00
|
|
|
defines "NAV_APPLE"
|
2021-12-31 14:48:18 -05:00
|
|
|
sysincludedirs {
|
|
|
|
"Navigator/vendor/spdlog/include/",
|
|
|
|
"%{IncludeDirs.glfw}",
|
|
|
|
"%{IncludeDirs.ImGui}",
|
|
|
|
"%{IncludeDirs.glad}",
|
|
|
|
"%{IncludeDirs.ImPlot}"
|
|
|
|
}
|
2022-01-08 22:36:16 -05:00
|
|
|
filter "system:windows"
|
|
|
|
defines "NAV_WINDOWS"
|
|
|
|
filter "system:linux"
|
|
|
|
defines "NAV_LINUX"
|
2021-12-31 14:48:18 -05:00
|
|
|
|
2021-12-20 12:08:25 -05:00
|
|
|
|
|
|
|
|
2021-12-18 19:23:14 -05:00
|
|
|
filter "configurations:Debug"
|
|
|
|
defines "NAV_DEBUG"
|
|
|
|
runtime "Debug"
|
|
|
|
symbols "on"
|
|
|
|
|
|
|
|
filter "configurations:Release"
|
|
|
|
defines "NAV_RELEASE"
|
|
|
|
runtime "Release"
|
|
|
|
optimize "on"
|
|
|
|
|
|
|
|
filter "configurations:Dist"
|
|
|
|
defines "NAV_DIST"
|
|
|
|
runtime "Release"
|
2021-12-31 14:48:18 -05:00
|
|
|
optimize "on"
|