diff options
author | Andrew M. Kuchling <amk@amk.ca> | 2001-01-24 15:43:09 (GMT) |
---|---|---|
committer | Andrew M. Kuchling <amk@amk.ca> | 2001-01-24 15:43:09 (GMT) |
commit | 506f0b1fc6d44fbc1dffae47b0599ddc916dc596 (patch) | |
tree | da8e15e14e00b931cb739ba435d2b22c6e163572 /Lib/distutils | |
parent | f47075e86d4693cbe4a176a9a39c90dceef2f005 (diff) | |
download | cpython-506f0b1fc6d44fbc1dffae47b0599ddc916dc596.zip cpython-506f0b1fc6d44fbc1dffae47b0599ddc916dc596.tar.gz cpython-506f0b1fc6d44fbc1dffae47b0599ddc916dc596.tar.bz2 |
Part of patch #102409: special cases for Cygwin:
Lib/distutils/command/build_ext.py(build_ext.finalize_options): Add
Cygwin specific code to append Python's library directory to the
extension's list of library directories.
(build_ext.get_libraries): Add Cygwin specific code to append Python's
(import) library to the extension's list of libraries.
Diffstat (limited to 'Lib/distutils')
-rw-r--r-- | Lib/distutils/command/build_ext.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py index 936a5f6..2876c35 100644 --- a/Lib/distutils/command/build_ext.py +++ b/Lib/distutils/command/build_ext.py @@ -163,6 +163,17 @@ class build_ext (Command): self.build_temp = os.path.join(self.build_temp, "Debug") else: self.build_temp = os.path.join(self.build_temp, "Release") + + # for extensions under Cygwin Python's library directory must be + # appended to library_dirs + if sys.platform[:6] == 'cygwin': + if string.find(sys.executable, sys.exec_prefix) != -1: + # building third party extensions + self.library_dirs.append(os.path.join(sys.prefix, "lib", "python" + sys.version[:3], "config")) + else: + # building python standard extensions + self.library_dirs.append('.') + # finalize_options () @@ -576,6 +587,13 @@ class build_ext (Command): # don't extend ext.libraries, it may be shared with other # extensions, it is a reference to the original list return ext.libraries + [pythonlib] + elif sys.platform[:6] == "cygwin": + template = "python%d.%d" + pythonlib = (template % + (sys.hexversion >> 24, (sys.hexversion >> 16) & 0xff)) + # don't extend ext.libraries, it may be shared with other + # extensions, it is a reference to the original list + return ext.libraries + [pythonlib] else: return ext.libraries |