From 4d4c0a0a698f3b1d5eac97eacaeb11839aae0668 Mon Sep 17 00:00:00 2001 From: xtkoba <69125751+xtkoba@users.noreply.github.com> Date: Sun, 5 Sep 2021 09:51:42 +0900 Subject: [PATCH] Do not use `__builtin_setjmp` It has been revealed that Clang's `__builtin_setjmp` / `__builtin_longjmp` implementation can be buggy (https://bugs.llvm.org/show_bug.cgi?id=51729). We should instead use `_setjmp` / `_longjmp` provided by Bionic libc. --- packages/ruby/build.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/ruby/build.sh b/packages/ruby/build.sh index e42db1132..bfe3ad2ac 100644 --- a/packages/ruby/build.sh +++ b/packages/ruby/build.sh @@ -21,6 +21,8 @@ TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" ac_cv_lib_crypt_crypt=no" TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" rb_cv_type_deprecated=x" # getresuid(2) does not work on ChromeOS - https://github.com/termux/termux-app/issues/147: # TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" ac_cv_func_getresuid=no" +# Clang's __builtin_setjmp / __builtin_longjmp implementation can be buggy +TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" ac_cv_func___builtin_setjmp=no" TERMUX_PKG_HOSTBUILD=true termux_step_host_build() {