Frankly, I don't think FW targeting in Visual Studio changes anything in
the way that the assembly is compiled. As Gert said, there are two
msbuilds... one uses the compilers shipped with .Net 2.0 and one uses
the compilers shipped with .Net 3.5. 

 

You can create a solution that "targets" .Net 2.0 in VS 2008. MSBuild
2.0 will use the C# version 3.0 compiler. So, if you opened noted pad
and added a linq query to your code... MSbuild would still compile it
without error because you have the LINQ DLLs on your machine. But, if
you try to deploy it then to a machine without .Net 3.5 on it you would
get reference errors.

 

The targeting is only for Visual Studio pretty much to know what
assemblies to show when you add a reference and what templates to show
when you Add Item or Add Project.

 

So, in this case, I think Nant should use the most recent version of
MSBuild in ALL cases. This would always use the new compilers. (I think
even assemblies compiled with the new .Net 3.5 compilers will still even
run on .Net 1.1 as long as you are only referencing assemblies that are
available in 1.1)

 

BOb

 

 

________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Eric
Fetzer
Sent: Friday, February 29, 2008 10:51 AM
To: Gert Driesen; Nant Users
Subject: Re: [NAnt-users] 3.5 Framework Solution Build using 2.0

 

        1) Do you expect the <solution> task to instruct MSBuild to
target the framework that you're currently targeting in NAnt, or do you 
        configure different solution/project configurations in VS for
this purpose?

        Keep in mind that - if you expect NAnt to instruct MSBuild to
target a given framework/tool version - this will override the 
        framework/tools version configured in the VS solution/projct
configuration.

It'd be nice if the solution task "COULD" instruct MSBuild what
framework to target, but by default used solution/project configurations
(i.e. <solution targetFW="...">.

        2) Do you expect NAnt to use MSBuild 1.0 for a VS 2008
solution/project if MSBuild 2.0 is not installed, or do we report an
error?

I say error.  I've noticed if I build with the wrong framework
accidentally in NAnt, it works fine until you deploy it and then you get
a nice red herring like IIS is so good at.

 

        3) Do you expect NAnt to use MSBuild 2.0 for a VS 2005
solution/project if MSBuild 1.0 is not installed, or do we report an
error?

Again, error.

 

My 2 cents.

 

Thanks Gert,

Eric

 


----- Original Message ----
From: Gert Driesen <[EMAIL PROTECTED]>
To: Eric Fetzer <[EMAIL PROTECTED]>; Nant Users
<nant-users@lists.sourceforge.net>
Sent: Friday, February 29, 2008 4:05:24 AM
Subject: Re: [NAnt-users] 3.5 Framework Solution Build using 2.0

Eric,

Currently, the solution task always uses the MSBuild that is part of
.NET 2.0.

Work is underway to change this, but we're still discussing how we
should implement it.

There are two versions of MSBuild:

MSBuild 1.0: part of .NET Framework 2.0; by default targets .NET
Framework 2.0.
MSBuild 2.0: part of .NET Framework 3.5; by default targets .NET
Framework 3.5

Current plans are:

When a VS 2005 solution/project is specified, we will use MSBuild 1.0 if
the current target framework is .NET 2.0 or .NETCF 2.0, and 
MSBuild 2.0 in all other cases.

When a VS 2008 solution/project is specified, we will always use MSBuild
2.0.

MSBuild 2.0 comes with support for targeting different versions of the
.NET Framework (currently only .NET Framework 2.0 and 3.5 are 
supported).

Topics to discuss:

1) Do you expect the <solution> task to instruct MSBuild to target the
framework that you're currently targeting in NAnt, or do you 
configure different solution/project configurations in VS for this
purpose?

Keep in mind that - if you expect NAnt to instruct MSBuild to target a
given framework/tool version - this will override the 
framework/tools version configured in the VS solution/projct
configuration.

2) Do you expect NAnt to use MSBuild 1.0 for a VS 2008 solution/project
if MSBuild 2.0 is not installed, or do we report an error?

3) Do you expect NAnt to use MSBuild 2.0 for a VS 2005 solution/project
if MSBuild 1.0 is not installed, or do we report an error?

Let me know what you think. I encourage others to respond as well.

Gert

----- Original Message ----- 
From: "Eric Fetzer" <[EMAIL PROTECTED]>
To: "Eric Fetzer" <[EMAIL PROTECTED]>; "Nant Users"
<nant-users@lists.sourceforge.net>
Sent: Thursday, February 28, 2008 10:21 PM
Subject: Re: [NAnt-users] 3.5 Framework Solution Build using 2.0


> OK, so for now, I've sicked msbuild on my solution file and all's ok.
I'll change back to the solution task when it works.
>
>
>
> ----- Original Message ----
> From: Eric Fetzer <[EMAIL PROTECTED]>
> To: Nant Users <nant-users@lists.sourceforge.net>
> Sent: Thursday, February 28, 2008 10:25:03 AM
> Subject: [NAnt-users] 3.5 Framework Solution Build using 2.0
>
> When I specify 3.5 of the framework, and NAnt tells me:  [property]
Target framework changed to "Microsoft .NET Framework 3.5".
>
> Then it get's into the solution and says:
>
> [solution] C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Csc.exe
/noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 
> /define:TRACE /reference:"C:\Program Files\Reference
Assemblies\Microsoft\Framework\v3.5\System.Core.dll"
/reference:"C:\Program 
> Files\Reference
Assemblies\Microsoft\Framework\v3.5\System.Data.DataSetExtensions.dll" 
>
/reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll

> /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll 
>
/reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Web.dll 
>
/reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll
/reference:"C:\Program Files\Reference 
> Assemblies\Microsoft\Framework\v3.5\System.Xml.Linq.dll"
/debug:pdbonly /filealign:512 /optimize+ /out:obj\release\MyProgram.dll 
> /target:library MyProgram.cs <http://myprogram.cs/>
Properties\AssemblyInfo.cs
>
> So, he's using the wrong CSC.exe causing the build to fail.  How do I
fix this (it looks like he should be using the right based 
> on the NAnt.exe.config)?
>
> Using version:  nant-0.86-beta1
>
> Thanks,
> Eric
>
>
>
________________________________________________________________________
____________
> Never miss a thing.  Make Yahoo your home page.
> http://www.yahoo.com/r/hs
>
>
------------------------------------------------------------------------
-
> This SF.net <http://sf.net/>  email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> NAnt-users mailing list
> NAnt-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nant-users
>
>
>
________________________________________________________________________
____________
> Looking for last minute shopping deals?
> Find them fast with Yahoo! Search.
http://tools.search.yahoo.com/newsearch/category.php?category=shopping
>
>
------------------------------------------------------------------------
-
> This SF.net <http://sf.net/>  email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> NAnt-users mailing list
> NAnt-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nant-users
> 



 

 

________________________________

Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try
it now.
<http://us.rd.yahoo.com/evt=51733/*http:/mobile.yahoo.com/;_ylt=Ahu06i62
sR8HDtDypao8Wcj9tAcJ%20> 

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
NAnt-users mailing list
NAnt-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users

Reply via email to