Le samedi 20 mars 2010 08:21:53, Kurt Roeckx a écrit :
> Hi,

        Hi,

> It seems you currently restrict the arch list to:
> i386 amd64 kfreebsd-amd64 kfreebsd-i386
> 
> Is there a reason for this?  Both mingw32 and ocaml seem to be
> supported on all arches (except for mingw32 on hurd-i386).
> 
> I also don't get why you need to build-depend on gcc-multilib.

This is needed to get a working build environment for gcc -m32

> You have this in your rules file:
>         # Note that we must build a 32 bit compiler, even on 64 bit build
>         # architectures, because this compiler will try to do strength
>         # reduction optimizations using its internal int type, and that
>  must # match Windows' int type.  (That's what -cc and -host are for).
> 
> But the size of an int doesn't change for 32 and 64 targets.  Only the size
> of a long and a pointer do.
> 
> The description even says:
>  This compiler runs quickly,
>  generates compact code with moderate memory requirements, and is
>  portable to essentially any 32 or 64 bit Unix platform.
> 
> I currently see no reason not to set the arch list to any.

The cross-compilation process is a bit more complicated than that. In 
particular, the ocamlopt compiler emits temporary assembly files that are 
compiled later by the compiler. When switching to gcc instead of gcc -m32, I 
get a lot of messages like this:

/tmp/camlasmf9e413.s: Assembler messages:                                       
                                                                                
                    
/tmp/camlasmf9e413.s:431: Warning: value 0x3cb0000000000000 truncated to 0x0    
                                                                                
                    
/tmp/camlasmf9e413.s:437: Warning: value 0x10000000000000 truncated to 0x0      
                                                                                
                    
/tmp/camlasmf9e413.s:443: Warning: value 0x7fefffffffffffff truncated to 
0xffffffff                                                                      
                           
/tmp/camlasmf9e413.s:449: Warning: value 0x7ff0000000000001 truncated to 0x1    
                                                                                
                    
/tmp/camlasmf9e413.s:455: Warning: value 0xfff0000000000000 truncated to 0x0    
                                                                                
                    
/tmp/camlasmf9e413.s:461: Warning: value 0x7ff0000000000000 truncated to 0x0    
  

Hence, I assume it is not safe to compile it using (64 bits) gcc.

However, I'm open to any suggestion, in particular when tested and if possible 
with a patch...


Romain



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to