The rest of this page contains some sample scripts for CMake, Meson, Waf, and the JAMS Makefile along with a brief introduction to each. Mkhelper - collection of utilities to be used with GNU Autoconf and GNU Make for building Fortran projects by Sergey Kosukhinįormula - package manager for Fortran by Giulio De Matteis Compiler preferences are inherited from the existing Makefile. f90 files and determines their dependencies. It recursively searches the working directory for. Makemake - Python 3 script that generates Makefiles for modular Fortran programs. Resolves module dependencies, Fortran and C preprocessor includes and external proceduresįortrandep - Python tool to determine Makefile dependencies for a Fortran project.įort_depend.py - Python script to generate dependencies for Fortran projects. Makedepf90 - Automatic dependency resolution and makefile creation given a set of Fortran sources.
![simply fortran tutorial simply fortran tutorial](http://simplyfortran.com/static/screenshots/outlines.png)
Sfmakedepend - searches for Fortran style includes, C preprocessor includes, and module dependencies.
![simply fortran tutorial simply fortran tutorial](http://simplyfortran.com/static/screenshots/3264.png)
With this, Fortran files can be listed in any order in Makefile.am and parallel builds work.įMakefile Ready to use Makefile for simple Fortran projects with automatic targets and prerequisites (module dependencies).įoBiS.py - a Python script for (automatic) building of modern complex Fortran project. Fortran dependencies are built with a Python script.įake - a shell script for generating Fortran makefiles.įdep - small set of scripts to teach autoconf/automake (using GNU make) about the additional dependencies in Fortran 90 files due to modules. It uses GNU make with user given configuration files for the specific compiler at given computing system. JAMS Makefile - The JAMS Makefile provides a portable, versatile way of compiling Fortran, C, C++, and mixed projects. Instead of using a domain-specific language like CMake, Waf scripts are written in Python.
SIMPLY FORTRAN TUTORIAL SOFTWARE
Waf has good Fortran support, including automatic Fortran dependency resolution, unit testing, software building and redistributable software packaging. It differs from autotools, CMake, and Meson in that it also performs the compilation instead of relying on a third-party tool like Make. Waf - Waf is a cross-platform, open-source build system. Meson does not generate Makefiles, relying solely on Ninja for Linux and Unix support. It is similar to CMake in that it generates files for various backends including Ninja, Visual Studio, and Xcode.
![simply fortran tutorial simply fortran tutorial](http://simplyfortran.com/static/screenshots/aplot_mjx330P.png)
It is a relatively new entrant but already has good support for most Fortran compilers. Meson - Meson is a cross-platform, open-source build system. CMake can generate files for various back-ends including traditional Makefiles, Ninja, Visual Studio, Xcode, and others.įortran Package Manager (fpm) - tool to build and package Fortran projects, as well as to include supported Fortran dependency projects. CMake is similar to (but simpler than) autotools in that it does not compile software directly. It knows most Fortran compilers and includes automatic Fortran dependency resolution and can be used for unit and regression testing, software building, system introspection, cross-compilation, and redistributable software packaging.
![simply fortran tutorial simply fortran tutorial](http://simplyfortran.com/static/screenshots/autocomplete_1.png)
CMake - CMake is a cross-platform, open-source build system with first-class Fortran support.