[Mono-dev] /mono/mini/main.c build error: depends on HAVE_SGEN_GC define, making it impossible to compile for sgen

Zoltan Varga vargaz at gmail.com
Thu May 23 17:39:34 UTC 2013


Hi,

 buildver.h is always built unless some configure flag disables it. What
configure arguments are you using ?

          Zoltan


On Thu, May 23, 2013 at 5:01 PM, Jeremy Bell <bell.jeremy at gmail.com> wrote:

> At some point between branch mono-2-10-9 and branch master, a change was
> made to /mono/mini/main.c:
>
> branch mono-2-10-9:
>
> main.c:
> #include <config.h>
> #include "mini.h"
> #ifndef HOST_WIN32
> #include "buildver.h"
> #endif
>
>
> branch master:
> #include <config.h>
> #include "mini.h"
> #ifndef HOST_WIN32
> #ifdef HAVE_SGEN_GC
> #include "buildver-sgen.h"
> #else
> #include "buildver.h"
> #endif
> #endif
>
> This makes main.c impossible to compile when buildver-sgen.h is generated
> and not buildver.h. First of all, HAVE_SGEN_GC is never defined for files
> in /mini as far as I can tell, so main.c always attempts to include
> buildver.h, which does not exist when buildver-sgen.h is generated instead.
>
> However, even if you explicitly define HAVE_SGEN_GC in CFLAGS, etc... then
> you will still get an error, in mini.h, because it believes it is an error
> to have either HAVE_SGEN_GC or HAVE_BOEHM_GC defined when mini.h is
> included, as /mini code should not have dependencies on the GC being used,
> so it says:
>
> mini.h:
> /*
>  * The mini code should not have any compile time dependencies on the GC
> being used, so the same object file from mini/
>  * can be linked into both mono and mono-sgen.
>  */
> #if defined(HAVE_BOEHM_GC) || defined(HAVE_SGEN_GC)
> #error "The code in mini/ should not depend on these defines."
> #endif
>
>
> So, either way, main.c won't compile without modification. Is the error in
> /mono/mini/mini.h no longer valid? Or was the change to /mono/mini/main.c
> to depend on the HAVE_SGEN_GC define a regression?
>
> Thanks,
> Jeremy
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-devel-list/attachments/20130523/0892a27c/attachment.html>


More information about the Mono-devel-list mailing list