[Mono-dev] Update on Build System

Miguel de Icaza miguel at xamarin.com
Thu Apr 9 20:25:11 UTC 2015


Hello,

I do not think this work was completed.

Miguel

On Thu, Apr 9, 2015 at 3:12 PM, Chris Tacke <ctacke at opennetcf.com> wrote:

> It’s been about a year and thought I’d loop back on this thread since it’s
> still something I could really use. Are we yet to a point where we can
> build Mono using the Microsoft compilers only?  If so, I can then start
> looking at modifying those projects to build using the Windows CE compilers.
>
>
>
> -Chris Tacke
>
>
>
> *From:* Miguel de Icaza [mailto:miguel at xamarin.com]
> *Sent:* Monday, May 26, 2014 10:23 AM
> *To:* Chris Tacke
> *Cc:* mono-devel
> *Subject:* Re: [Mono-dev] Update on Build System
>
>
>
> Hello Chris,
>
>
>
> That is what I am trying to do with this work.
>
>
>
> There are still a number of problems that I need to address:
>
>    - Installing the resulting binaries
>    - Signing (currently we are skipping this)
>    - Ensure the binaries produced are identical with Make and msbuild
>    - Add assertions to ensure that flags that we currently ignore are
>    caught, in case we add new features in the future
>    - Fix the C# compiler build (currently disabled)
>    - Extend this to other components, so we can have the entire setup in
>    a solution.
>
> Then we would have something that works.
>
>
>
> Miguel
>
>
>
> On Mon, May 26, 2014 at 11:04 AM, Chris Tacke <ctacke at opennetcf.com>
> wrote:
>
> Miguel,
>
>
>
> This is great news. Are there any plans to update the build system to
> allow us to compile the runtime itself using Visual Studio (i.e. a
> Microsoft compiler)?
>
>
>
> Now before everyone starts with the eye rolling and “why the hell would
> you want to do that?” questions, let me explain.  As of today, we can
> create applications in C# that will run on Windows and a large array of
> Linux machines (including Android) but Windows CE has been orphaned.
> Microsoft is not putting any effort into the Compact Framework, but there
> are still people developing for Windows CE devices.  I’d like to put a last
> nail in the coffin of the Compact Framework by getting Mono supported on
> Windows CE so we can all move into using technology from the current
> decade, not the last one.
>
>
>
> I don’t see any real path for getting the runtimes to compile for Windows
> CE  for ARM and 586 (not 686, since we have new Intel processors now that
> are 586 based).  There is an old (last touch in 2009) CeGCC project that
> might be a step, but I was hoping for something a little simpler.  I’m up
> for any suggestions.
>
>
>
> -Chris Tacke
>
>
>
>
>
>
>
>
>
>
>
> *From:* mono-devel-list-bounces at lists.ximian.com [mailto:
> mono-devel-list-bounces at lists.ximian.com] *On Behalf Of *Miguel de Icaza
> *Sent:* Friday, May 23, 2014 9:59 PM
> *To:* mono-devel
> *Subject:* [Mono-dev] Update on Build System
>
>
>
> Hey guys,
>
>
>
> #1 Makefile Build System Update
>
>
>
> So the clean staged setup has been added to mono/master and in practice
> most of you will never notice an improvement.
>
>
>
> Those working on libraries that had cross dependencies will enjoy reliable
> and working builds.   If you make a change in say System, and you type
> "make" in mcs/class/System, it will make sure that all the dependencies are
> properly compiled and the result will be stable.
>
>
>
> #2 MSBuild setup
>
>
> Based on the work above, I have updated the MSBuild setup, and it is now
> possible to build most of the managed code with xbuild.   This means that
> you can use this from Visual Studio or Xamarin Studio.
>
>
>
> Since xbuild does not support passing /keyfile to the C# compiler, I still
> have to fix about 6-7 assemblies that use -keyfile to be signed.
>
>
>
> Once that happens, you should be able to build all of Mono's managed code
> with:
>
>
>
> xbuild msvc/scripts/net_4_5.sln
>
>
>
> Currently I disabled generating project files for profiles other than 4.5,
> just because it is easier to debug this way.
>
>
>
> I am also a bit sad that our xbuild does not have any support for parallel
> builds, it would have been a neat hack to make the xbuild-based build
> system parallel and get this for free.
>
>
>
> #3 Future Parallel Work - Makefiles
>
>
>
> I tried to implement parallel builds for mcs/class/Facades, and while it
> works, it regressed some of the other standard targets that we have (the
> other -local).   I will have to revisit this later.
>
>
>
> But the principle behind the patch that enabled this could be used for
> mcs/class and parallelize all the builds as well.   We only need to (a)
> generate the assembly dependencies [1] and (b) we need to figure out the
> -local target breakage (same stuff I broke for Facades).
>
>
>
> [1]  (which we have from the xbuild work above)
>
> Miguel
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-devel-list/attachments/20150409/f198e033/attachment.html>


More information about the Mono-devel-list mailing list