Support arm64 coroutines.
Don't downgrade arm64 branch protection.

Don't use -A -n flags to strip (broken by default due to ports infrastructure).

Set correct shared library name.

Override the arch setting to remove OpenBSD version from it,
so ports don't have to be bumped when OpenBSD version changes.

Index: configure
--- configure.orig
+++ configure
@@ -10954,7 +10954,7 @@ esac
     case "$target_cpu" in #(
   aarch64) :
 
-	for opt in -mbranch-protection=pac-ret -msign-return-address=all
+	for opt in -mbranch-protection=standard -msign-return-address=all
 do :
 
 
@@ -29556,6 +29556,10 @@ esac
 
             coroutine_type=x86
          ;; #(
+  aarch64-openbsd*) :
+
+            coroutine_type=arm64
+         ;; #(
   *-openbsd*) :
 
             coroutine_type=pthread
@@ -31212,7 +31216,7 @@ main (void)
 _ACEOF
 if ac_fn_c_try_link "$LINENO"
 then :
-  if "${STRIP}" -A -n conftest$ac_exeext 2>/dev/null
+  if false # "${STRIP}" -A -n conftest$ac_exeext 2>/dev/null
 then :
 
             { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: -A -n" >&5
@@ -31765,7 +31769,7 @@ fi
 	 ;; #(
   openbsd*|mirbsd*) :
 
-	LIBRUBY_SO='lib$(RUBY_SO_NAME).$(SOEXT).$(MAJOR).'`expr ${MINOR} \* 10 + ${TEENY}`
+	LIBRUBY_SO='lib$(RUBY_SO_NAME).so.'${LIBruby32_VERSION}
 	 ;; #(
   solaris*) :
 
@@ -33756,7 +33760,7 @@ then :
 
 else $as_nop
 
-        arch="${target_cpu}-${target_os}"
+        arch="${target_cpu}-openbsd"
 
 fi
     printf "%s\n" "#define RUBY_PLATFORM \"$arch\"" >>confdefs.h
