bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: multithread CPPFLAGS


From: Yoann Vandoorselaere
Subject: Re: multithread CPPFLAGS
Date: Mon, 25 Aug 2008 09:45:25 +0200

Le jeudi 21 août 2008 à 11:02 -0500, Matthew Woehlke a écrit :
> Yoann Vandoorselaere wrote:
> > Le jeudi 21 août 2008 à 12:28 +0200, Bruno Haible a écrit :
> >> Yoann Vandoorselaere wrote:
> >>> Most program using the library currently don't (and probably won't)
> >>> depend on GnuLib. They are not multithread programs, and in order to
> >>> enable the library threaded features, we have to export correct
> >>> CFLAGS/LIBS to theses application so that they can compile with
> >>> threading enabled.
> >> I agree regarding LIBS, but not regarding CPPFLAGS. If the program only
> >> ever sees one thread, even though the library uses multiple threads behind
> >> its back,
> >>   - it does not need to #include <pthread.h>, and
> > 
> > I agree on this one.
> > 
> >>   - it does not need to see a thread-aware errno,
> >> hence it does not need to compile with THREADCPPFLAGS.
> > 
> > Not using a thread-aware errno from an application that indirectly use
> > thread through a library (which use thread-aware errno). Are you
> > completely sure this is safe?
> 
> Ah, if the libc uses thread-safe errno and the program doesn't... 
> wouldn't that simply break errno? (i.e. libc would set the thread-safe 
> errno and the program would get back something different, and thus never 
> get the right errno when something goes wrong?) Maybe it would work on 
> some platforms, but I'd be really, *really* nervous about it working in 
> general.

I agree on this. Bruno, do you have any documentation that state
otherwise? If no, can we assume the above and implement THREADCPPFLAGS?

-- 
Yoann Vandoorselaere | Responsable R&D / CTO | PreludeIDS Technologies
Tel: +33 (0)8 70 70 21 58                  Fax: +33(0)4 78 42 21 58
http://www.prelude-ids.com





reply via email to

[Prev in Thread] Current Thread [Next in Thread]