On Sat, Dec 02, 2023 at 08:46:11PM +0000, Brian Callahan wrote:
> Hi ports --
>
> Attached is a new port for the Hare programming language. Support for
> OpenBSD was just announced.
>
> This is good enough to compile the Hello world example on the main
> harelang.org. The port itself is a snapshot I just made of the mainline
> code, making sure to include some additional improvements from tobhe@
> that just hit their tree.
>
> Specifically looking for arm64 and riscv64 testing. I've only been able
> to test it on amd64. I believe some tweaks will be needed for the other
> archs.
>
> There are a small number of tests that fail, and one that segfaults, but
> as support is brand new, I don't think that's necessarily a showstopper.
>
> OK?
>
> ~Brian
arm64 needs a little more work
1. We need to fix the _start hook, I submitted a fix upstream at
https://lists.sr.ht/~sircmpwn/hare-dev/patches/47286
2. config.mk hardcodes amd64 and always treats arm and riscv as if
it was cross compiled. we need to change this to work for natively
This works on arm64:
diff -Nru hare/hare/Makefile hare2/hare/Makefile
--- hare/hare/Makefile Sat Dec 2 21:34:50 2023
+++ hare2/hare/Makefile Sat Dec 2 22:53:42 2023
@@ -13,5 +13,8 @@
do-gen:
cp ${WRKSRC}/configs/openbsd.mk ${WRKSRC}/config.mk
+ sed -i "s/aarch64-//g" ${WRKSRC}/config.mk
+ sed -i "s/riscv64-//g" ${WRKSRC}/config.mk
+ echo "ARCH = $$(arch -s)" >> ${WRKSRC}/config.mk
.include <bsd.port.mk>
diff -Nru hare/harec/patches/patch-rt_+openbsd_start+aarch64_s hare2/harec/patches/patch-rt_+openbsd_start+aarch64_s
--- hare/harec/patches/patch-rt_+openbsd_start+aarch64_s Thu Jan 1 01:00:00 1970
+++ hare2/harec/patches/patch-rt_+openbsd_start+aarch64_s Sat Dec 2 22:25:37 2023
@@ -0,0 +1,9 @@
+Index: rt/+openbsd/start+aarch64.s
+--- rt/+openbsd/start+aarch64.s.orig
++++ rt/+openbsd/start+aarch64.s
+@@ -5,5 +5,4 @@ _start:
+ mov x30, #0
+ mov x0, sp
+ add sp, x0, #-16
+- and sp, sp, #-16
+ b rt.start_ha
No comments:
Post a Comment