Change setup.py to catch all exceptions.
- Rename module if the exception was an ImportError
- Only warn if the exception was any other error
Revert _iconv_codec to raising a RuntimeError.
It also prevents building against the real X headers, if installed.
After discussions with the Cygwin project lead, I believe that building
against the real X headers is OK. Especially, since the psuedo-X headers
are *not* installed by the Cygwin Tcl/Tk binary package.
Note that this patch just reverts the lib_prefix (i.e., "cyg") portion
of my Tcl/Tk 8.3 patch. It seems that Cygwin Tcl/Tk is using a more
normal file naming convention again.
compiler flags which are necessary to get a clean compile. The former is
for user-specified optimizer, debug, trace fiddling. See patch 640843.
Add /sw/lib and /sw/include to setup.py search paths on Darwin to take
advantage of fink goodies.
Add scriptsinstall target to Makefile to install certain scripts from
Tools/scripts directory.
The attached patch enables Cygwin Python to
build cleanly against the latest Cygwin Tcl/Tk
which is based on Tcl/Tk 8.3. It also prevents
building against the real X headers, if installed.
of using the CCompiler.find_library_file() provided by the Distutils.
This patch fixes it to use the Distutils method at the cost of some
additional glue.
(The duplication resulted in the SSL module not being automatically
built on Macs; the Distutils knew that shared libraries on OS X have a
.dylib extension, but the setup.py code didn't.)
whether they crash or not is not a matter of using a framework or not,
but whether the code is run from an app bundle or not. And that it
_can_ crash (instead of tracing back) is Apple's bug anyway, not ours.
Push /usr/... further down the list - always check /usr/local/... before
/usr/...
Doubt this will help with http://python.org/sf/589427 or not, but these
changes were prompted by my investigation of that bug report. I wasn't able
to reproduce that problem though
This patch enables setup.py to find gettext routines when they are
located in libintl instead of libc. Although I developed this patch for
Cygwin, I hope that it can be easily updated to support other platforms
(if necessary). I tested this patch under Cygwin and Red Hat Linux 7.1.
setup.py (indirectly) script to build the standard dynamically loaded
modules, the errno module is being made static so it will always be
available.
Closes SF bug #591205 (needed on trunk only).
OSX framework build process. Things fixed/modified:
- the filesystem case-sensitivity test now works for builds outside
the source directory
- various other fixes for building outside the source directory
- python.app now has a target in the main Makefile
- WASTE and AquaTk are found more automatically
library. Since multiple versions can be installed simultaneously, it's
crucial that you only select libraries and header files which are compatible
with each other. Version checking is done from highest version to lowest.
Building using version 1 of Berkeley DB is disabled by default because of
the hash file bugs people keep rediscovering. It can be enabled by
uncommenting a few lines in setup.py. Closes patch 553108.
modules, distutils does not understand that the build version of the
source tree is needed.
This patch fixes distutils.sysconfig to understand that the running
Python is part of the build tree and needs to use the appropriate
"shape" of the tree. This does not assume anything about the current
directory, so can be used to build 3rd-party modules using Python's
build tree as well.
This is useful since it allows us to use a non-installed debug-mode
Python with 3rd-party modules for testing. It as the side-effect that
set_python_build() is no longer needed (the hack which was added to
allow distutils to be used to build the "standard" extension modules).
This closes SF patch #547734.
mwh wrote:
> Jason, feel free to complain if you think this isn't
> the right thing to do.
I guess that I would like to complain and reopen this
issue. :,) I cannot build a Python 2.2.1 with threads
under Cygwin without this patch even though I'm using
Michael's static _socket workaround. This is due to the
Cygwin fork() problem with DLL base address conflicts
that are triggered by importing many modules during the
setup.py run. Similar problems can also be caused by
regrtest.py.
Even after my rebase patch is accepted into Cygwin's
setup.exe, I feel this patch will still be necessary.
This is because during the build process, the shared
extensions (i.e., DLLs) will not be rebased yet. Hence,
the potential for DLL base address conflicts will exist.
One way to obviate this patch is to push the rebase
functionality into Cygwin's ld. Unfortunately, I don't
think this is likely to happen. Another possible way,
is to use the yet to be defined and implemented unload
module functionality:
http://mail.python.org/pipermail/python-dev/2001-December/019028.html
helper module _ssl.
The support for the RAND_* APIs in _ssl is now only enabled
for OpenSSL 0.9.5 and up since they were added in that
release.
Note that socketmodule.* should really be renamed to _socket.* --
unfortunately, this seems to lose the CVS history of the file.
Please review and test... I was only able to test the header file
chaos in socketmodule.c/h on Linux. The test run through fine
and compiles don't give errors or warnings.
WARNING: This patch does *not* include changes to the various
non-Unix build process files.
[ #433775 ] module build dir first in test import
though not in the way the summary would suggest; use imp.load_dynamic()
in setup.py to ensure we're testing the dynamic object we think we are.
[ #420565 ] makes setup.py search sys.prefix
I think this also fixes some bug in the tracker about not searching
directories that don't exist, but I can't find the report :(
distutils for the library modules built as shared objects. A better solution
appears possible, but with the threat that the distutils becomes more
magical ("complex").
This closes SF bug #458343.
if you are not building while logged in to the console (you cannot
connect to the window server, so the Carbon library doesn't initialize).
Added a quick hack to skip the import test, with a warning, for modules
linked against Carbon.
routines. As of 10.1 using Carbon will crash Python if no window server is
available (ssh connection, console mode, MacOSX Server). This fixes bug
#466907.
A result of this mod is that the default 8bit encoding on OSX is now ASCII,
for the time being. Also, the extension modules that need the Carbon
framework now explicitly include it in setup.py.