From: | Mark Dilger <hornschnorter(at)gmail(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Andrew Dunstan <andrew(at)dunslane(dot)net> |
Subject: | Re: pg_recvlogical.c doesn't build with --disable-integer-datetimes |
Date: | 2017-02-17 19:51:27 |
Message-ID: | B6B21737-2182-4C6B-9B42-9AD9DFAC46D4@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> On Feb 17, 2017, at 11:40 AM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> I wrote:
>> Yeah. I have longfin which is running Apple's clang, and is on a machine
>> that doesn't have much to do otherwise. I propose to turn on -Werror in
>> its configuration, and to configure a second critter on the same hardware
>> that runs with -Werror as well as --disable-integer-datetimes. Somebody
>> else should do similarly with a reasonably modern/stable gcc release.
>
> So I tried doing that by adding -Werror to longfin's CFLAGS environment,
> and it crashed and burned in configure. The most obvious problem is
> that we didn't bother to supply a prototype for does_int64_work() in
> the probes for 64-bit ints. However, even after fixing that, configure
> produces totally bollixed output because -Werror breaks many of its
> built-in tests. We could fix the int64 tests but we have no good way of
> fixing the built-in tests.
>
> AFAICS, if you want to build with -Werror, you have to configure without
> that and then inject it afterwards. I wonder how people who use -Werror
> are handling that. Is it possible to do at all in a buildfarm critter?
I ran into the same problem when adding -Werror, and fixed it as follows:
diff --git a/src/Makefile.global.in b/src/Makefile.global.in
index d39d6ca..96fbc60 100644
--- a/src/Makefile.global.in
+++ b/src/Makefile.global.in
@@ -240,7 +240,7 @@ endif # not PGXS
CC = @CC@
GCC = @GCC@
SUN_STUDIO_CC = @SUN_STUDIO_CC@
-CFLAGS = @CFLAGS@
+CFLAGS = @CFLAGS@ -Werror
CFLAGS_VECTOR = @CFLAGS_VECTOR@
CFLAGS_SSE42 = @CFLAGS_SSE42@
That adds -Werror to the compilation of sources but not to the compilation
of configure test programs. I'd be happy to hear if anybody has a cleaner
way of doing this.
Mark Dilger
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2017-02-17 20:04:09 | Re: pg_recvlogical.c doesn't build with --disable-integer-datetimes |
Previous Message | Andres Freund | 2017-02-17 19:48:44 | Re: pg_recvlogical.c doesn't build with --disable-integer-datetimes |