Hello everyone,

As you may know, GHC carries a dependency on the libffi library. Libffi
is used on most platforms (notably not x86 and x86-64) for foreign
function invocation (see rts/Adjustor.c for details).

While libffi works well, it is unfortunately not particularly actively
maintained. In fact, it has been nearly three years since the last
official release. A lot can happen in three years and there is now at
least two bugs [1,2] present in the current release which makes it
impossible to build GHC in some configurations. These bugs have been
fixed upstream but these fixes are unreleased. Numerous attempts have
been made to get the libffi maintainers to cut a new release but sadly
no progress has been made in over six months of trying.

In light of this I propose that we begin treating libffi as a submodule
until a release is made. In particular, adding libffi as a submodule
will ease development on ARM and AArch64 (especially Apple) targets,
which have seen quite a bit of developer attention recently. Note that
under this scheme it will still be possible to link against the system's
libffi installation using ./configure's --enable-system-libffi flag.

Are there any strong objections to plan? If so please speak up.
If there is no objection by Saturday we will move ahead.

Cheers,

- Ben


[1] https://github.com/libffi/libffi/issues/191
[2] https://github.com/libffi/libffi/pull/263

Attachment: signature.asc
Description: PGP signature

_______________________________________________
ghc-devs mailing list
[email protected]
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to