-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Switch ./configure
script to Dune configurator
#81
base: master
Are you sure you want to change the base?
Conversation
This needs to remove |
This also needs to depend on the Aside: I still don't have a successful end-to-end test with this PR yet. I'm getting:
When I figure out why that is happening ( EDIT 1: Below is a repeat of what
EDIT 2: I might be seeing this because I link against
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should address #81 (comment)
I've end-to-end tested this PR successfully with MSVC for bytecode with the modifications I posted. Thanks! |
Thanks for the fixes, and the confirmation! |
Co-authored-by: jonahbeckford <[email protected]>
Co-authored-by: jonahbeckford <[email protected]>
Co-authored-by: jonahbeckford <[email protected]>
Co-authored-by: jonahbeckford <[email protected]>
Hello!
This is a rework of #38, getting rid of autotools and switching to
dune-configurator
instead. The most visible effect of this change is that the./configure
step is no longer needed; a simplemake
is enough to build the library.A new "discover" script
config/discover.ml
that depends ondune.configurator
is added. The script will compile one test C program per symbol to be discovered, in much the same way asautoconf
. However, since this is as slow asautoconf
(even a bit slower, sincedune-configurator
also links the test programs instead of just compiling them), a "fast path" is added in which we first try to check for the existence of all symbols at once; this means that on modern systems, the configuration script is very fast.I removed a bit of code from
curl-helper.c
that seemed dead code. And added a few more#undefs
as in 1bc75b8 which I needed in order to compile on Windows.Since we don't have an extra
./configure
step anymore, I somehow extract the version number fromdune-project
in order to use it in theMakefile
. I'm sure better solutions are possible; this was just a quick hack.Each commit can be reviewed individually.
Let me know what you think! Cheers.