Gmane
From: Danny Smith <dannysmith@...>
Subject: Re: Re: GCC 3.3 Bootstrap Failure: Undefined __GTHREAD_MUTEX_INIT
Newsgroups: gmane.comp.gnu.mingw.devel
Date: 2002-12-18 09:55:28 GMT (5 years, 35 weeks, 16 hours and 46 minutes ago)

----- Original Message -----
From: "Ranjit Mathew" <rmathew@...>
To: "MinGW Developers" <mingw-dvlpr@...>
Sent: Wednesday, 18 December 2002 07:37
Subject: [MinGW-dvlpr] Re: GCC 3.3 Bootstrap Failure: Undefined
__GTHREAD_MUTEX_INIT

> Danny Smith wrote:
> >> This macro seems to be used by "atomicity.h" in
> >> "config/cpu/generic" for libstdc++-v3, which is being
> >> used instead of "config/cpu/i486" - why?
> >>
> >> This problem has cropped up only recently, as older
> >> snapshots used to build fine for me.
> >>
> >> Does anyone have any idea on this?
> >
> > Yup.  force use of i486/atomicity.h in libstdc++/configure.target
> >
> >   mingw32*)
> >     os_include_dir="os/mingw32"
> >     ATOMICITYH="cpu/i486"
> > #   cmodel=c
> > #   c_compatibility=yes
> >     ;;
> >
> > I must have removed the ATOMICITYH along with the
cmodel/c_compatability
> > lines(which I use for testing the cheaders=c model) when  I did the
diff
> > that I posted to group.
>
> Much thanks for that! I'll try it out once more.
>
> However, IMHO, you should set cpu_include_dir="cpu/i486" to
> be more correct - right now, it only has atomicity.h, but it
> might get other cpu-specific headers later.

Maybe.  It used to have a very incomplete cpu_limits.h   but that is all
builtin now.
>
> The problem also wouldn't have come if the folder were
> "i386" instead of "i486", as this is the value of target_cpu
> for target alias "mingw32".
>
Yes,  The old contents of i386 dir were the same as current i486 (and
used asm instructions that only worked on i486 and higher - that was the
bug that finally got caught after  many years and motivated the generic
atomicity.h).

> I'm sorry for not having RTF-configure.target-script - it's
> all given very plainly at the top of the script. :-(
>
> AFAICT, you should also have the same for the cygwin target.
> The fact that these are not there for either mingw32 or cygwin
> means that it is a "bug" (in a way) - Danny, have you
> submitted a patch to the libstdc++-v3 developers for this?
>
For cygwin, the generic version works fine since it does have
_GTHREAD_MUTEX_INIT.  However, its moot point since official cygwin
releases configure as i686 and I doubt if anyone explicitly configure
cygwin as i386.

Currently the cpu default for mingw is i586, but I think it should be
i686 since the latter gets better testing on Linux targets

No I haven't submitted patch.  Its sitting under a pile that will wait
till next year.

Danny
> Sincerely Yours,
> Ranjit.
>
> --
> Ranjit Mathew          Email: rmathew AT hotmail DOT com
>
> Bangalore, INDIA.      Web: http://ranjitmathew.tripod.com/
>
>
>
>
> -------------------------------------------------------
> This sf.net email is sponsored by:
> With Great Power, Comes Great Responsibility
> Learn to use your power at OSDN's High Performance Computing Channel
> http://hpc.devchannel.org/
> _______________________________________________
> MinGW-dvlpr mailing list
> MinGW-dvlpr@...
> https://lists.sourceforge.net/lists/listinfo/mingw-dvlpr

-------------------------------------------------------
This sf.net email is sponsored by:
With Great Power, Comes Great Responsibility 
Learn to use your power at OSDN's High Performance Computing Channel
http://hpc.devchannel.org/