112 lines
3.1 KiB
Lua
Executable File
112 lines
3.1 KiB
Lua
Executable File
project "Deer"
|
|
kind "StaticLib"
|
|
language "C++"
|
|
cppdialect "C++20"
|
|
targetdir "bin/%{cfg.buildcfg}"
|
|
staticruntime "off"
|
|
|
|
files {
|
|
"src/Deer/**.h",
|
|
"src/Deer/**.cpp",
|
|
"src/DeerRender/**.h",
|
|
"src/DeerRender/**.cpp",
|
|
"src/Plattform/OpenGL/**.h",
|
|
"src/Plattform/OpenGL/**.cpp",
|
|
"src/Plattform/ImGUI/**.h",
|
|
"src/Plattform/ImGUI/**.cpp",
|
|
"vendor/ImGuizmo/**.cpp",
|
|
"vendor/stb/stb_image.cpp"
|
|
}
|
|
|
|
links { "spdlog", "GLFW", "glad", "ImGui", "angelScript" }
|
|
defines { "DEER_RENDER" }
|
|
|
|
includedirs
|
|
{
|
|
"src",
|
|
"Include",
|
|
"vendor/spdlog/include",
|
|
"vendor/GLFW/include",
|
|
"vendor/glad/include",
|
|
"vendor/imgui",
|
|
"vendor/glm",
|
|
"vendor/stb",
|
|
"vendor/ImGuizmo",
|
|
"vendor/entt/include",
|
|
"vendor/cereal/include",
|
|
"vendor/objload/include/objload",
|
|
"vendor/angelScript/include"
|
|
}
|
|
|
|
targetdir ("../bin/" .. OutputDir .. "/%{prj.name}")
|
|
objdir ("../bin/int/" .. OutputDir .. "/%{prj.name}")
|
|
|
|
filter "system:windows"
|
|
systemversion "latest"
|
|
defines {"WINDOWS"}
|
|
files {
|
|
"src/Plattform/windows/**.h",
|
|
"src/Plattform/windows/**.cpp"
|
|
}
|
|
|
|
filter "system:linux"
|
|
toolset "clang"
|
|
defines {"LINUX"}
|
|
buildoptions { "-std=c++20" }
|
|
|
|
local gtk_libs = os.outputof("pkg-config --libs gtk+-3.0")
|
|
|
|
links { "GL" }
|
|
-- Files for GTK
|
|
includedirs {
|
|
"/usr/include/gtk-3.0", -- GTK3 headers
|
|
"/usr/include/gdk-pixbuf-2.0", -- GDK Pixbuf headers
|
|
"/usr/include/cairo", -- Cairo graphics library headers
|
|
"/usr/include/pango-1.0", -- Pango text layout and rendering headers
|
|
"/usr/include/atk-1.0", -- ATK accessibility toolkit headers
|
|
"/usr/include/gdk-3.0", -- GDK headers
|
|
"/usr/include/glib-2.0", -- GLib headers
|
|
"/usr/lib/x86_64-linux-gnu/glib-2.0/include", -- GLib additional headers
|
|
"/usr/include/harfbuzz"
|
|
}
|
|
|
|
-- Link libraries for GTK3 and its dependencies
|
|
links {
|
|
"gtk-3", -- GTK3 library
|
|
"gdk-3", -- GDK library
|
|
"glib-2.0", -- GLib library
|
|
"pango-1.0", -- Pango library
|
|
"atk-1.0", -- ATK library
|
|
"cairo", -- Cairo graphics library
|
|
"gdk_pixbuf-2.0", -- GDK Pixbuf library
|
|
"gio-2.0", -- GIO library
|
|
"gobject-2.0", -- GObject library
|
|
"pthread" -- POSIX threads library
|
|
}
|
|
|
|
|
|
links { "pthread" }
|
|
buildoptions { "-pthread" }
|
|
linkoptions { "-pthread" }
|
|
|
|
files {
|
|
"src/Plattform/Linux/**.h",
|
|
"src/Plattform/Linux/**.cpp"
|
|
}
|
|
|
|
filter "configurations:Debug"
|
|
defines { "DEBUG" }
|
|
runtime "Debug"
|
|
symbols "On"
|
|
|
|
filter "configurations:Release"
|
|
defines { "RELEASE" }
|
|
runtime "Release"
|
|
optimize "On"
|
|
symbols "On"
|
|
|
|
filter "configurations:Dist"
|
|
defines { "DIST" }
|
|
runtime "Release"
|
|
optimize "On"
|
|
symbols "Off" |