From: Brett Cannon Date: Sun, 24 Apr 2005 22:26:38 +0000 (+0000) Subject: Introduced EXTRA_CFLAGS as an environment variable used by the Makefile. Meant X-Git-Tag: v2.5a0~1803 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=08cd598c2145d00f1517c93cabf80a5d7d2a4bc0;p=thirdparty%2FPython%2Fcpython.git 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. --- diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py index aae0f27cb576..1bd62097f04e 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 e4d9008d50ab..7b440f311880 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 23f760b774bd..1557a46ce1b5 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 feff20e5cd7a..811147668f63 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 dedd3bd2e457..f1c3a890ea1d 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 ---------