I'm running into an issue where it appears that the Solution task does not correctly handled embedded VC++ projects in the solution.  I have a mixed solution with some C# class libraries and some VC++ projects as well.  One of the VC++ projects has a dependency on some of the C# class libraries.  When I attempt to build this with nant I receive an undeclared identifier error for the types defiled in the C# class libraries.  In trying to fix this issue I've come to notice that the solution task doesn't seem to be picking up many of the project settings for the VC++ project.  For example, here are the command line parameters to cl.exe that VS.NET uses (from the buildlog.htm):

 

/Od /AI "d:\TestProjects\NantSolutionTest\Debug" /D "WIN32" /D "_DEBUG" /D "_MBCS" /FD /EHsc /MTd /GS /Yu"stdafx.h" /Fp"Debug/ConsoleApp.pch" /Fo"Debug/" /Fd"Debug/vc70.pdb" /W3 /c /Zi /clr /TP /FU "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll"

/FU "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll"

/FU "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Data.dll"

/FU "d:\TestProjects\NantSolutionTest\ClassLibrary1\obj\Debug\ClassLibrary1.dll"

.\AssemblyInfo.cpp

.\ConsoleApp.cpp

/nologo

 

And here are the command line parameters that the solution tasks executed (from using the verbose flag):

/clr

/Fd"D:\TestProjects\NantSolutionTest\ConsoleApp\Debug/"

/Fo"D:\TestProjects\NantSolutionTest\ConsoleApp\Debug/"

".\AssemblyInfo.cpp"

".\ConsoleApp.cpp"

/D "_MBCS"

/D WIN32

 /D _DEBUG /Yu"StdAfx.h" /Fp"Debug/ConsoleApp.pch" /MTd /W3 /Zi /Od /nologo

 

 

VS.NET also performs an xcopy of the dependency (ClassLibrary1.dll in my example) into the obj directory of the VC++ project which nant does not do.

 

Anyone else seen this?  Is there a way I can work around this issue?

 

Thanks,

 Aaron

Reply via email to