Python on OS X 10.3 and above now uses dlopen() (via dynload_shlib.c)
to load extension modules and now provides the dl module. As a result, sys.setdlopenflags() now works correctly on these systems. (SF patch #1454844)
This commit is contained in:
parent
a50794b620
commit
8220174489
|
@ -945,7 +945,6 @@ _expectations = {
|
|||
test_cd
|
||||
test_cl
|
||||
test_curses
|
||||
test_dl
|
||||
test_gdbm
|
||||
test_gl
|
||||
test_imgfile
|
||||
|
|
|
@ -10,6 +10,7 @@ sharedlibs = [
|
|||
('/usr/lib/libc.so', 'getpid'),
|
||||
('/lib/libc.so.6', 'getpid'),
|
||||
('/usr/bin/cygwin1.dll', 'getpid'),
|
||||
('/usr/lib/libc.dylib', 'getpid'),
|
||||
]
|
||||
|
||||
for s, func in sharedlibs:
|
||||
|
|
|
@ -478,6 +478,7 @@ Jean-Fran
|
|||
Dan Pierson
|
||||
Martijn Pieters
|
||||
François Pinard
|
||||
Zach Pincus
|
||||
Michael Piotrowski
|
||||
Iustin Pop
|
||||
John Popplewell
|
||||
|
|
|
@ -12,6 +12,12 @@ What's New in Python 2.5 alpha 2?
|
|||
Core and builtins
|
||||
-----------------
|
||||
|
||||
- Python on OS X 10.3 and above now uses dlopen() (via dynload_shlib.c)
|
||||
to load extension modules and now provides the dl module. As a result,
|
||||
sys.setdlopenflags() now works correctly on these systems. (SF patch
|
||||
#1454844)
|
||||
|
||||
|
||||
Extension Modules
|
||||
-----------------
|
||||
|
||||
|
|
|
@ -10819,7 +10819,7 @@ echo "${ECHO_T}$enable_toolbox_glue" >&6
|
|||
|
||||
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
Darwin/[01234567].*)
|
||||
Darwin/[01567]\..*)
|
||||
OTHER_LIBTOOL_OPT="-prebind -seg1addr 0x10000000"
|
||||
;;
|
||||
Darwin/*)
|
||||
|
@ -10829,7 +10829,7 @@ esac
|
|||
|
||||
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
Darwin/[01234567].*)
|
||||
Darwin/[01567]\..*)
|
||||
LIBTOOL_CRUFT="-framework System -lcc_dynamic -arch_only `arch`"
|
||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
||||
|
@ -13980,7 +13980,8 @@ then
|
|||
;;
|
||||
BeOS*) DYNLOADFILE="dynload_beos.o";;
|
||||
hp*|HP*) DYNLOADFILE="dynload_hpux.o";;
|
||||
Darwin/*) DYNLOADFILE="dynload_next.o";;
|
||||
# Use dynload_next.c only on 10.2 and below, which don't have native dlopen()
|
||||
Darwin/[0156]\..*) DYNLOADFILE="dynload_next.o";;
|
||||
atheos*) DYNLOADFILE="dynload_atheos.o";;
|
||||
*)
|
||||
# use dynload_shlib.c and dlopen() if we have it; otherwise stub
|
||||
|
|
|
@ -1259,7 +1259,7 @@ AC_MSG_RESULT($enable_toolbox_glue)
|
|||
|
||||
AC_SUBST(OTHER_LIBTOOL_OPT)
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
Darwin/@<:@01234567@:>@.*)
|
||||
Darwin/@<:@01567@:>@\..*)
|
||||
OTHER_LIBTOOL_OPT="-prebind -seg1addr 0x10000000"
|
||||
;;
|
||||
Darwin/*)
|
||||
|
@ -1269,7 +1269,7 @@ esac
|
|||
|
||||
AC_SUBST(LIBTOOL_CRUFT)
|
||||
case $ac_sys_system/$ac_sys_release in
|
||||
Darwin/@<:@01234567@:>@.*)
|
||||
Darwin/@<:@01567@:>@\..*)
|
||||
LIBTOOL_CRUFT="-framework System -lcc_dynamic -arch_only `arch`"
|
||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
||||
|
@ -2110,7 +2110,8 @@ then
|
|||
;;
|
||||
BeOS*) DYNLOADFILE="dynload_beos.o";;
|
||||
hp*|HP*) DYNLOADFILE="dynload_hpux.o";;
|
||||
Darwin/*) DYNLOADFILE="dynload_next.o";;
|
||||
# Use dynload_next.c only on 10.2 and below, which don't have native dlopen()
|
||||
Darwin/@<:@0156@:>@\..*) DYNLOADFILE="dynload_next.o";;
|
||||
atheos*) DYNLOADFILE="dynload_atheos.o";;
|
||||
*)
|
||||
# use dynload_shlib.c and dlopen() if we have it; otherwise stub
|
||||
|
|
2
setup.py
2
setup.py
|
@ -969,7 +969,7 @@ class PyBuildExt(build_ext):
|
|||
if sys.maxint == 0x7fffffff:
|
||||
# This requires sizeof(int) == sizeof(long) == sizeof(char*)
|
||||
dl_inc = find_file('dlfcn.h', [], inc_dirs)
|
||||
if (dl_inc is not None) and (platform not in ['atheos', 'darwin']):
|
||||
if (dl_inc is not None) and (platform not in ['atheos']):
|
||||
exts.append( Extension('dl', ['dlmodule.c']) )
|
||||
|
||||
# Thomas Heller's _ctypes module
|
||||
|
|
Loading…
Reference in New Issue