Re: BUG #17466: Is it possible to supplement the default compilation options of CFLAGS in configure file?

From: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
To: wysunxavier(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org, PG Bug reporting form <noreply(at)postgresql(dot)org>
Subject: Re: BUG #17466: Is it possible to supplement the default compilation options of CFLAGS in configure file?
Date: 2022-04-20 16:21:50
Message-ID: 56b4ea59-936f-c54f-2e7c-81ac7e638849@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 19.04.22 05:36, PG Bug reporting form wrote:
> When I try to specify some compilation options in CFLAGS, such as compiling
> with macros, when I execute “./configure CFLAGS='-DUSE_TOOLS'”,it will use
> '-O0' to compile by default, which is easy to miscompile into a debug
> version. I wonder if it is possible to supplement the judgment conditions in
> the postgresql source code: If the compilation option is not specified in
> CFLAGS, '-O2' is used by default to avoid compiling the wrong debug
> version.

The use case you are describing is not without merit. But ultimately,
the handling of these compiler option variables has decades of history
behind it, and just poking at that for one specific case is going to
break someone else's use case somehow.

We generally avoid the need to add CFLAGS to the configure command line
except in cases where you actually want to override the defaults. Other
cases should have a command-line option or perhaps a spot in
pg_config_manual.h.

In your specific case you could also pass CPPFLAGS instead, which is
more correct anyway, and it doesn't have a default that you can
accidentally override.

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Peter Eisentraut 2022-04-20 16:24:09 Re: BUG #16866: pg_basebackup Windows Server 20160
Previous Message Richard Wesley 2022-04-20 16:17:32 Query generates infinite loop