diff options
author | Bob Ippolito <bob@redivi.com> | 2005-03-28 23:23:47 (GMT) |
---|---|---|
committer | Bob Ippolito <bob@redivi.com> | 2005-03-28 23:23:47 (GMT) |
commit | 7026a0aeef15b678522f0f5cb045a086cdb41e6f (patch) | |
tree | ca216290d7a6b0294665e57d1f83a56027f7a6dd | |
parent | 0f9679d2b03b29cfcfd272f0d17bb1a6e88ae812 (diff) | |
download | cpython-7026a0aeef15b678522f0f5cb045a086cdb41e6f.zip cpython-7026a0aeef15b678522f0f5cb045a086cdb41e6f.tar.gz cpython-7026a0aeef15b678522f0f5cb045a086cdb41e6f.tar.bz2 |
patch [1171735] - Darwin 8's headers disable functionality when
POSIX is enabled. This prevents the toolbox glue, all of Carbon,
and various other non-POSIX features from compiling. The POSIX
symbols are still used by default, so turning off the #define
doesn't hurt.
Additionally, linker flags have changed for Darwin 8, and are
different for Darwin 8/gcc4 (default) and Darwin 8/gcc3.3.
Approved by Anthony
-rw-r--r-- | Makefile.pre.in | 6 | ||||
-rwxr-xr-x | configure | 36 | ||||
-rw-r--r-- | configure.in | 33 |
3 files changed, 61 insertions, 14 deletions
diff --git a/Makefile.pre.in b/Makefile.pre.in index 5757215..e4d9008 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -113,8 +113,8 @@ PYTHONFRAMEWORKINSTALLDIR= @PYTHONFRAMEWORKINSTALLDIR@ # Deployment target selected during configure, to be checked # by distutils CONFIGURE_MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@ -# Options to enable prebinding (for fast startup) -OTHER_LIBTOOL_OPT = -prebind -seg1addr 0x10000000 +# Options to enable prebinding (for fast startup prior to Mac OS X 10.3) +OTHER_LIBTOOL_OPT=@OTHER_LIBTOOL_OPT@ # Environment to run shared python without installed libraries RUNSHARED= @RUNSHARED@ @@ -374,7 +374,7 @@ $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \ $(RESSRCDIR)/English.lproj/InfoPlist.strings $(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION) libtool -o $(LDLIBRARY) -dynamic $(OTHER_LIBTOOL_OPT) $(LIBRARY) \ - -framework System @LIBTOOL_CRUFT@ + @LIBTOOL_CRUFT@ $(INSTALL) -d -m $(DIRMODE) \ $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj $(INSTALL_DATA) $(RESSRCDIR)/Info.plist \ @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 1.482 . +# From configure.in Revision: 1.483 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.59 for python 2.5. # @@ -312,7 +312,7 @@ ac_includes_default="\ # include <unistd.h> #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 CXX MAINOBJ EXEEXT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT CPP EGREP BUILDEXEEXT LIBRARY LDLIBRARY DLLLIBRARY BLDLIBRARY LDLIBRARYDIR INSTSONAME RUNSHARED LINKCC RANLIB ac_ct_RANLIB AR INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN OPT BASECFLAGS 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 PYTHONFRAMEWORK PYTHONFRAMEWORKDIR PYTHONFRAMEWORKPREFIX PYTHONFRAMEWORKINSTALLDIR MACHDEP SGI_ABI EXTRAPLATDIR EXTRAMACHDEPPATH CONFIGURE_MACOSX_DEPLOYMENT_TARGET CXX MAINOBJ EXEEXT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC OBJEXT CPP EGREP BUILDEXEEXT LIBRARY LDLIBRARY DLLLIBRARY BLDLIBRARY LDLIBRARYDIR INSTSONAME RUNSHARED LINKCC RANLIB ac_ct_RANLIB AR 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='' # Initialize some variables set by options. @@ -1511,6 +1511,12 @@ case $ac_sys_system/$ac_sys_release in define_xopen_source=no fi ;; + # On Mac OS X 10.4, defining _POSIX_C_SOURCE or _XOPEN_SOURCE + # disables platform specific features beyond repair. + Darwin/8.*) + define_xopen_source=no + ;; + esac if test $define_xopen_source = yes @@ -1545,6 +1551,7 @@ cat >>confdefs.h <<\_ACEOF _ACEOF + cat >>confdefs.h <<\_ACEOF #define _POSIX_C_SOURCE 200112L _ACEOF @@ -10197,13 +10204,29 @@ echo "${ECHO_T}$enable_toolbox_glue" >&6 case $ac_sys_system/$ac_sys_release in - Darwin/1.3*) - LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc" + Darwin/[01234567].*) + OTHER_LIBTOOL_OPT="-prebind -seg1addr 0x10000000" + ;; + Darwin/*) + OTHER_LIBTOOL_OPT="" + ;; +esac + + +case $ac_sys_system/$ac_sys_release in + Darwin/[01234567].*) + LIBTOOL_CRUFT="-framework System -lcc_dynamic -arch_only ppc" LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';; Darwin/*) - LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc" - LIBTOOL_CRUFT="$LIBTOOL_CRUFT" + gcc_version=`gcc -v 2>&1 | grep version | cut -d\ -f3` + if test ${gcc_version} '<' 4.0 + then + LIBTOOL_CRUFT="-lcc_dynamic" + else + LIBTOOL_CRUFT="" + fi + LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -lSystem -lSystemStubs -arch_only ppc' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';; esac @@ -21051,6 +21074,7 @@ s,@INSTALL_DATA@,$INSTALL_DATA,;t t s,@LN@,$LN,;t t s,@OPT@,$OPT,;t t s,@BASECFLAGS@,$BASECFLAGS,;t t +s,@OTHER_LIBTOOL_OPT@,$OTHER_LIBTOOL_OPT,;t t s,@LIBTOOL_CRUFT@,$LIBTOOL_CRUFT,;t t s,@SO@,$SO,;t t s,@LDSHARED@,$LDSHARED,;t t diff --git a/configure.in b/configure.in index 13b8439..6f292f9 100644 --- a/configure.in +++ b/configure.in @@ -171,6 +171,12 @@ case $ac_sys_system/$ac_sys_release in define_xopen_source=no fi ;; + # On Mac OS X 10.4, defining _POSIX_C_SOURCE or _XOPEN_SOURCE + # disables platform specific features beyond repair. + Darwin/8.*) + define_xopen_source=no + ;; + esac if test $define_xopen_source = yes @@ -194,8 +200,9 @@ then # cases for HP-UX, we define it globally. AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Define to activate Unix95-and-earlier features) - AC_DEFINE(_POSIX_C_SOURCE, 200112L, Define to activate features from IEEE Stds 1003.1-2001) + AC_DEFINE(_POSIX_C_SOURCE, 200112L, Define to activate features from IEEE Stds 1003.1-2001) + fi # @@ -1205,15 +1212,31 @@ yes) esac AC_MSG_RESULT($enable_toolbox_glue) +AC_SUBST(OTHER_LIBTOOL_OPT) +case $ac_sys_system/$ac_sys_release in + Darwin/@<:@01234567@:>@.*) + OTHER_LIBTOOL_OPT="-prebind -seg1addr 0x10000000" + ;; + Darwin/*) + OTHER_LIBTOOL_OPT="" + ;; +esac + AC_SUBST(LIBTOOL_CRUFT) case $ac_sys_system/$ac_sys_release in - Darwin/1.3*) - LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc" + Darwin/@<:@01234567@:>@.*) + LIBTOOL_CRUFT="-framework System -lcc_dynamic -arch_only ppc" LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';; Darwin/*) - LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc" - LIBTOOL_CRUFT="$LIBTOOL_CRUFT" + gcc_version=`gcc -v 2>&1 | grep version | cut -d\ -f3` + if test ${gcc_version} '<' 4.0 + then + LIBTOOL_CRUFT="-lcc_dynamic" + else + LIBTOOL_CRUFT="" + fi + LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -lSystem -lSystemStubs -arch_only ppc' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';; esac |