Sunday, January 31, 2021

Re: Question about lang/ghc module (trying to port git-annex)

Hi James,

James Cook <falsifian@falsifian.org> writes:

> I'm trying to write a port for git-annex, which is built using
> Haskell's Cabal. I'm new to OpenBSD porting and don't completely
> understand the lang/ghc module.
>
> Basic question: do all of the Haskell dependencies (from git-annex.cabal) need
> to already have their own ports (like devel/hs-async, devel/hs-network, etc)?
> (Or will the missing ones be magically built like cabal-install normally does?)
> If they do need to all be ported, how isn't there e.g. a devel/hs-containers
> port --- doesn't basically every Haskell project depend on the containers
> package?

Yes, that's the way it currently is in the ports tree.

> git-annex has at least 50 dependencies I couldn't find in ports, so I
> want to make sure I understand this before I start porting them one at
> a time (or just give up)...

This is exactly the problem I want to solve with cabal.port.mk. You
can try to look at
https://marc.info/?l=openbsd-ports&m=160858285410366&w=2
A quick search in the archives will show the justification and the
history of the effort.

The current state of the work is I'm waiting on cabal 3.4 official
release gated by ghc-9.0. I'm also looking for people needing this work
and your attempt to add git-annex gives me more motivation to finish.

BTW, trying to build with cabal also needs devel/libmagic port, or else:

cabal: Missing dependency on a foreign library:
* Missing (or bad) C library: magic

Thanks
Greg

No comments:

Post a Comment