On Sun, Dec 03, 2023 at 08:07:19AM +0100, Lorenz (xha) wrote:
> thanks for the port ;-)
>
> On Sat, Dec 02, 2023 at 10:54:47PM +0100, Tobias Heider wrote:
> > 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.
>
> can you tell me which test segfaults so i can fix this? all tests should
> and are passing for me (amd64)
The harec tests don't seem to work at all for me.
>
> > >
> > > 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
>
> can upstream this if you want. i think it doesn't make sense to always
> assume cross-compilation.
Sure, I can send a diff. I was planning to experiment some more and see if
we can make the default saner (assume host == target).
>
> > + 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
> >
>
> this is already upstreamed.
No comments:
Post a Comment