Issue #13756: Fix building extensions modules on Cygwin
Patch by Roumen Petrov, based on original patch by Jason Tishler.
diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py
index 74de782..9155626 100644
--- a/Lib/distutils/command/build_ext.py
+++ b/Lib/distutils/command/build_ext.py
@@ -715,13 +715,6 @@
return ext.libraries + [pythonlib]
else:
return ext.libraries
- 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]
elif sys.platform[:6] == "atheos":
from distutils import sysconfig
diff --git a/Makefile.pre.in b/Makefile.pre.in
index a2174ce..ce5296e 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -674,7 +674,7 @@
# This rule builds the Cygwin Python DLL and import library if configured
# for a shared core library; otherwise, this rule is a noop.
-$(DLLLIBRARY) libpython$(VERSION).dll.a: $(LIBRARY_OBJS)
+$(DLLLIBRARY) libpython$(LDVERSION).dll.a: $(LIBRARY_OBJS)
if test -n "$(DLLLIBRARY)"; then \
$(LDSHARED) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \
$(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST); \
diff --git a/Misc/NEWS b/Misc/NEWS
index 9d48ff8..340f91d 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -173,6 +173,9 @@
Build
-----
+- Issue #13756: Fix building extensions modules on Cygwin. Patch by Roumen
+ Petrov, based on original patch by Jason Tishler.
+
- Issue #21085: Add configure check for siginfo_t.si_band, which Cygwin does
not provide. Patch by Masayuki Yamamoto with review and rebase by Erik Bray.
diff --git a/Modules/makesetup b/Modules/makesetup
index 3297b78..b872337 100755
--- a/Modules/makesetup
+++ b/Modules/makesetup
@@ -91,7 +91,7 @@
else
ExtraLibDir='$(LIBPL)'
fi
- ExtraLibs="-L$ExtraLibDir -lpython\$(VERSION)";;
+ ExtraLibs="-L$ExtraLibDir -lpython\$(LDVERSION)";;
esac
# Main loop