Fortran Package Manager

Fortran Package Manager

Fortran Package Manager

Package manager and build system for Fortran

Welcome to the documentation for the Fortran Package Manager (fpm).

Note

These pages are currently under construction. Please help us improve them by contributing content or reporting issues.

Install

Instructions on how to install fpm across Windows, Linux, macOS and more.

Tutorials

Learn about using fpm for Fortran development, creating projects and managing dependencies.

How-To Guides

Practical guides and recipes to solve specific problems with fpm

References

Specifications of fpm components and implementation references

Registry

There are already many packages available for use with fpm, providing an easily accessible and rich ecosystem of general purpose and high-performance code. For a full list of packages checkout the fpm registry. New packages can be submitted to the registry here.

News

Recent events around the Fortran Package Manager, such as new releases, conference talks, and new packages will be announced here.

  • Fpm version 0.9.0 released (2023-06-02)

    Registry and Metapackages.

  • Fpm version 0.8.2 released (2023-05-11)

    Registry preview release.

  • Fpm version 0.8.1 released (2023-04-11)

    This release introduces a hotfix for the automated dependency tree feature introduced in v0.8.0. Fpm now restored backward-compatible dependency priority, which ensures that, whenever different versions of the same dependency are found down the dependency tree, the first and foremost is used. Unnecessary dependency updates are also shed from the build process.

  • Fpm version 0.8.0 released (2023-04-07)

    This release introduces support for enabling and disabling language features in fpm, such as implicit typing or default source form. By default, fpm now tries to disable implicit typing rules, implicit external interfaces and assumes the source form is always free. The options can be overwritten in the manifest for each project.

  • Fpm version 0.7.0 released (2022-10-26)

    This release introduces preprocessor support in the fpm.toml manifest, allowing for preprocessor macros, file suffixes and directories where the preprocessor should run. This feature was implemented as part of Arteev Raina’s Google Summer of Code 2022 project. Furthermore, fpm has now the ability to compile C++ source files in addition to Fortran and C. Finally, the ability to define compiler profiles in the fpm.toml manifest has been added, although the profile settings are not currently used in the build process.