From: | Joe Conway <mail(at)joeconway(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "Hackers (PostgreSQL)" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: compile warnings |
Date: | 2004-08-03 22:58:06 |
Message-ID: | 4110187E.4030607@joeconway.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-patches |
Tom Lane wrote:
> Joe Conway <mail(at)joeconway(dot)com> writes:
>
>>In addition to the ecpg warnings mentioned by Tom, I'm also seeing
>>compile warnings wrt plpython:
>
>
>>make[3]: Entering directory `/opt/src/pgsql-cvs/pgsql-7.5/src/pl/plpython'
>>gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes
>>-Wmissing-declarations -fpic -I. -I/usr/include/python2.3
>>-I../../../src/include -D_GNU_SOURCE -I/usr/include/et -c -o
>>plpython.o plpython.c -MMD
>>In file included from /usr/include/python2.3/Python.h:8,
>> from plpython.c:58:
>>/usr/include/python2.3/pyconfig.h:847:1: warning: "_POSIX_C_SOURCE"
>>redefined
>>In file included from /usr/include/stdio.h:28,
>> from ../../../src/include/c.h:60,
>> from ../../../src/include/postgres.h:48,
>> from plpython.c:37:
>>/usr/include/features.h:131:1: warning: this is the location of the
>>previous definition
>>ar crs libplpython.a plpython.o
>
>
> I think this must be breakage in your local python installation, not in
> Postgres. Note the complaint is that /usr/include/python2.3/pyconfig.h
> disagrees with /usr/include/features.h ... it's not hard to decide who's
> at fault there. PG could be an accessory to the crime, but AFAICS we've
> not mucked with include order or predefined symbols for plpython.c
> lately; so if we broke it, it was awhile ago.
>
> This is surely not a "must fix tomorrow" issue, but please look into it
> when you get back from your road trip.
In /usr/include/python2.3/pyconfig.h:
/* Define to activate features from IEEE Stds 1003.1-2001 */
#define _POSIX_C_SOURCE 200112L
And in /usr/include/features.h:
* If _GNU_SOURCE was defined by the user, turn on all the other
* features.
#ifdef _GNU_SOURCE
[...]
# define _POSIX_C_SOURCE 199506L
I find that simply putting
#include <Python.h>
prior to
#include "postgres.h"
in plpython.c eliminates the warnings, and compiles fine, but it isn't
clear to me that it is safe. Thoughts?
Joe
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2004-08-03 23:52:49 | Re: pgxs: build infrastructure for extensions v4 |
Previous Message | Bruce Momjian | 2004-08-03 19:14:08 | Re: Open items |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2004-08-03 23:52:49 | Re: pgxs: build infrastructure for extensions v4 |
Previous Message | Peter Eisentraut | 2004-08-03 17:33:40 | Re: pgxs: build infrastructure for extensions v4 |