summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/distutils/sysconfig.py14
-rw-r--r--Misc/NEWS4
2 files changed, 13 insertions, 5 deletions
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
index 54ccec4..bb53315 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
@@ -71,15 +71,19 @@ def get_python_inc(plat_specific=0, prefix=None):
"""
if prefix is None:
prefix = plat_specific and EXEC_PREFIX or PREFIX
+
if os.name == "posix":
if python_build:
- base = os.path.dirname(os.path.abspath(sys.executable))
+ buildir = os.path.dirname(sys.executable)
if plat_specific:
- inc_dir = base
+ # python.h is located in the buildir
+ inc_dir = buildir
else:
- inc_dir = os.path.join(base, "Include")
- if not os.path.exists(inc_dir):
- inc_dir = os.path.join(os.path.dirname(base), "Include")
+ # the source dir is relative to the buildir
+ srcdir = os.path.abspath(os.path.join(buildir,
+ get_config_var('srcdir')))
+ # Include is located in the srcdir
+ inc_dir = os.path.join(srcdir, "Include")
return inc_dir
return os.path.join(prefix, "include", "python" + get_python_version())
elif os.name == "nt":
diff --git a/Misc/NEWS b/Misc/NEWS
index 16a4190..5490b01 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -33,6 +33,10 @@ Core and Builtins
Library
-------
+- Issue #8577: distutils.sysconfig.get_python_inc() now makes a difference
+ between the build dir and the source dir when looking for "python.h" or
+ "Include".
+
- Issue #8464: tarfile no longer creates files with execute permissions set
when mode="w|" is used.