diff options
author | Ronald Oussoren <ronaldoussoren@mac.com> | 2010-01-17 16:25:57 (GMT) |
---|---|---|
committer | Ronald Oussoren <ronaldoussoren@mac.com> | 2010-01-17 16:25:57 (GMT) |
commit | a55af9a9db334fb587f2c6b37ac28ac2463ebf04 (patch) | |
tree | 085b4cb7df8d1b3c2890dd13851970cac2c070a0 /configure | |
parent | 60ba2c8bf8d8457282232127fd13543af4956a3d (diff) | |
download | cpython-a55af9a9db334fb587f2c6b37ac28ac2463ebf04.zip cpython-a55af9a9db334fb587f2c6b37ac28ac2463ebf04.tar.gz cpython-a55af9a9db334fb587f2c6b37ac28ac2463ebf04.tar.bz2 |
- Issue #7658: Ensure that the new pythonw executable works on OSX 10.4
- Issue #7714: Use ``gcc -dumpversion`` to detect the version of GCC on
MacOSX.
- Make configure look for util.h as well as libutil.h. The former
is the header file that on OSX contains the defition of openpty.
(Needed to compile for OSX 10.4 on OSX 10.6)
- Use the correct definition of CC to compile the pythonw executable
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 169 |
1 files changed, 112 insertions, 57 deletions
@@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Revision: 77193 . +# From configure.in Revision: 77212 . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for python 2.7. # @@ -2142,6 +2142,8 @@ _ACEOF # has no effect, don't bother defining them Darwin/[6789].*) define_xopen_source=no;; + Darwin/1[0-9].*) + define_xopen_source=no;; # On AIX 4 and 5.1, mbstate_t is defined only when _XOPEN_SOURCE == 500 but # used in wcsnrtombs() and mbsnrtowcs() even if _XOPEN_SOURCE is not defined # or has another value. By not (re)defining it, the defaults come in place. @@ -3861,7 +3863,7 @@ else { echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6; } fi -rm -f conftest* +rm -f -r conftest* @@ -4685,7 +4687,63 @@ echo "${ECHO_T}$ac_cv_no_strict_aliasing_ok" >&6; } Darwin*) # -Wno-long-double, -no-cpp-precomp, and -mno-fused-madd # used to be here, but non-Apple gcc doesn't accept them. + if test "${CC}" = gcc + then + { echo "$as_me:$LINENO: checking which compiler should be used" >&5 +echo $ECHO_N "checking which compiler should be used... $ECHO_C" >&6; } + case "${UNIVERSALSDK}" in + */MacOSX10.4u.sdk) + # Build using 10.4 SDK, force usage of gcc when the + # compiler is gcc, otherwise the user will get very + # confusing error messages when building on OSX 10.6 + CC=gcc-4.0 + CPP=cpp-4.0 + ;; + esac + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } + fi + + # Calculate the right deployment target for this build. + # + cur_target=`sw_vers -productVersion | sed 's/\(10\.[0-9]*\).*/\1/'` + if test ${cur_target} '>' 10.2; then + cur_target=10.3 + if test ${enable_universalsdk}; then + if test "${UNIVERSAL_ARCHS}" = "all"; then + # Ensure that the default platform for a + # 4-way universal build is OSX 10.5, + # that's the first OS release where + # 4-way builds make sense. + cur_target='10.5' + + elif test "${UNIVERSAL_ARCHS}" = "3-way"; then + cur_target='10.5' + + elif test "${UNIVERSAL_ARCHS}" = "intel"; then + cur_target='10.5' + elif test "${UNIVERSAL_ARCHS}" = "64-bit"; then + cur_target='10.5' + fi + else + if test `arch` = "i386"; then + # On Intel macs default to a deployment + # target of 10.4, that's the first OSX + # release with Intel support. + cur_target="10.4" + fi + fi + fi + CONFIGURE_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET-${cur_target}} + + # Make sure that MACOSX_DEPLOYMENT_TARGET is set in the + # environment with a value that is the same as what we'll use + # in the Makefile to ensure that we'll get the same compiler + # environment during configure and build time. + MACOSX_DEPLOYMENT_TARGET="$CONFIGURE_MACOSX_DEPLOYMENT_TARGET" + export MACOSX_DEPLOYMENT_TARGET + EXPORT_MACOSX_DEPLOYMENT_TARGET='' if test "${enable_universalsdk}"; then UNIVERSAL_ARCH_FLAGS="" @@ -4694,6 +4752,39 @@ echo "${ECHO_T}$ac_cv_no_strict_aliasing_ok" >&6; } ARCH_RUN_32BIT="" LIPO_32BIT_FLAGS="-extract ppc7400 -extract i386" + + # You have to use different flags on various versions of + # OSX to extract PPC code from an universal binary, basically + # '-arch ppc' on OSX 10.4 and '-arch ppc7400' on anything + # newer. + # Because '-arch pp7400' works on OSX 10.5 or higher this + # test is only present in the '32-bit' branch, all other + # branches require OSX 10.5 to compile. + + { echo "$as_me:$LINENO: checking lipo flag for extracting ppc code" >&5 +echo $ECHO_N "checking lipo flag for extracting ppc code... $ECHO_C" >&6; } + FN="test.$$" + cat >${FN}.c <<-EOF + int main() { return 0; } +EOF + ${CC} ${CFLAGS} -arch ppc -arch i386 -o ${FN} ${FN}.c -isysroot ${UNIVERSALSDK} + if test $? != 0 ; then + rm ${FN} ${FN}.c + { echo "$as_me:$LINENO: result: failed, assumee -extract ppc7400" >&5 +echo "${ECHO_T}failed, assumee -extract ppc7400" >&6; } + else + lipo -extract -output "${FN}.out" -arch ppc7400 "${FN}" 2>/dev/null + if test $? != 0 ; then + LIPO_32BIT_FLAGS="-extract ppc -extract i386" + { echo "$as_me:$LINENO: result: \"'-extract ppc'\"" >&5 +echo "${ECHO_T}\"'-extract ppc'\"" >&6; } + else + { echo "$as_me:$LINENO: result: \"'-extract ppc7400'\"" >&5 +echo "${ECHO_T}\"'-extract ppc7400'\"" >&6; } + fi + rm -f ${FN} ${FN}.c ${FN}.out + fi + elif test "$UNIVERSAL_ARCHS" = "64-bit" ; then UNIVERSAL_ARCH_FLAGS="-arch ppc64 -arch x86_64" LIPO_32BIT_FLAGS="" @@ -4726,49 +4817,11 @@ echo "$as_me: error: proper usage is --with-universal-arch=32-bit|64-bit|all|int tgt=`sw_vers -productVersion | sed 's/\(10\.[0-9]*\).*/\1/'` if test "${UNIVERSALSDK}" != "/" -a "${tgt}" '>' '10.4' ; then CFLAGS="${UNIVERSAL_ARCH_FLAGS} -isysroot ${UNIVERSALSDK} ${CFLAGS}" + CPPFLAGS="-isysroot ${UNIVERSALSDK}" fi - fi - - # Calculate the right deployment target for this build. - # - cur_target=`sw_vers -productVersion | sed 's/\(10\.[0-9]*\).*/\1/'` - if test ${cur_target} '>' 10.2; then - cur_target=10.3 - if test ${enable_universalsdk}; then - if test "${UNIVERSAL_ARCHS}" = "all"; then - # Ensure that the default platform for a - # 4-way universal build is OSX 10.5, - # that's the first OS release where - # 4-way builds make sense. - cur_target='10.5' - - elif test "${UNIVERSAL_ARCHS}" = "3-way"; then - cur_target='10.5' - - elif test "${UNIVERSAL_ARCHS}" = "intel"; then - cur_target='10.5' - elif test "${UNIVERSAL_ARCHS}" = "64-bit"; then - cur_target='10.5' - fi - else - if test `arch` = "i386"; then - # On Intel macs default to a deployment - # target of 10.4, that's the first OSX - # release with Intel support. - cur_target="10.4" - fi - fi fi - CONFIGURE_MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET-${cur_target}} - # Make sure that MACOSX_DEPLOYMENT_TARGET is set in the - # environment with a value that is the same as what we'll use - # in the Makefile to ensure that we'll get the same compiler - # environment during configure and build time. - MACOSX_DEPLOYMENT_TARGET="$CONFIGURE_MACOSX_DEPLOYMENT_TARGET" - export MACOSX_DEPLOYMENT_TARGET - EXPORT_MACOSX_DEPLOYMENT_TARGET='' ;; OSF*) @@ -5414,7 +5467,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | else ac_cv_header_stdc=no fi -rm -f conftest* +rm -f -r conftest* fi @@ -5435,7 +5488,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | else ac_cv_header_stdc=no fi -rm -f conftest* +rm -f -r conftest* fi @@ -5643,6 +5696,8 @@ done + + for ac_header in asm/types.h conio.h curses.h direct.h dlfcn.h errno.h \ fcntl.h grp.h \ ieeefp.h io.h langinfo.h libintl.h ncurses.h poll.h process.h pthread.h \ @@ -5654,7 +5709,7 @@ sys/param.h sys/poll.h sys/select.h sys/socket.h sys/statvfs.h sys/stat.h \ sys/termio.h sys/time.h \ sys/times.h sys/types.h sys/un.h sys/utsname.h sys/wait.h pty.h libutil.h \ sys/resource.h netpacket/packet.h sysexits.h bluetooth.h \ -bluetooth/bluetooth.h linux/tipc.h +bluetooth/bluetooth.h linux/tipc.h spawn.h util.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then @@ -6533,7 +6588,7 @@ _ACEOF fi -rm -f conftest* +rm -f -r conftest* { echo "$as_me:$LINENO: result: $was_it_defined" >&5 echo "${ECHO_T}$was_it_defined" >&6; } @@ -7063,7 +7118,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | else ac_cv_type_uid_t=no fi -rm -f conftest* +rm -f -r conftest* fi { echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 @@ -14508,7 +14563,7 @@ case $ac_sys_system/$ac_sys_release in LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';; Darwin/*) - gcc_version=`gcc -v 2>&1 | grep version | cut -d\ -f3` + gcc_version=`gcc -dumpversion` if test ${gcc_version} '<' 4.0 then LIBTOOL_CRUFT="-lcc_dynamic" @@ -15850,7 +15905,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | else unistd_defines_pthreads=no fi -rm -f conftest* +rm -f -r conftest* { echo "$as_me:$LINENO: result: $unistd_defines_pthreads" >&5 echo "${ECHO_T}$unistd_defines_pthreads" >&6; } @@ -17464,7 +17519,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "yes" >/dev/null 2>&1; then ipv6type=$i fi -rm -f conftest* +rm -f -r conftest* ;; kame) @@ -17487,7 +17542,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ipv6libdir=/usr/local/v6/lib ipv6trylibc=yes fi -rm -f conftest* +rm -f -r conftest* ;; linux-glibc) @@ -17508,7 +17563,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ipv6type=$i; ipv6trylibc=yes fi -rm -f conftest* +rm -f -r conftest* ;; linux-inet6) @@ -17546,7 +17601,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ipv6lib=inet6; ipv6libdir=/usr/local/v6/lib fi -rm -f conftest* +rm -f -r conftest* ;; v6d) @@ -17569,7 +17624,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ipv6libdir=/usr/local/v6/lib; BASECFLAGS="-I/usr/local/v6/include $BASECFLAGS" fi -rm -f conftest* +rm -f -r conftest* ;; zeta) @@ -17591,7 +17646,7 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | ipv6lib=inet6; ipv6libdir=/usr/local/v6/lib fi -rm -f conftest* +rm -f -r conftest* ;; esac @@ -26134,7 +26189,7 @@ cat >>confdefs.h <<\_ACEOF _ACEOF fi -rm -f conftest* +rm -f -r conftest* cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -26153,7 +26208,7 @@ cat >>confdefs.h <<\_ACEOF _ACEOF fi -rm -f conftest* +rm -f -r conftest* fi @@ -26423,7 +26478,7 @@ cat >>confdefs.h <<\_ACEOF _ACEOF fi -rm -f conftest* +rm -f -r conftest* fi |