mirror of
https://github.com/postgres/postgres.git
synced 2025-05-01 01:04:50 +03:00
Document usage of COPT environment variable for adjusting configure flags.
Also add to the existing rather half-baked description of PROFILE, which does exactly the same thing, but I think people use it differently. Discussion: https://postgr.es/m/16461.1487361849@sss.pgh.pa.us
This commit is contained in:
parent
39370e6a0a
commit
a029d2cf42
@ -1494,6 +1494,26 @@ su - postgres
|
||||
</variablelist>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Sometimes it is useful to add compiler flags after-the-fact to the set
|
||||
that were chosen by <filename>configure</>. An important example is
|
||||
that <application>gcc</>'s <option>-Werror</> option cannot be included
|
||||
in the <envar>CFLAGS</envar> passed to <filename>configure</>, because
|
||||
it will break many of <filename>configure</>'s built-in tests. To add
|
||||
such flags, include them in the <envar>COPT</envar> environment variable
|
||||
while running <filename>make</>. The contents of <envar>COPT</envar>
|
||||
are added to both the <envar>CFLAGS</envar> and <envar>LDFLAGS</envar>
|
||||
options set up by <filename>configure</>. For example, you could do
|
||||
<screen>
|
||||
<userinput>make COPT='-Werror'</>
|
||||
</screen>
|
||||
or
|
||||
<screen>
|
||||
<userinput>export COPT='-Werror'</>
|
||||
<userinput>make</>
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
<note>
|
||||
<para>
|
||||
When developing code inside the server, it is recommended to
|
||||
@ -1514,6 +1534,14 @@ su - postgres
|
||||
<option>-O0</>. An easy way to do this is by passing an option
|
||||
to <application>make</>: <command>make PROFILE=-O0 file.o</>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <envar>COPT</> and <envar>PROFILE</> environment variables are
|
||||
actually handled identically by the <productname>PostgreSQL</>
|
||||
makefiles. Which to use is a matter of preference, but a common habit
|
||||
among developers is to use <envar>PROFILE</> for one-time flag
|
||||
adjustments, while <envar>COPT</> might be kept set all the time.
|
||||
</para>
|
||||
</note>
|
||||
</step>
|
||||
|
||||
|
@ -582,6 +582,11 @@ ifneq ($(CUSTOM_COPT),)
|
||||
COPT= $(CUSTOM_COPT)
|
||||
endif
|
||||
|
||||
#
|
||||
# These variables are meant to be set in the environment of "make"
|
||||
# to add flags to whatever configure picked. Unlike the ones above,
|
||||
# they are documented.
|
||||
#
|
||||
ifdef COPT
|
||||
CFLAGS += $(COPT)
|
||||
LDFLAGS += $(COPT)
|
||||
|
Loading…
x
Reference in New Issue
Block a user