diff options
author | Rickard Green <[email protected]> | 2013-07-10 15:05:43 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2013-07-10 15:05:43 +0200 |
commit | 75f57c5f9a3bd03cb16e1663d40ea98bbb3ed487 (patch) | |
tree | 9cb54d13edf3e1ee7794579c7be02893af52b3c6 /erts/configure.in | |
parent | 903f7be44820731dd0f9989024c72ead07e90e81 (diff) | |
parent | b5df977d74dfce0b1bb41ebcedb7f16d02477c5a (diff) | |
download | otp-75f57c5f9a3bd03cb16e1663d40ea98bbb3ed487.tar.gz otp-75f57c5f9a3bd03cb16e1663d40ea98bbb3ed487.tar.bz2 otp-75f57c5f9a3bd03cb16e1663d40ea98bbb3ed487.zip |
Merge branch 'rickard/info/OTP-11196' into maint
* rickard/info/OTP-11196:
Add test cases for native atomics and jump table
Refuse to build SMP runtime by default without native atomics
Make information about use of jump table available via system_info BIF
Make ethread library information available via system_info BIF
Make emulator arguments available via the system_info BIF
Diffstat (limited to 'erts/configure.in')
-rw-r--r-- | erts/configure.in | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/erts/configure.in b/erts/configure.in index b056ba44e2..2f624e5853 100644 --- a/erts/configure.in +++ b/erts/configure.in @@ -150,6 +150,14 @@ AS_HELP_STRING([--disable-smp-support], [disable smp support]), *) enable_smp_support=yes ;; esac ], enable_smp_support=unknown) +AC_ARG_ENABLE(smp-require-native-atomics, + AS_HELP_STRING([--disable-smp-require-native-atomics], + [disable the SMP requirement of a native atomic implementation]), +[ case "$enableval" in + no) smp_require_native_atomics=no ;; + *) smp_require_native_atomics=yes ;; + esac ], smp_require_native_atomics=yes) + AC_ARG_WITH(termcap, AS_HELP_STRING([--with-termcap], [use termcap (default)]) AS_HELP_STRING([--without-termcap], @@ -1043,11 +1051,15 @@ if test $ERTS_BUILD_SMP_EMU = yes; then AC_DEFINE(ERTS_HAVE_SMP_EMU, 1, [Define if the smp emulator is built]) - case "$ethr_have_native_atomics-$ethr_have_native_spinlock" in + case "$ethr_have_native_atomics-$smp_require_native_atomics-$ethr_have_native_spinlock" in yes-*) ;; - no-yes) + no-yes-*) + AC_MSG_ERROR([No native atomic implementation found. See INSTALL.md for more information.]) + ;; + + no-no-yes) test -f "$ERL_TOP/erts/CONF_INFO" || echo "" > "$ERL_TOP/erts/CONF_INFO" @@ -1056,12 +1068,13 @@ if test $ERTS_BUILD_SMP_EMU = yes; then No native atomic implementation available. Fallbacks implemented using spinlocks will be used. Note that the performance of the SMP - runtime system will suffer due to this. + runtime system will suffer immensely due to + this. EOF ;; - no-no) + no-no-no) test -f "$ERL_TOP/erts/CONF_INFO" || echo "" > "$ERL_TOP/erts/CONF_INFO" @@ -1071,7 +1084,7 @@ EOF spinlock implementation available. Fallbacks implemented using mutexes will be used. Note that the performance of the SMP runtime system - will suffer much due to this. + will suffer immensely due to this. EOF ;; |