summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrett Cannon <bcannon@gmail.com>2005-04-24 22:26:38 (GMT)
committerBrett Cannon <bcannon@gmail.com>2005-04-24 22:26:38 (GMT)
commit08cd598c2145d00f1517c93cabf80a5d7d2a4bc0 (patch)
treeff364e13d14455f5850f7af139bd721a1c371ddd
parent43148c84136697b56cdd9327a64ac3225fe48651 (diff)
downloadcpython-08cd598c2145d00f1517c93cabf80a5d7d2a4bc0.zip
cpython-08cd598c2145d00f1517c93cabf80a5d7d2a4bc0.tar.gz
cpython-08cd598c2145d00f1517c93cabf80a5d7d2a4bc0.tar.bz2
Introduced EXTRA_CFLAGS as an environment variable used by the Makefile. Meant
to be used for flags that change binary compatibility. Distutils was tweaked to also use the variable if used during compilation of the interpreter.
-rw-r--r--Lib/distutils/sysconfig.py7
-rw-r--r--Makefile.pre.in2
-rw-r--r--Misc/NEWS5
-rw-r--r--Misc/SpecialBuilds.txt5
-rw-r--r--README3
5 files changed, 15 insertions, 7 deletions
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
index aae0f27..1bd6209 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
@@ -146,8 +146,9 @@ def customize_compiler(compiler):
varies across Unices and is stored in Python's Makefile.
"""
if compiler.compiler_type == "unix":
- (cc, cxx, opt, basecflags, ccshared, ldshared, so_ext) = \
- get_config_vars('CC', 'CXX', 'OPT', 'BASECFLAGS', 'CCSHARED', 'LDSHARED', 'SO')
+ (cc, cxx, opt, extra_cflags, basecflags, ccshared, ldshared, so_ext) = \
+ get_config_vars('CC', 'CXX', 'OPT', 'EXTRA_CFLAGS', 'BASECFLAGS',
+ 'CCSHARED', 'LDSHARED', 'SO')
if os.environ.has_key('CC'):
cc = os.environ['CC']
@@ -171,7 +172,7 @@ def customize_compiler(compiler):
opt = opt + ' ' + os.environ['CPPFLAGS']
ldshared = ldshared + ' ' + os.environ['CPPFLAGS']
- cc_cmd = cc + ' ' + opt
+ cc_cmd = ' '.join(str(x) for x in (cc, opt, extra_cflags) if x)
compiler.set_executables(
preprocessor=cpp,
compiler=cc_cmd,
diff --git a/Makefile.pre.in b/Makefile.pre.in
index e4d9008..7b440f3 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -55,7 +55,7 @@ MAKESETUP= $(srcdir)/Modules/makesetup
# Compiler options
OPT= @OPT@
BASECFLAGS= @BASECFLAGS@
-CFLAGS= $(BASECFLAGS) $(OPT)
+CFLAGS= $(BASECFLAGS) $(OPT) $(EXTRA_CFLAGS)
# Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to
# be able to build extension modules using the directories specified in the
# environment variables
diff --git a/Misc/NEWS b/Misc/NEWS
index 23f760b..1557a46 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -276,6 +276,11 @@ Library
Build
-----
+- EXTRA_CFLAGS has been introduced as an environment variable to hold compiler
+ flags that change binary compatibility. Changes were also made to
+ distutils.sysconfig to also use the environment variable when used during
+ compilation of the interpreter.
+
- SF patch 1171735: Darwin 8's headers are anal about POSIX compliance,
and linking has changed (prebinding is now deprecated, and libcc_dynamic
no longer exists). This configure patch makes things right.
diff --git a/Misc/SpecialBuilds.txt b/Misc/SpecialBuilds.txt
index feff20e..8111476 100644
--- a/Misc/SpecialBuilds.txt
+++ b/Misc/SpecialBuilds.txt
@@ -1,9 +1,8 @@
This file describes some special Python build types enabled via
compile-time preprocessor defines.
-It is best to define these options in the OPT environment variable;
-``OPT="-DPy_REF_DEBUG" ./configure``. If you want the default values of
-OPT to also be included you will need to add them in yourself manually.
+It is best to define these options in the EXTRA_FLAGS environment variable;
+``EXTRA_CFLAGS="-DPy_REF_DEBUG" ./configure``.
---------------------------------------------------------------------------
Py_REF_DEBUG introduced in 1.4
diff --git a/README b/README
index dedd3bd..f1c3a89 100644
--- a/README
+++ b/README
@@ -827,6 +827,9 @@ the -Wall and -Wstrict-prototypes options.
Additional debugging code to help debug memory management problems can
be enabled by using the --with-pydebug option to the configure script.
+For flags that change binary compatibility, use the EXTRA_CFLAGS
+variable.
+
Profiling
---------