Hi, there might already be an answer to this but haven’t really found any explicit tutorial/examples:
So I’m working on a huge project base containing Fortran/C/C++ libraries. The project(s) contain several external dependencies, it builds intermediate libraries in either of the languages and at the end builds several packages. All of this is using CMake as the build system.
Now I’m wondering if I could (smoothly) introduce fpm to manage just one of the fortran projects having in mind that:
- This library project has upstream external dependencies
- It is a dependency for other libraries/executable downstream
- The same source code is used to build static libs (for compiling with the executable) and dynamic link libraries for creating a Python API (using ctypes)
- Local development is done on windows, using MVS2019 + Intel19 and WSL2+Intel for debugging linux. For deployment, everything is ran in a server that compiles the Windows and Linux distributions.
… So at the end of the day I have to be careful not to break out the house just to introduce a new package manager.
When looking at some of the tutorials/videos, I saw how to declare external dependencies using urls from github, but what about local dependencies that are not an fpm project
Q1: is there a way to at least declare the location of the upstream static/dynamic link libraries as dependencies? (is it safe to do so in fpm?)
Q2: Is there a way to include the build process within the pre-existing CMake build chain?
Thanks for any guidance on this