[Mono-dev] Update on Build System

Miguel de Icaza miguel at xamarin.com
Mon May 26 15:23:28 UTC 2014


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/20140526/779ac870/attachment-0001.html>


More information about the Mono-devel-list mailing list