This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Cygwin forced --enable-shared patch
Type: Stage:
Components: Build Versions:
process
Status: closed Resolution: accepted
Dependencies: Superseder:
Assigned To: loewis Nosy List: jlt63, loewis, mwh
Priority: normal Keywords: patch

Created on 2002-05-01 17:47 by jlt63, last changed 2022-04-10 16:05 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
configure.in.diff jlt63, 2002-05-02 20:09 patch version #2
Messages (8)
msg39803 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2002-05-01 17:47
This patch forces the configure --enable-shared
option under Cygwin even if not specified by the
user. Cygwin, like Win32, requires a shared python
library.
msg39804 - (view) Author: Michael Hudson (mwh) (Python committer) Date: 2002-05-02 14:08
Logged In: YES 
user_id=6656

Martin, is this good style?
msg39805 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2002-05-02 17:28
Logged In: YES 
user_id=21627

Given that cygwin has indeed the same requirements as the
VC++ build, I think it is fine to let enable-shared
*default* to shared. 

However, it is not good style to force it: it is perfectly
sensible to build a python.exe/libpython.a, as the
requirement for a shared python.dll only comes up when you
want to load modules dynamically. In cases where you can
statically link alll modules that you will ever need (in
particular for frozen applications), it would be unfortunate
if you are forced to use a python dll (since it would not
allow for stand-alone binaries).

Hence, I'm rejecting the patch in its current form; feel
free to resubmit it in a form where an explicit
--disable-shared would override the default.
msg39806 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2002-05-02 20:09
Logged In: YES 
user_id=86216

Is the attached any better?

BTW, can one build Win32 Python statically?

Note that currently, Cygwin Python cannot be built
statically. To do so would require additional work...
msg39807 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2002-05-03 05:54
Logged In: YES 
user_id=21627

That patch looks fine, applied as configure.in 1.314,
configure 1.304.

As for building Python statically: the MSVC project files
certainly don't support it. I haven't tried, but I can see
no reason why this configuration couldn't work.
msg39808 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2002-05-03 15:23
Logged In: YES 
user_id=86216

I just tried Cygwin and its possible albeit painful.
One must edit their Modules/Setup file to make
"all" standard modules static too. Otherwise,
when the interpretter loads a standard module it
goes bang! I presume that Win32 would have
similar problems.

BTW, thanks for accepting my patch take 2.
msg39809 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2002-05-03 15:46
Logged In: YES 
user_id=21627

That you have to edit Modules/Setup to get modules linked
statically is the standard procedure on Unix; this is what
it always was. With MSVC, you would normally create a
project to incorporate all source code, since the
Modules/Setup mechanism is not available.
msg39810 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2002-05-03 18:44
Logged In: YES 
user_id=86216

Unfortunately for Cygwin, all standard modules would
fail to build until one edits Modules/Setup as appropriate.
On other Unix platforms, at least the standard modules
build out of the chute.
History
Date User Action Args
2022-04-10 16:05:17adminsetgithub: 36533
2002-05-01 17:47:39jlt63create