我正在将一些 C# 代码移到 premake 并在构建过程中遇到与名称冲突相关的问题:
我的预制解决方案如下所示:
workspace "Test"
configurations { "Debug", "Release"}
-- output locations
location("Intermediate/" .. _ACTION )
objdir ( "Intermediate/" .. _ACTION .. "/obj/%{cfg.buildcfg}/" )
targetname "%{prj.name}_%{cfg.buildcfg}"
project "Test"
language "c#"
kind "ConsoleApp"
files
{
"**.cs",
"**.xaml",
}
filter {}
我最终包括 2 个违规文件:
- TestFolder1\Test.cs
- TestFolder2\Test.cs
每个都有不同的命名空间但是它们都编译到同一个文件夹,因此我得到一个 MSB3105 编译器错误,指出源文件 \Intermediate\vs2010\obj\debug\Test.g.cs 在“源”中指定了不止一次范围。
任何想法如何获取输出调试文件以保留相对文件夹路径,以便避免这些名称冲突?
我以为我可以使用 files.relpath 令牌,但这对 objdir 无效。
谢谢,