Skip to content

Commit

Permalink
Fix get_python_inc() to work when building in a directory separate from
Browse files Browse the repository at this point in the history
the source.  Also, define 'srcdir' on non-posix platforms.


git-svn-id: http://svn.python.org/projects/python/trunk@69302 6015fed2-1504-0410-9fe1-9d1591cc4771
  • Loading branch information
neil.schemenauer committed Feb 5, 2009
1 parent f7e7875 commit c862f76
Showing 1 changed file with 11 additions and 5 deletions.
16 changes: 11 additions & 5 deletions Lib/distutils/sysconfig.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,14 +73,17 @@ def get_python_inc(plat_specific=0, prefix=None):
prefix = plat_specific and EXEC_PREFIX or PREFIX
if os.name == "posix":
if python_build:
# Assume the executable is in the build directory. The
# pyconfig.h file should be in the same directory. Since
# the build directory may not be the source directory, we
# must use "srcdir" from the makefile to find the "Include"
# directory.
base = os.path.dirname(os.path.abspath(sys.executable))
if plat_specific:
inc_dir = base
return base
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")
return inc_dir
incdir = os.path.join(get_config_var('srcdir'), 'Include')
return os.path.normpath(incdir)
return os.path.join(prefix, "include", "python" + get_python_version())
elif os.name == "nt":
return os.path.join(prefix, "include")
Expand Down Expand Up @@ -521,6 +524,9 @@ def get_config_vars(*args):
_config_vars['prefix'] = PREFIX
_config_vars['exec_prefix'] = EXEC_PREFIX

if 'srcdir' not in _config_vars:
_config_vars['srcdir'] = project_base

if sys.platform == 'darwin':
kernel_version = os.uname()[2] # Kernel version (8.4.3)
major_version = int(kernel_version.split('.')[0])
Expand Down

0 comments on commit c862f76

Please sign in to comment.