2014-09-14 08:36:58 +02:00

29 lines
1.1 KiB
Lua

module(..., package.seeall)
local frameworkDir = "c:\\Windows\\Microsoft.NET\\Framework"
local defaultFrameworkVersion = "v3.5"
function apply(env, options)
tundra.unitgen.load_toolset("generic-dotnet", env)
local version = options and assert(options.Version) or defaultFrameworkVersion
env:set_external_env_var('FrameworkDir', frameworkDir)
env:set_external_env_var('FrameworkVersion', version)
local binPath = frameworkDir .. "\\" .. version
env:set_external_env_var('PATH', binPath .. ";" .. env:get_external_env_var('PATH'))
-- C# support
env:set_many {
["DOTNET_SUFFIXES"] = { ".cs" },
["DOTNET_SUFFIXES_RESOURCE"] = { ".resource" },
["CSC"] = "csc.exe",
["CSPROGSUFFIX"] = ".exe",
["CSLIBSUFFIX"] = ".dll",
["CSRESGEN"] = "resgen $(<) $(@)",
["_CSC_COMMON"] = "-warn:$(CSC_WARNING_LEVEL) /nologo $(CSLIBPATH:b:p/lib\\:) $(CSRESOURCES:b:p/resource\\:) $(CSLIBS:p/reference\\::A.dll)",
["CSCLIBCOM"] = "$(CSC) $(_CSC_COMMON) $(CSCOPTS) -target:library -out:$(@:b) $(<:b)",
["CSCEXECOM"] = "$(CSC) $(_CSC_COMMON) $(CSCOPTS) -target:exe -out:$(@:b) $(<:b)",
}
end