Sunday, January 26, 2025

Re: resurrect lang/haxe with pre-packaged opam root

On Fri, 27 Dec 2024 20:11:51 -0500
Thomas Frohwein <tfrohwein@fastmail.com> wrote:

> On Thu, 26 Dec 2024 23:08:32 +0100
> Christopher Zimmermann <chrisz@openbsd.org> wrote:
>
> > On Wed, Dec 25, 2024 at 05:29:26PM -0500, Thomas Frohwein wrote:
> > >On Thu, 19 Dec 2024 21:52:08 +0100
> > >Christopher Zimmermann <chrisz@openbsd.org> wrote:
> > >
> > >> On Thu, Dec 19, 2024 at 02:05:55PM -0500, Thomas Frohwein wrote:
> > >>
> > >> >chrisz@, I would appreciate a look at this approach to handling
> > >> >OPAM dependencies during the build.
> > >>
> > >> I would prefer the opamroot-helper target to be reproducible by
> > >> fixing it to a defined commit on opam-repository. This could be
> > >> accomlished by downloading a specific snapshot of opam-repository
> > >> and pointing opam init to this snapshot.
> > >
> > >Thanks for your response. Not sure if I understand your response
> > >correctly - the opamroot-helper is meant to create the download of
> > >the dependencies from OPAM (at least get started) to then build the
> > >tarball to be provided at SITES.opamroot when updating the port.
> > >This is by necessity a fixed distfile for the ports build.
> >
> > I'd do versioning of the haxe-opamroot distfile and opam-init like
> > this:
> >
> > COMMIT.opamroot = a66a58b
> > SITES.opamroot = https://thfr.info/distfiles/
> > DISTFILES.opamroot = haxe-opamroot-${COMMIT.opamroot}.tar.bz2
> >
> > […]
> >
> > env OPAMROOT=/tmp/opamroot opam init --no-setup \
> > "https://github.com/ocaml/opam-repository.git#${COMMIT.opamroot}"
> >
>
> This looks great to have explicit opamroot commit.
>
> >
> > I'm building right now on amd64. Have you tested any non-native
> > archs
>
> I only have amd64 available for the foreseeable future. Testing with
> other archs would definitely be appreciated.
>
> > ?
> >
> > Christopher
>

I wanted to follow-up on this. I adjusted the opamroot-helper target in
line with your great suggestions and now have a version that can run
opamroot-helper without needing an already extracted ${WRKSRC}.

I would like to to keep the DISTFILES.opamroot naming with ${V} instead
of ${COMMIT.opamroot}, as the checkout with COMMIT.opamroot is only the
beginning - when I built the haxe-opamroot tarball, a few deps were
still missing, likely second or third order dependencies.

I think this is still in a reasonable state to assist with the work of
future updates.

ok to import again?

No comments:

Post a Comment