ocaml: fix compatibility with ctypes 0.21.0#421
ocaml: fix compatibility with ctypes 0.21.0#421franziskuskiefer merged 2 commits intocryspen:mainfrom
Conversation
In ctypes < 0.21.0, the ctypes and ctypes.stubs libraries were installed in the same directory, so depending on one would make the other one visible. ctypes 0.21.0 installs them in different directories so this makes it an error. hacl-star-raw uses ctypes.stubs so the dependency should be recorded.
|
We require contributors to sign our Contributor License Agreement https://github.com/cryspen/hacl/blob/main/CLA.md ensuring that the contribution can be licensed under Apache 2.0 and MIT. In order for us to review and merge your code, please mention @cryspen/core in a comment below to get yourself added. |
|
@cryspen/core I agree with the terms of the CLA. |
Upstream fix: cryspen/hacl-packages#421
franziskuskiefer
left a comment
There was a problem hiding this comment.
Thanks! lgtm but @victor-dumitrescu should have a look as well as maintainer of the package.
@victor-dumitrescu can you have a look and bump versions/do a new release if needed?
Pull Request Test Coverage Report for Build 5596166449
💛 - Coveralls |
Yes, I have tested that with ctypes 0.21.0. To be more precise about the problem, hacl-star-raw main build and installs correctly even with ctypes 0.21.0, but then hacl-star does not build correctly. hacl-star-raw built with this fix will build and install correctly, and be usable when used with hacl-star.
In terms of metadata:
|
|
I see, I was wondering whether I should add an explicit extra dependency in the opam file on |
|
ctypes has 2 APIs: stub generation (generate C and ml code from descriptions) and foreign (use libffi to call directly into a .so file). If you use the |
Upstream fix: cryspen/hacl-packages#421
In ctypes < 0.21.0, the ctypes and ctypes.stubs libraries were installed in the same directory, so depending on one would make the other one visible.
ctypes 0.21.0 installs them in different directories so this makes it an error.
hacl-star-raw uses ctypes.stubs so the dependency should be recorded.