[Mono-dev] Some MSBuild porting progress

Miguel de Icaza miguel at xamarin.com
Mon Mar 30 13:41:22 UTC 2015


Well, the idea would be to fix all major issues before we switch.

But I do not see the value of keeping the two around.

On Sun, Mar 29, 2015 at 6:07 AM, Atsushi Enomoto <atsushi at xamarin.com>
wrote:

> Actually IMO it's nicer to add "msbuild" (and msbuild.exe) while
> keeping xbuild as is, unless those upgraded Framework/Utilities/Tasks
> break it. That way people don't have to worry about backward
> compatibility and switch to new build engine simply by switching to
> "msbuild" from "xbuild". That also fills gap between .NET and Mono.
>
> I even have created mcs/tools/msbuild before (unfinished, not part of
> build yet).
>
> Atsushi Eno
>
> On Sun, Mar 29, 2015 at 4:48 AM, Lluis Sanchez <lluis at xamarin.com> wrote:
> >
> > El 28/03/2015, a les 15:32, Miguel de Icaza <miguel at xamarin.com> va
> > escriure:
> >
> > Hello,
> >
> > Question: does XS/MD depend on Microsoft.Build.Engine.dll?
> >
> >
> > MD currently depends on Microsoft.Build.Engine when running on Mac or
> Linux,
> > but my plan is to replace it by the new Microsoft.Build in the new
> project
> > model branch. In any case we can keep Microsoft.Build.Engine in Mono for
> > backwards compatibility and add the new ones for xbuild and MD.
> >
> >
> > Because we only would need it if the IDE needed it, and in that case,
> > hopefully we could replace it?
> >
> > But the idea is to make "xbuild" the script just use the new msbuild.
> >
> > Miguel
> >
> > On Sat, Mar 28, 2015 at 12:02 AM, Atsushi Enomoto <atsushi at xamarin.com>
> > wrote:
> >>
> >> Microsoft.Build.dll is the (relatively) new build engine which
> >> obsoleted Microsoft.Build.Engine.dll. The deprecated one is not in the
> >> msbuild repo and that's what we use in xbuild.
> >>
> >> Atsushi Eno
> >>
> >>
> >> On Sat, Mar 28, 2015 at 4:48 AM, Miguel de Icaza <miguel at xamarin.com>
> >> wrote:
> >> > Hello,
> >> >
> >> > I was under the impression that there were different versions of the
> >> > MSBuild
> >> > API?
> >> >
> >> > But I guess we implement the right one?
> >> >
> >> > My main concern was not breaking MonoDevelop, so if we do not break
> it,
> >> > we
> >> > should be fine.
> >> >
> >> > Let me know when you think you are ready, and we should incorporate
> >> > MSBuild
> >> > into Mono's current build setup.
> >> >
> >> > Miguel
> >> >
> >> > On Fri, Mar 27, 2015 at 3:31 PM, Lluis Sanchez <lluis at xamarin.com>
> >> > wrote:
> >> >>
> >> >>
> >> >> El 27/03/2015, a les 19:41, Miguel de Icaza <miguel at xamarin.com> va
> >> >> escriure:
> >> >>
> >> >> Hello Lluis,
> >> >>
> >> >> I think once we are happy with msbuild, that we should build msbuild
> as
> >> >> part of the standard Mono build process and ship the resulting
> >> >> libraries and
> >> >> script.
> >> >>
> >> >> My only concern is whether the public API surface that msbuild has is
> >> >> able
> >> >> to replace the assemblies that we currently install on the GAC.
> >> >>
> >> >>
> >> >> Yes, it does. The assemblies are Microsoft.Build,
> >> >> Microsoft.Build.Framework, Microsoft.Build.Tasks and
> >> >> Microsoft.Build.Utilities. We have partial implementations of those
> in
> >> >> Mono.
> >> >> The msbuild repo fully implements all of them.
> >> >>
> >> >> We can also use the .targets files included in the msbuild repo. I’ve
> >> >> been
> >> >> able to mostly build MD using the new libraries and using both Mono’s
> >> >> targets files and MS’s targets files. There are a few issues in both
> >> >> cases
> >> >> that should not be hard to fix.
> >> >>
> >> >>
> >> >> If it does, then we can get rid of our implementation, if not, we
> might
> >> >> have to keep both around until we get everyone out of the xbuild
> >> >> implementation.
> >> >>
> >> >>
> >> >> Miguel
> >> >>
> >> >> On Fri, Mar 27, 2015 at 2:33 PM, Lluis Sanchez <lluis at xamarin.com>
> >> >> wrote:
> >> >>>
> >> >>> There is a new xplat branch in the msbuild repo with many fixes to
> >> >>> make
> >> >>> it work on Mono. I’ve been doing additional fixes and I could make
> it
> >> >>> work
> >> >>> to build the MonoDevelop solution (some Exec tasks are failing
> though,
> >> >>> due
> >> >>> to missing path conversions). I posted my fixes as PRs to the main
> >> >>> repo, and
> >> >>> I keep a branch with all of them in my own repo
> >> >>> (https://github.com/slluis/msbuild/tree/fix-xplat).
> >> >>>
> >> >>> What’s the plan for integrating it into Mono?
> >> >>>
> >> >>> El 19/03/2015, a les 20:40, Miguel de Icaza <miguel at xamarin.com> va
> >> >>> escriure:
> >> >>>
> >> >>> Hey guys,
> >> >>>
> >> >>> I used the work from Alex to get started, and did some work on my
> own.
> >> >>>
> >> >>> I posted all the patches to github.com/mono/msbuild
> >> >>>
> >> >>> When using it to bootstrap building itself, it is not breaking at
> >> >>> invoking NuGet.
> >> >>>
> >> >>> I am out of the office until next week, so I think this is as far I
> >> >>> will
> >> >>> get.
> >> >>>
> >> >>> Miguel
> >> >>>
> >> >>>
> >> >>
> >> >>
> >> >
> >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-devel-list/attachments/20150330/9e8386b6/attachment.html>


More information about the Mono-devel-list mailing list