diff options
author | Ronald Oussoren <ronaldoussoren@mac.com> | 2020-11-22 01:13:11 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-22 01:13:11 (GMT) |
commit | 0f20bd9042c9b7fce20c3b9511cd0820b30094c3 (patch) | |
tree | 8c931cb6a71fb4416a0e502d718a44c5742b0d61 | |
parent | 68f68fa423739802fce37589ee77683c42ddb933 (diff) | |
download | cpython-0f20bd9042c9b7fce20c3b9511cd0820b30094c3.zip cpython-0f20bd9042c9b7fce20c3b9511cd0820b30094c3.tar.gz cpython-0f20bd9042c9b7fce20c3b9511cd0820b30094c3.tar.bz2 |
bpo-38443: Check that the specified universal architectures work (GH-22910)
As [bpo-38443]() says the error message from configure when specifying --enable-universalsdk with a set of architectures that is not supported by the compiler is not very helpful. This PR explicitly checks if the compiler works and bails out if it doesn't.
-rw-r--r-- | Misc/NEWS.d/next/macOS/2020-10-23-10-26-53.bpo-38443.vu64tl.rst | 2 | ||||
-rwxr-xr-x | configure | 25 | ||||
-rw-r--r-- | configure.ac | 7 |
3 files changed, 34 insertions, 0 deletions
diff --git a/Misc/NEWS.d/next/macOS/2020-10-23-10-26-53.bpo-38443.vu64tl.rst b/Misc/NEWS.d/next/macOS/2020-10-23-10-26-53.bpo-38443.vu64tl.rst new file mode 100644 index 0000000..008c972 --- /dev/null +++ b/Misc/NEWS.d/next/macOS/2020-10-23-10-26-53.bpo-38443.vu64tl.rst @@ -0,0 +1,2 @@ +The ``--enable-universalsdk`` and ``--with-universal-archs`` options for the +configure script now check that the specified architectures can be used. @@ -7611,6 +7611,31 @@ $as_echo_n "checking which MACOSX_DEPLOYMENT_TARGET to use... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MACOSX_DEPLOYMENT_TARGET" >&5 $as_echo "$MACOSX_DEPLOYMENT_TARGET" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if specified universal architectures work" >&5 +$as_echo_n "checking if specified universal architectures work... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <stdio.h> +int +main () +{ +printf("%d", 42); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + as_fn_error $? "check config.log and use the '--with-universal-archs' option" "$LINENO" 5 + +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + # end of Darwin* tests ;; esac diff --git a/configure.ac b/configure.ac index 668715c..7f7dfa5 100644 --- a/configure.ac +++ b/configure.ac @@ -1978,6 +1978,13 @@ yes) EXPORT_MACOSX_DEPLOYMENT_TARGET='' AC_MSG_RESULT($MACOSX_DEPLOYMENT_TARGET) + AC_MSG_CHECKING(if specified universal architectures work) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>]], [[printf("%d", 42);]])], + [AC_MSG_RESULT(yes)], + [AC_MSG_RESULT(no) + AC_MSG_ERROR(check config.log and use the '--with-universal-archs' option) + ]) + # end of Darwin* tests ;; esac |