[Mono-dev] My attempt at building both Boehm and Sgen.

Miguel de Icaza miguel at novell.com
Fri Jun 18 18:48:09 EDT 2010


Hey guys,

    This patch is my attempt to build both Boehm and Sgen.   The idea is
to build both Mono and Mono/SGEN on the same build process, without
having to do multiple Mono builds by hand.

    For Mono 2.8, we want to have a setup where users can pick one of
these combinations trivially, without having to replace Mono on their
system, recompile Mono and override or have multiple prefixes:

	* Standard Mono VM with Boehm GC (mono)
	* Standard Mono VM with SGen GC (mono-sgen)
	* Mono VM with LLVM as the codegen engine with Boehm GC, this
	  will be discussed in a different email.

    I am stuck at some autoconf foo that I cant figure out when my build
aborts due to a message that just makes no sense *at all*:

CC	../../mono/metadata/opcodes.lo
../../mono/metadata/opcodes.c:91: fatal error: opening dependency
file .deps/../../mono/metadata/opcodes.Tpo: No such file or directory

    The changes are as follows:

	* New targets on mono/metadata, mono/io-layer and mono/mini
	  (still missing mono/arch/*) that will build libXXX as well
	  as libXXXsgen.

	* All libraries are built twice, once with the Boehm GC defines
	  and once with the SGen defines.   This means that no GC define
	  can be saved in the config.h, all GC-bound defines need to be
	  passed on the command line. 

	* The default build will continue to be Boehm or None, depending
	  on the build settings, and a new SGen build is made available.

	* The XXXsgen libraries are identical copies of the regular
	  libraries but have their CFLAGS set to be the SGEN defines.

	* Configure currently *always* will build Sgen, regardless of 
	  platform and GC settings, this needs to be fixed.

Miguel.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: sgen-attempt
Type: text/x-patch
Size: 9976 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-devel-list/attachments/20100618/54bfc62d/attachment.bin 


More information about the Mono-devel-list mailing list