diff --git a/ChangeLog b/ChangeLog index 8fd3ed7e44..820a3e32d6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sun May 12 15:50:45 2013 KOSAKI Motohiro + + * configure.in: adds comments for setjmp check. + Sun May 12 15:38:09 2013 KOSAKI Motohiro * configure.in: move clock_gettime() check into regular place. diff --git a/configure.in b/configure.in index 8cb98baf35..5f392b253e 100644 --- a/configure.in +++ b/configure.in @@ -1724,8 +1724,8 @@ else fi AC_CHECK_FUNCS(__syscall) -AC_CHECK_FUNCS(_longjmp) -AC_CHECK_FUNCS(_setjmp) +AC_CHECK_FUNCS(_longjmp) # used for AC_ARG_WITH(setjmp-type) +AC_CHECK_FUNCS(_setjmp) # used for AC_ARG_WITH(setjmp-type) AC_CHECK_FUNCS(chroot) AC_CHECK_FUNCS(chsize) AC_CHECK_FUNCS(clock_gettime) @@ -1836,13 +1836,6 @@ if test x"$ac_cv_func_clock_gettime" != xyes; then AC_CHECK_FUNCS(clock_gettime) fi -AC_CACHE_CHECK(for sigsetjmp as a macro or function, ac_cv_func_sigsetjmp, - [AC_TRY_COMPILE([ -#include -], [sigjmp_buf env; sigsetjmp(env,1);], - ac_cv_func_sigsetjmp=yes, - ac_cv_func_sigsetjmp=no)]) - AC_CACHE_CHECK(for unsetenv returns a value, rb_cv_unsetenv_return_value, [AC_TRY_COMPILE([ #include @@ -1853,6 +1846,14 @@ if test "$rb_cv_unsetenv_return_value" = no; then AC_DEFINE(VOID_UNSETENV) fi +# used for AC_ARG_WITH(setjmp-type) +AC_CACHE_CHECK(for sigsetjmp as a macro or function, ac_cv_func_sigsetjmp, + [AC_TRY_COMPILE([ +#include +], [sigjmp_buf env; sigsetjmp(env,1);], + ac_cv_func_sigsetjmp=yes, + ac_cv_func_sigsetjmp=no)]) + AC_CACHE_CHECK(for __builtin_setjmp, ac_cv_func___builtin_setjmp, [AC_TRY_LINK([@%:@include jmp_buf jb; void t(v) int v; {__builtin_longjmp(jb, v);}], @@ -1861,6 +1862,7 @@ AC_CACHE_CHECK(for __builtin_setjmp, ac_cv_func___builtin_setjmp, [ac_cv_func___builtin_setjmp=no]) ]) +# we don't use _setjmp if _longjmp doesn't exist. test x$ac_cv_func__longjmp = xno && ac_cv_func__setjmp=no AC_MSG_CHECKING(for setjmp type) @@ -1896,6 +1898,7 @@ AC_MSG_RESULT(${setjmp_prefix}setjmp) AC_DEFINE_UNQUOTED([RUBY_SETJMP(env)], [${setjmp_prefix}setjmp(env${setjmp_sigmask+,0})]) AC_DEFINE_UNQUOTED([RUBY_LONGJMP(env,val)], [${setjmp_prefix}longjmp(env,val)]) AC_DEFINE_UNQUOTED(RUBY_JMP_BUF, ${setjmp_sigmask+${setjmp_prefix}}jmp_buf) +# End of setjmp check. AC_ARG_ENABLE(setreuid, AS_HELP_STRING([--enable-setreuid], [use setreuid()/setregid() according to need even if obsolete]),