Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Oct 2003 23:41:25 +1000 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        "Jukka A. Ukkonen" <jau@mawit.com>
Cc:        freebsd-bugs@freebsd.org
Subject:   Re: Minor change to silence complaints from cpp
Message-ID:  <20031006232811.D9454@gamplex.bde.org>
In-Reply-To: <3131.62.78.135.6.1065426014.squirrel@office.mawit.com>
References:  <200310020933.h929XI8r028284@freefall.freebsd.org> <3131.62.78.135.6.1065426014.squirrel@office.mawit.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 6 Oct 2003, Jukka A. Ukkonen wrote:

> E.g. when compiling X-server cpp has been complaining about
> _POSIX_C_SOURCE not being defined. This was easily silenced
> with the following minor change...

This seems to be a bug or a feature in the X server's Makefile.  It
apparently uses -Wundef to generate warnings about the Standard C
feature of undefined identifiers having value 0 in cpp expressions.

> --- /usr/include/sys/cdefs.h.orig	Mon Oct  6 10:26:47 2003
> +++ /usr/include/sys/cdefs.h	Mon Oct  6 10:28:06 2003
> @@ -270,13 +270,13 @@
>   */
>
>  /* Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1. */
> -#if _POSIX_C_SOURCE == 1
> +#if defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE == 1)
>  #undef _POSIX_C_SOURCE		/* Probably illegal, but beyond caring now. */
>  #define	_POSIX_C_SOURCE		199009
>  #endif
>
>  /* Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2. */
> -#if _POSIX_C_SOURCE == 2
> +#if defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE == 2)
>  #undef _POSIX_C_SOURCE
>  #define	_POSIX_C_SOURCE		199209
>  #endif

I'd prefer not to uglify the system headers to support -Wundef.

Most warnings in system headers including ones from -Wundef can be
suppressed using -Wno-system-headers.  -Wno-system-headers is the FSF
default but FreeBSD reverses this.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031006232811.D9454>