SHADE_Y3/SHADE_Managed/premake5.lua

132 lines
2.4 KiB
Lua
Raw Normal View History

project "SHADE_Managed"
kind "SharedLib"
language "C++"
clr "NetCore"
dotnetframework "net5.0"
cppdialect "C++17"
targetdir (outputdir)
objdir (interdir)
systemversion "latest"
pchheader "SHpch.h"
pchsource "%{prj.location}/src/SHpch.cpp"
staticruntime "off"
files
{
"%{prj.location}/src/**.hxx",
"%{prj.location}/src/**.h++",
"%{prj.location}/src/**.cxx",
"%{prj.location}/src/**.h",
"%{prj.location}/src/**.hpp",
"%{prj.location}/src/**.c",
"%{prj.location}/src/**.cpp",
}
includedirs
{
"%{prj.location}/src",
}
externalincludedirs
{
2022-09-12 22:42:46 +08:00
"%{IncludeDir.spdlog}/include",
"%{IncludeDir.imgui}",
"%{IncludeDir.imguizmo}",
"%{IncludeDir.imnodes}",
"%{IncludeDir.msdf_atlas_gen}",
"%{IncludeDir.msdfgen}",
"%{IncludeDir.yamlcpp}",
"%{IncludeDir.SDL}\\include",
"%{IncludeDir.RTTR}/include",
"%{IncludeDir.dotnet}\\include",
"%{IncludeDir.reactphysics3d}\\include",
2022-11-04 14:44:18 +08:00
"%{IncludeDir.VULKAN}\\include",
"%{IncludeDir.fmod}\\include",
2022-09-12 19:00:54 +08:00
"%{wks.location}/SHADE_Engine/src"
}
2022-09-27 01:12:02 +08:00
libdirs
{
"%{IncludeDir.RTTR}/lib",
"%{IncludeDir.SDL}/lib",
"%{IncludeDir.fmod}/lib"
2022-09-27 01:12:02 +08:00
}
2022-09-12 22:42:46 +08:00
links
{
"yaml-cpp",
"msdfgen",
"msdf-atlas-gen",
2022-09-12 22:42:46 +08:00
"imgui",
"SDL2.lib",
"SDL2main.lib",
"SHADE_Engine",
"SHADE_CSharp"
2022-09-13 20:28:34 +08:00
}
2022-09-15 12:28:53 +08:00
disablewarnings
{
"4251",
"4633",
"4634",
"4635",
"4638"
2022-09-15 12:28:53 +08:00
}
2022-09-13 20:28:34 +08:00
defines
{
"NOMINMAX"
2022-09-12 22:42:46 +08:00
}
flags
{
"MultiProcessorCompile"
}
disablewarnings
{
"4275",
"4635"
}
2022-09-12 22:42:46 +08:00
dependson
{
"yaml-cpp",
"msdfgen",
"msdf-atlas-gen",
2022-09-12 22:42:46 +08:00
"imgui",
"SHADE_Engine"
2022-09-12 22:42:46 +08:00
}
warnings 'Extra'
filter "configurations:Debug"
symbols "On"
defines {"_DEBUG"}
2022-09-27 01:12:02 +08:00
links{"librttr_core_d.lib"}
links{"fmodstudioL_vc.lib", "fmodL_vc.lib"}
filter "configurations:Release"
optimize "On"
defines{"_RELEASE"}
2022-09-27 01:12:02 +08:00
links{"librttr_core.lib"}
links{"fmodstudio_vc.lib", "fmod_vc.lib"}
2022-10-02 00:47:26 +08:00
filter "configurations:Publish"
optimize "On"
defines{"_RELEASE"}
links{"librttr_core.lib"}
links{"fmodstudio_vc.lib", "fmod_vc.lib"}
require "vstudio"
function docsElementCPP(cfg)
_p(3,'<GenerateXMLDocumentationFiles>true</GenerateXMLDocumentationFiles>')
end
premake.override(premake.vstudio.vc2010.elements, "clCompile", function (oldfn, cfg)
return table.join(oldfn(cfg), {
docsElementCPP,
})
end)