Patch 1471883: --enable-universalsdk on Mac OS X
This commit is contained in:
parent
f674939a2b
commit
988117fd63
|
@ -366,8 +366,8 @@ def _init_posix():
|
||||||
# MACOSX_DEPLOYMENT_TARGET: configure bases some choices on it so
|
# MACOSX_DEPLOYMENT_TARGET: configure bases some choices on it so
|
||||||
# it needs to be compatible.
|
# it needs to be compatible.
|
||||||
# If it isn't set we set it to the configure-time value
|
# If it isn't set we set it to the configure-time value
|
||||||
if sys.platform == 'darwin' and g.has_key('CONFIGURE_MACOSX_DEPLOYMENT_TARGET'):
|
if sys.platform == 'darwin' and g.has_key('MACOSX_DEPLOYMENT_TARGET'):
|
||||||
cfg_target = g['CONFIGURE_MACOSX_DEPLOYMENT_TARGET']
|
cfg_target = g['MACOSX_DEPLOYMENT_TARGET']
|
||||||
cur_target = os.getenv('MACOSX_DEPLOYMENT_TARGET', '')
|
cur_target = os.getenv('MACOSX_DEPLOYMENT_TARGET', '')
|
||||||
if cur_target == '':
|
if cur_target == '':
|
||||||
cur_target = cfg_target
|
cur_target = cfg_target
|
||||||
|
|
|
@ -108,13 +108,17 @@ EXE= @EXEEXT@
|
||||||
BUILDEXE= @BUILDEXEEXT@
|
BUILDEXE= @BUILDEXEEXT@
|
||||||
|
|
||||||
# Short name and location for Mac OS X Python framework
|
# Short name and location for Mac OS X Python framework
|
||||||
|
UNIVERSALSDK=@UNIVERSALSDK@
|
||||||
PYTHONFRAMEWORK= @PYTHONFRAMEWORK@
|
PYTHONFRAMEWORK= @PYTHONFRAMEWORK@
|
||||||
PYTHONFRAMEWORKDIR= @PYTHONFRAMEWORKDIR@
|
PYTHONFRAMEWORKDIR= @PYTHONFRAMEWORKDIR@
|
||||||
PYTHONFRAMEWORKPREFIX= @PYTHONFRAMEWORKPREFIX@
|
PYTHONFRAMEWORKPREFIX= @PYTHONFRAMEWORKPREFIX@
|
||||||
PYTHONFRAMEWORKINSTALLDIR= @PYTHONFRAMEWORKINSTALLDIR@
|
PYTHONFRAMEWORKINSTALLDIR= @PYTHONFRAMEWORKINSTALLDIR@
|
||||||
# Deployment target selected during configure, to be checked
|
# Deployment target selected during configure, to be checked
|
||||||
# by distutils
|
# by distutils. The export statement is needed to ensure that the
|
||||||
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@
|
# deployment target is active during build.
|
||||||
|
MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@
|
||||||
|
@EXPORT_MACOSX_DEPLOYMENT_TARGET@export MACOSX_DEPLOYMENT_TARGET
|
||||||
|
|
||||||
# Options to enable prebinding (for fast startup prior to Mac OS X 10.3)
|
# Options to enable prebinding (for fast startup prior to Mac OS X 10.3)
|
||||||
OTHER_LIBTOOL_OPT=@OTHER_LIBTOOL_OPT@
|
OTHER_LIBTOOL_OPT=@OTHER_LIBTOOL_OPT@
|
||||||
|
|
||||||
|
@ -377,8 +381,17 @@ $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \
|
||||||
$(RESSRCDIR)/version.plist \
|
$(RESSRCDIR)/version.plist \
|
||||||
$(RESSRCDIR)/English.lproj/InfoPlist.strings
|
$(RESSRCDIR)/English.lproj/InfoPlist.strings
|
||||||
$(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)
|
$(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)
|
||||||
|
if test "${UNIVERSALSDK}"; then \
|
||||||
|
$(CC) -o $(LDLIBRARY) -arch i386 -arch ppc -dynamiclib \
|
||||||
|
-isysroot "${UNIVERSALSDK}" \
|
||||||
|
-all_load $(LIBRARY) -Wl,-single_module \
|
||||||
|
-install_name $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python \
|
||||||
|
-compatibility_version $(VERSION) \
|
||||||
|
-current_version $(VERSION); \
|
||||||
|
else \
|
||||||
libtool -o $(LDLIBRARY) -dynamic $(OTHER_LIBTOOL_OPT) $(LIBRARY) \
|
libtool -o $(LDLIBRARY) -dynamic $(OTHER_LIBTOOL_OPT) $(LIBRARY) \
|
||||||
@LIBTOOL_CRUFT@
|
@LIBTOOL_CRUFT@ ;\
|
||||||
|
fi
|
||||||
$(INSTALL) -d -m $(DIRMODE) \
|
$(INSTALL) -d -m $(DIRMODE) \
|
||||||
$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj
|
$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj
|
||||||
$(INSTALL_DATA) $(RESSRCDIR)/Info.plist \
|
$(INSTALL_DATA) $(RESSRCDIR)/Info.plist \
|
||||||
|
@ -568,6 +581,19 @@ testall: all platform
|
||||||
-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
|
-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
|
||||||
$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
|
$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
|
||||||
|
|
||||||
|
# Run the unitests for both architectures in a Universal build on OSX
|
||||||
|
# Must be run on an Intel box.
|
||||||
|
testuniversal: all platform
|
||||||
|
if [ `arch` != 'i386' ];then \
|
||||||
|
echo "This can only be used on OSX/i386" ;\
|
||||||
|
exit 1 ;\
|
||||||
|
fi
|
||||||
|
-find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f
|
||||||
|
-$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
|
||||||
|
$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall
|
||||||
|
$(RUNSHARED) /usr/libexec/oah/translate ./$(BUILDPYTHON) -E -tt $(TESTPROG) $(TESTOPTS) -uall
|
||||||
|
|
||||||
|
|
||||||
# Like testall, but with a single pass only
|
# Like testall, but with a single pass only
|
||||||
buildbottest: all platform
|
buildbottest: all platform
|
||||||
$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall -rw
|
$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -uall -rw
|
||||||
|
|
7
README
7
README
|
@ -579,7 +579,12 @@ MacOSX: The tests will crash on both 10.1 and 10.2 with SEGV in
|
||||||
want to use any Aqua-based GUI toolkit (whether Tkinter, wxPython,
|
want to use any Aqua-based GUI toolkit (whether Tkinter, wxPython,
|
||||||
Carbon, Cocoa or anything else).
|
Carbon, Cocoa or anything else).
|
||||||
|
|
||||||
See Mac/OSX/README for more information on framework builds.
|
You may also want to try the configure option "--enable-universalsdk"
|
||||||
|
which builds Python as a universal binary with support for the
|
||||||
|
i386 and PPC architetures. This requires Xcode 2.1 or later to build.
|
||||||
|
|
||||||
|
See Mac/OSX/README for more information on framework and
|
||||||
|
universal builds.
|
||||||
|
|
||||||
Cygwin: With recent (relative to the time of writing, 2001-12-19)
|
Cygwin: With recent (relative to the time of writing, 2001-12-19)
|
||||||
Cygwin installations, there are problems with the interaction
|
Cygwin installations, there are problems with the interaction
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# From configure.in Revision: 45387 .
|
# From configure.in Revision: 45392 .
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.59 for python 2.5.
|
# Generated by GNU Autoconf 2.59 for python 2.5.
|
||||||
#
|
#
|
||||||
|
@ -312,7 +312,7 @@ ac_includes_default="\
|
||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
#endif"
|
#endif"
|
||||||
|
|
||||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS VERSION SOVERSION CONFIG_ARGS PYTHONFRAMEWORK PYTHONFRAMEWORKDIR PYTHONFRAMEWORKPREFIX PYTHONFRAMEWORKINSTALLDIR MACHDEP SGI_ABI EXTRAPLATDIR EXTRAMACHDEPPATH CONFIGURE_MACOSX_DEPLOYMENT_TARGET CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX MAINCC CPP EGREP BUILDEXEEXT LIBRARY LDLIBRARY DLLLIBRARY BLDLIBRARY LDLIBRARYDIR INSTSONAME RUNSHARED LINKCC RANLIB ac_ct_RANLIB AR SVNVERSION INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN OPT BASECFLAGS OTHER_LIBTOOL_OPT LIBTOOL_CRUFT SO LDSHARED BLDSHARED CCSHARED LINKFORSHARED CFLAGSFORSHARED SHLIBS USE_SIGNAL_MODULE SIGNAL_OBJS USE_THREAD_MODULE LDLAST THREADOBJ DLINCLDIR DYNLOADFILE MACHDEP_OBJS TRUE LIBOBJS HAVE_GETHOSTBYNAME_R_6_ARG HAVE_GETHOSTBYNAME_R_5_ARG HAVE_GETHOSTBYNAME_R_3_ARG HAVE_GETHOSTBYNAME_R HAVE_GETHOSTBYNAME LIBM LIBC UNICODE_OBJS THREADHEADERS SRCDIRS LTLIBOBJS'
|
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS VERSION SOVERSION CONFIG_ARGS UNIVERSALSDK PYTHONFRAMEWORK PYTHONFRAMEWORKDIR PYTHONFRAMEWORKPREFIX PYTHONFRAMEWORKINSTALLDIR MACHDEP SGI_ABI EXTRAPLATDIR EXTRAMACHDEPPATH CONFIGURE_MACOSX_DEPLOYMENT_TARGET EXPORT_MACOSX_DEPLOYMENT_TARGET CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX MAINCC CPP EGREP BUILDEXEEXT LIBRARY LDLIBRARY DLLLIBRARY BLDLIBRARY LDLIBRARYDIR INSTSONAME RUNSHARED LINKCC RANLIB ac_ct_RANLIB AR SVNVERSION INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN OPT BASECFLAGS OTHER_LIBTOOL_OPT LIBTOOL_CRUFT SO LDSHARED BLDSHARED CCSHARED LINKFORSHARED CFLAGSFORSHARED SHLIBS USE_SIGNAL_MODULE SIGNAL_OBJS USE_THREAD_MODULE LDLAST THREADOBJ DLINCLDIR DYNLOADFILE MACHDEP_OBJS TRUE LIBOBJS HAVE_GETHOSTBYNAME_R_6_ARG HAVE_GETHOSTBYNAME_R_5_ARG HAVE_GETHOSTBYNAME_R_3_ARG HAVE_GETHOSTBYNAME_R HAVE_GETHOSTBYNAME LIBM LIBC UNICODE_OBJS THREADHEADERS SRCDIRS LTLIBOBJS'
|
||||||
ac_subst_files=''
|
ac_subst_files=''
|
||||||
|
|
||||||
# Initialize some variables set by options.
|
# Initialize some variables set by options.
|
||||||
|
@ -845,6 +845,8 @@ if test -n "$ac_init_help"; then
|
||||||
Optional Features:
|
Optional Features:
|
||||||
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
||||||
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
||||||
|
--enable-universalsdk[SDKDIR]
|
||||||
|
Build agains Mac OS X 10.4u SDK (ppc/i386)
|
||||||
--enable-framework[=INSTALLDIR]
|
--enable-framework[=INSTALLDIR]
|
||||||
Build (MacOSX|Darwin) framework
|
Build (MacOSX|Darwin) framework
|
||||||
--enable-shared disable/enable building shared python library
|
--enable-shared disable/enable building shared python library
|
||||||
|
@ -1400,6 +1402,33 @@ define_xopen_source=yes
|
||||||
|
|
||||||
CONFIG_ARGS="$ac_configure_args"
|
CONFIG_ARGS="$ac_configure_args"
|
||||||
|
|
||||||
|
# Check whether --enable-universalsdk or --disable-universalsdk was given.
|
||||||
|
if test "${enable_universalsdk+set}" = set; then
|
||||||
|
enableval="$enable_universalsdk"
|
||||||
|
|
||||||
|
case $enableval in
|
||||||
|
yes)
|
||||||
|
enableval=/Developer/SDKs/MacOSX10.4u.sdk
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
case $enableval in
|
||||||
|
no)
|
||||||
|
UNIVERSALSDK=
|
||||||
|
enable_universalsdk=
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
UNIVERSALSDK=$enableval
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
UNIVERSALSDK=
|
||||||
|
enable_universalsdk=
|
||||||
|
|
||||||
|
fi;
|
||||||
|
|
||||||
|
|
||||||
# Check whether --enable-framework or --disable-framework was given.
|
# Check whether --enable-framework or --disable-framework was given.
|
||||||
if test "${enable_framework+set}" = set; then
|
if test "${enable_framework+set}" = set; then
|
||||||
enableval="$enable_framework"
|
enableval="$enable_framework"
|
||||||
|
@ -1617,7 +1646,9 @@ echo "${ECHO_T}$EXTRAPLATDIR" >&6
|
||||||
# it may influence the way we can build extensions, so distutils
|
# it may influence the way we can build extensions, so distutils
|
||||||
# needs to check it
|
# needs to check it
|
||||||
|
|
||||||
|
|
||||||
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=
|
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=
|
||||||
|
EXPORT_MACOSX_DEPLOYMENT_TARGET='#'
|
||||||
|
|
||||||
# checks for alternative programs
|
# checks for alternative programs
|
||||||
|
|
||||||
|
@ -3807,6 +3838,10 @@ echo "${ECHO_T}$ac_cv_no_strict_aliasing_ok" >&6
|
||||||
# is there any other compiler on Darwin besides gcc?
|
# is there any other compiler on Darwin besides gcc?
|
||||||
Darwin*)
|
Darwin*)
|
||||||
BASECFLAGS="$BASECFLAGS -Wno-long-double -no-cpp-precomp -mno-fused-madd"
|
BASECFLAGS="$BASECFLAGS -Wno-long-double -no-cpp-precomp -mno-fused-madd"
|
||||||
|
if test "${enable_universalsdk}"; then
|
||||||
|
BASECFLAGS="-arch ppc -arch i386 -isysroot ${UNIVERSALSDK} ${BASECFLAGS}"
|
||||||
|
fi
|
||||||
|
|
||||||
;;
|
;;
|
||||||
OSF*)
|
OSF*)
|
||||||
BASECFLAGS="$BASECFLAGS -mieee"
|
BASECFLAGS="$BASECFLAGS -mieee"
|
||||||
|
@ -10753,7 +10788,12 @@ esac
|
||||||
|
|
||||||
case $ac_sys_system/$ac_sys_release in
|
case $ac_sys_system/$ac_sys_release in
|
||||||
Darwin/[01567]\..*)
|
Darwin/[01567]\..*)
|
||||||
LIBTOOL_CRUFT="-framework System -lcc_dynamic -arch_only `arch`"
|
LIBTOOL_CRUFT="-framework System -lcc_dynamic"
|
||||||
|
if test "${enable_universalsdk}"; then
|
||||||
|
:
|
||||||
|
else
|
||||||
|
LIBTOOL_CRUFT="${LIBTOOL_CRUFT} -arch_only `arch`"
|
||||||
|
fi
|
||||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
||||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
||||||
Darwin/*)
|
Darwin/*)
|
||||||
|
@ -10888,9 +10928,16 @@ then
|
||||||
# Use -undefined dynamic_lookup whenever possible (10.3 and later).
|
# Use -undefined dynamic_lookup whenever possible (10.3 and later).
|
||||||
# This allows an extension to be used in any Python
|
# This allows an extension to be used in any Python
|
||||||
cur_target=`sw_vers -productVersion | sed 's/\(10\.[0-9]*\).*/\1/'`
|
cur_target=`sw_vers -productVersion | sed 's/\(10\.[0-9]*\).*/\1/'`
|
||||||
|
if test ${cur_target} '>' 10.2; then
|
||||||
|
cur_target=10.3
|
||||||
|
fi
|
||||||
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET-${cur_target}}
|
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET-${cur_target}}
|
||||||
|
EXPORT_MACOSX_DEPLOYMENT_TARGET=''
|
||||||
if test ${MACOSX_DEPLOYMENT_TARGET-${cur_target}} '>' 10.2
|
if test ${MACOSX_DEPLOYMENT_TARGET-${cur_target}} '>' 10.2
|
||||||
then
|
then
|
||||||
|
if test "${enable_universalsdk}"; then
|
||||||
|
LDFLAGS="-arch i386 -arch ppc -isysroot ${UNIVERSALSDK} ${LDFLAGS}"
|
||||||
|
fi
|
||||||
LDSHARED='$(CC) $(LDFLAGS) -bundle -undefined dynamic_lookup'
|
LDSHARED='$(CC) $(LDFLAGS) -bundle -undefined dynamic_lookup'
|
||||||
BLDSHARED="$LDSHARED"
|
BLDSHARED="$LDSHARED"
|
||||||
else
|
else
|
||||||
|
@ -20313,6 +20360,8 @@ presetting ac_cv_c_bigendian=no (or yes) will help" >&2;}
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Check whether right shifting a negative integer extends the sign bit
|
# Check whether right shifting a negative integer extends the sign bit
|
||||||
# or fills with zeros (like the Cray J90, according to Tim Peters).
|
# or fills with zeros (like the Cray J90, according to Tim Peters).
|
||||||
echo "$as_me:$LINENO: checking whether right shift extends the sign bit" >&5
|
echo "$as_me:$LINENO: checking whether right shift extends the sign bit" >&5
|
||||||
|
@ -22395,6 +22444,7 @@ s,@LIBS@,$LIBS,;t t
|
||||||
s,@VERSION@,$VERSION,;t t
|
s,@VERSION@,$VERSION,;t t
|
||||||
s,@SOVERSION@,$SOVERSION,;t t
|
s,@SOVERSION@,$SOVERSION,;t t
|
||||||
s,@CONFIG_ARGS@,$CONFIG_ARGS,;t t
|
s,@CONFIG_ARGS@,$CONFIG_ARGS,;t t
|
||||||
|
s,@UNIVERSALSDK@,$UNIVERSALSDK,;t t
|
||||||
s,@PYTHONFRAMEWORK@,$PYTHONFRAMEWORK,;t t
|
s,@PYTHONFRAMEWORK@,$PYTHONFRAMEWORK,;t t
|
||||||
s,@PYTHONFRAMEWORKDIR@,$PYTHONFRAMEWORKDIR,;t t
|
s,@PYTHONFRAMEWORKDIR@,$PYTHONFRAMEWORKDIR,;t t
|
||||||
s,@PYTHONFRAMEWORKPREFIX@,$PYTHONFRAMEWORKPREFIX,;t t
|
s,@PYTHONFRAMEWORKPREFIX@,$PYTHONFRAMEWORKPREFIX,;t t
|
||||||
|
@ -22404,6 +22454,7 @@ s,@SGI_ABI@,$SGI_ABI,;t t
|
||||||
s,@EXTRAPLATDIR@,$EXTRAPLATDIR,;t t
|
s,@EXTRAPLATDIR@,$EXTRAPLATDIR,;t t
|
||||||
s,@EXTRAMACHDEPPATH@,$EXTRAMACHDEPPATH,;t t
|
s,@EXTRAMACHDEPPATH@,$EXTRAMACHDEPPATH,;t t
|
||||||
s,@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@,$CONFIGURE_MACOSX_DEPLOYMENT_TARGET,;t t
|
s,@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@,$CONFIGURE_MACOSX_DEPLOYMENT_TARGET,;t t
|
||||||
|
s,@EXPORT_MACOSX_DEPLOYMENT_TARGET@,$EXPORT_MACOSX_DEPLOYMENT_TARGET,;t t
|
||||||
s,@CC@,$CC,;t t
|
s,@CC@,$CC,;t t
|
||||||
s,@CFLAGS@,$CFLAGS,;t t
|
s,@CFLAGS@,$CFLAGS,;t t
|
||||||
s,@LDFLAGS@,$LDFLAGS,;t t
|
s,@LDFLAGS@,$LDFLAGS,;t t
|
||||||
|
|
60
configure.in
60
configure.in
|
@ -60,6 +60,29 @@ define_xopen_source=yes
|
||||||
AC_SUBST(CONFIG_ARGS)
|
AC_SUBST(CONFIG_ARGS)
|
||||||
CONFIG_ARGS="$ac_configure_args"
|
CONFIG_ARGS="$ac_configure_args"
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(universalsdk,
|
||||||
|
AC_HELP_STRING(--enable-universalsdk@<:@SDKDIR@:>@, Build agains Mac OS X 10.4u SDK (ppc/i386)),
|
||||||
|
[
|
||||||
|
case $enableval in
|
||||||
|
yes)
|
||||||
|
enableval=/Developer/SDKs/MacOSX10.4u.sdk
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
case $enableval in
|
||||||
|
no)
|
||||||
|
UNIVERSALSDK=
|
||||||
|
enable_universalsdk=
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
UNIVERSALSDK=$enableval
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
],[
|
||||||
|
UNIVERSALSDK=
|
||||||
|
enable_universalsdk=
|
||||||
|
])
|
||||||
|
AC_SUBST(UNIVERSALSDK)
|
||||||
|
|
||||||
dnl quadrigraphs "@<:@" and "@:>@" produce "[" and "]" in the output
|
dnl quadrigraphs "@<:@" and "@:>@" produce "[" and "]" in the output
|
||||||
AC_ARG_ENABLE(framework,
|
AC_ARG_ENABLE(framework,
|
||||||
AC_HELP_STRING(--enable-framework@<:@=INSTALLDIR@:>@, Build (MacOSX|Darwin) framework),
|
AC_HELP_STRING(--enable-framework@<:@=INSTALLDIR@:>@, Build (MacOSX|Darwin) framework),
|
||||||
|
@ -258,7 +281,9 @@ AC_MSG_RESULT($EXTRAPLATDIR)
|
||||||
# it may influence the way we can build extensions, so distutils
|
# it may influence the way we can build extensions, so distutils
|
||||||
# needs to check it
|
# needs to check it
|
||||||
AC_SUBST(CONFIGURE_MACOSX_DEPLOYMENT_TARGET)
|
AC_SUBST(CONFIGURE_MACOSX_DEPLOYMENT_TARGET)
|
||||||
|
AC_SUBST(EXPORT_MACOSX_DEPLOYMENT_TARGET)
|
||||||
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=
|
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=
|
||||||
|
EXPORT_MACOSX_DEPLOYMENT_TARGET='#'
|
||||||
|
|
||||||
# checks for alternative programs
|
# checks for alternative programs
|
||||||
|
|
||||||
|
@ -740,6 +765,10 @@ yes)
|
||||||
# is there any other compiler on Darwin besides gcc?
|
# is there any other compiler on Darwin besides gcc?
|
||||||
Darwin*)
|
Darwin*)
|
||||||
BASECFLAGS="$BASECFLAGS -Wno-long-double -no-cpp-precomp -mno-fused-madd"
|
BASECFLAGS="$BASECFLAGS -Wno-long-double -no-cpp-precomp -mno-fused-madd"
|
||||||
|
if test "${enable_universalsdk}"; then
|
||||||
|
BASECFLAGS="-arch ppc -arch i386 -isysroot ${UNIVERSALSDK} ${BASECFLAGS}"
|
||||||
|
fi
|
||||||
|
|
||||||
;;
|
;;
|
||||||
OSF*)
|
OSF*)
|
||||||
BASECFLAGS="$BASECFLAGS -mieee"
|
BASECFLAGS="$BASECFLAGS -mieee"
|
||||||
|
@ -1263,7 +1292,12 @@ esac
|
||||||
AC_SUBST(LIBTOOL_CRUFT)
|
AC_SUBST(LIBTOOL_CRUFT)
|
||||||
case $ac_sys_system/$ac_sys_release in
|
case $ac_sys_system/$ac_sys_release in
|
||||||
Darwin/@<:@01567@:>@\..*)
|
Darwin/@<:@01567@:>@\..*)
|
||||||
LIBTOOL_CRUFT="-framework System -lcc_dynamic -arch_only `arch`"
|
LIBTOOL_CRUFT="-framework System -lcc_dynamic"
|
||||||
|
if test "${enable_universalsdk}"; then
|
||||||
|
:
|
||||||
|
else
|
||||||
|
LIBTOOL_CRUFT="${LIBTOOL_CRUFT} -arch_only `arch`"
|
||||||
|
fi
|
||||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
|
||||||
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
|
||||||
Darwin/*)
|
Darwin/*)
|
||||||
|
@ -1386,9 +1420,16 @@ then
|
||||||
# Use -undefined dynamic_lookup whenever possible (10.3 and later).
|
# Use -undefined dynamic_lookup whenever possible (10.3 and later).
|
||||||
# This allows an extension to be used in any Python
|
# This allows an extension to be used in any Python
|
||||||
cur_target=`sw_vers -productVersion | sed 's/\(10\.[[0-9]]*\).*/\1/'`
|
cur_target=`sw_vers -productVersion | sed 's/\(10\.[[0-9]]*\).*/\1/'`
|
||||||
|
if test ${cur_target} '>' 10.2; then
|
||||||
|
cur_target=10.3
|
||||||
|
fi
|
||||||
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET-${cur_target}}
|
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET-${cur_target}}
|
||||||
|
EXPORT_MACOSX_DEPLOYMENT_TARGET=''
|
||||||
if test ${MACOSX_DEPLOYMENT_TARGET-${cur_target}} '>' 10.2
|
if test ${MACOSX_DEPLOYMENT_TARGET-${cur_target}} '>' 10.2
|
||||||
then
|
then
|
||||||
|
if test "${enable_universalsdk}"; then
|
||||||
|
LDFLAGS="-arch i386 -arch ppc -isysroot ${UNIVERSALSDK} ${LDFLAGS}"
|
||||||
|
fi
|
||||||
LDSHARED='$(CC) $(LDFLAGS) -bundle -undefined dynamic_lookup'
|
LDSHARED='$(CC) $(LDFLAGS) -bundle -undefined dynamic_lookup'
|
||||||
BLDSHARED="$LDSHARED"
|
BLDSHARED="$LDSHARED"
|
||||||
else
|
else
|
||||||
|
@ -2873,6 +2914,23 @@ fi
|
||||||
|
|
||||||
# check for endianness
|
# check for endianness
|
||||||
AC_C_BIGENDIAN
|
AC_C_BIGENDIAN
|
||||||
|
AH_VERBATIM([WORDS_BIGENDIAN],
|
||||||
|
[
|
||||||
|
/* Define to 1 if your processor stores words with the most significant byte
|
||||||
|
first (like Motorola and SPARC, unlike Intel and VAX).
|
||||||
|
|
||||||
|
The block below does compile-time checking for endianness on platforms
|
||||||
|
that use GCC and therefore allows compiling fat binaries on OSX by using
|
||||||
|
'-arch ppc -arch i386' as the compile flags. The phrasing was choosen
|
||||||
|
such that the configure-result is used on systems that don't use GCC.
|
||||||
|
*/
|
||||||
|
#ifdef __BIG_ENDIAN__
|
||||||
|
#define WORDS_BIGENDIAN 1
|
||||||
|
#else
|
||||||
|
#ifndef __LITTLE_ENDIAN__
|
||||||
|
#undef WORDS_BIGENDIAN
|
||||||
|
#endif
|
||||||
|
#endif])
|
||||||
|
|
||||||
# Check whether right shifting a negative integer extends the sign bit
|
# Check whether right shifting a negative integer extends the sign bit
|
||||||
# or fills with zeros (like the Cray J90, according to Tim Peters).
|
# or fills with zeros (like the Cray J90, according to Tim Peters).
|
||||||
|
|
|
@ -846,9 +846,22 @@
|
||||||
/* Define to profile with the Pentium timestamp counter */
|
/* Define to profile with the Pentium timestamp counter */
|
||||||
#undef WITH_TSC
|
#undef WITH_TSC
|
||||||
|
|
||||||
/* Define to 1 if your processor stores words with the most significant byte
|
|
||||||
first (like Motorola and SPARC, unlike Intel and VAX). */
|
/* Define to 1 if your processor stores words with the most significant byte
|
||||||
|
first (like Motorola and SPARC, unlike Intel and VAX).
|
||||||
|
|
||||||
|
The block below does compile-time checking for endianness on platforms
|
||||||
|
that use GCC and therefore allows compiling fat binaries on OSX by using
|
||||||
|
'-arch ppc -arch i386' as the compile flags. The phrasing was choosen
|
||||||
|
such that the configure-result is used on systems that don't use GCC.
|
||||||
|
*/
|
||||||
|
#ifdef __BIG_ENDIAN__
|
||||||
|
#define WORDS_BIGENDIAN 1
|
||||||
|
#else
|
||||||
|
#ifndef __LITTLE_ENDIAN__
|
||||||
#undef WORDS_BIGENDIAN
|
#undef WORDS_BIGENDIAN
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Define to 1 if on AIX 3.
|
/* Define to 1 if on AIX 3.
|
||||||
System headers sometimes define this.
|
System headers sometimes define this.
|
||||||
|
|
13
setup.py
13
setup.py
|
@ -913,20 +913,11 @@ class PyBuildExt(build_ext):
|
||||||
#
|
#
|
||||||
# More information on Expat can be found at www.libexpat.org.
|
# More information on Expat can be found at www.libexpat.org.
|
||||||
#
|
#
|
||||||
if sys.byteorder == "little":
|
|
||||||
xmlbo = "1234"
|
|
||||||
else:
|
|
||||||
xmlbo = "4321"
|
|
||||||
expatinc = os.path.join(os.getcwd(), srcdir, 'Modules', 'expat')
|
expatinc = os.path.join(os.getcwd(), srcdir, 'Modules', 'expat')
|
||||||
define_macros = [
|
define_macros = [
|
||||||
('XML_NS', '1'),
|
('HAVE_EXPAT_CONFIG_H', '1'),
|
||||||
('XML_DTD', '1'),
|
|
||||||
('BYTEORDER', xmlbo),
|
|
||||||
('XML_CONTEXT_BYTES','1024'),
|
|
||||||
]
|
]
|
||||||
for feature_macro in ['HAVE_MEMMOVE', 'HAVE_BCOPY']:
|
|
||||||
if config_h_vars.has_key(feature_macro):
|
|
||||||
define_macros.append((feature_macro, '1'))
|
|
||||||
exts.append(Extension('pyexpat',
|
exts.append(Extension('pyexpat',
|
||||||
define_macros = define_macros,
|
define_macros = define_macros,
|
||||||
include_dirs = [expatinc],
|
include_dirs = [expatinc],
|
||||||
|
|
Loading…
Reference in New Issue