Re: /bzr/squid3/trunk/ r9551: Add libgen.h to configure checks

From: Kinkie <gkinkie_at_gmail.com>
Date: Mon, 2 Mar 2009 15:11:14 +0100

On Mon, Mar 2, 2009 at 2:54 PM, Kinkie <gkinkie_at_gmail.com> wrote:
> This causes problems on Linux: the basename call included in libgen.h
> takes a non-const argument, and thus has issues when the argument is a
> string constant and issues warnings which fail the build.
> The version in string.h instead works.
>
> From the comment in Linux' libgen.h:
>
> /* Return final component of PATH.
>
>   This is the weird XPG version of this function.  It sometimes will
>   modify its argument.  Therefore we normally use the GNU version (in
>   <string.h>) and only if this header is included make the XPG
>   version available under the real name.  */
>
>
> In other words, including libgen.h in Linux is bad. How to more
> cleanly detect this and react is not totally clear to me...

Ok, a workable trick may be to use:
#if !__linux__ && HAVE_LIBGEN_H
#include <libgen.h>
#endif

at the top of src/Debug.h

-- 
    /kinkie
Received on Mon Mar 02 2009 - 14:11:19 MST

This archive was generated by hypermail 2.2.0 : Tue Mar 03 2009 - 12:00:03 MST