This is the mail archive of the crossgcc@cygnus.com mailing list for the crossgcc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: mingw-hosted xgcc


"Kai Ruottu" <karuottu@freenet.hut.fi> writes:
>  Anyhow, the mingw32 host has some problems to be solved somehow. The h8300-h
> ms 
> target is one of those revealing these. Its specs has the following predefine
> s, 
> going through the MS library routines to cpp :
> 
> %{!mh:%{!ms:-D__SIZE_TYPE__=unsigned\ int -D__PTRDIFF_TYPE__=int}}
> %{mh:-D__SIZE_TYPE__=unsigned\ long -D__PTRDIFF_TYPE__=long}
> %{ms:-D__SIZE_TYPE__=unsigned\ long -D__PTRDIFF_TYPE__=long}
> 
>  Of course this kind of 'spaces in the options' doesn't work with them.
> There is some kind of argument fixing in the 'pexecute.c' for mingw32,
> but it doesn't cure this case. So the simplest way would to remove these
> from specs and move them to some 'always included' header, or to a header
> which is included in this... Could <sys/types.h> be the proper one?
> I moved them somewhere, but cannot find where, perhaps I have written
> them over...

AFAIK, this doesn't work for any host, so blaming mingw32 is not fair. The
specs parser in gcc is primitive at best, and having whitespace in the
macro values don't work. The __SIZE_TYPE__ above will simply produce 
the value "unsigned" after you preprocess.

I haven't followed this thread, and hence missing the context, but there
are other, and better, ways to achieve this.

Regards,
Mumit

_______________________________________________
New CrossGCC FAQ: http://www.objsw.com/CrossGCC
_______________________________________________
To remove yourself from the crossgcc list, send
mail to crossgcc-request@cygnus.com with the
text 'unsubscribe' (without the quotes) in the
body of the message.