-
Notifications
You must be signed in to change notification settings - Fork 100
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
Add: external-modules key to build table for non-fpm modules #438
Conversation
This feature is a game changer for me, thanks a lot for implementing it. How to specify the include path in which to search for modules? Is it in manifest, for example
Or do I need to pass |
Absolute paths should never enter the package manifest. For netcdf-fortran, there should be a way to find it with
For the time being, |
Why? That's quite a strong statement. Assume that I don't share my manifest and that It's a different question whether absolute paths should appear in manifests that are meant to be distributed (I agree that the answer is no). Passing a path via |
I fear we are derailing this thread towards build system design questions. Let's discuss this at #439. |
Yes, using Aside: I do wonder how much work it would be to just write an fpm package with module interfaces for these system-installed libraries? |
I just played with it and was able to compile and run (using
However, if I do just
Do you mean that this should work now with this PR, or just that you support it working in the future? I tried it and it didn't seem to make a difference. |
Yes this has always been the case (since Haskell fpm) because each invocation of fpm should be independent of previous ones (stateless). The situation for command line flags will be improved somewhat with response file support coming in #364.
Yes it should work with this PR as is because |
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 is a good step forward already. We can refine the external dependency handling later.
Hmm, I just tried it again and can't seem to get it to work:
Do you know what I'm doing incorrectly? |
Apologies, I forgot that |
Okay, that's great to know. I often make dependency links inside project directories, so this works well for me. The error message should be improved, or perhaps just detect and error out if a path is absolute. I'll open a separate issue or PR for this. |
Co-authored-by: Milan Curcic <[email protected]>
Thanks for reviewing everyone. I'll merge later today if there are no more comments. |
Thank you for this feature! I had problems figuring out how to use the Also, I found a incomplete comment: The |
Many thanks for the feedback @Carltoffel. It definitely helps to get a fresh pair of eyes from a user perspective and you raise a good point. This may perhaps be good motivation to start using a separate development branch so that the default branch remains 'in sync' with the current release. Do feel free to open issues and pull requests if you have ideas for how to improve the documentation. |
Resolves #405 by allowing external modules to be specified in the manifest.
e.g.
See also: #377 (comment), fortran-lang/fpm-registry#39 (comment)