version_info Module

Build/version identity for the solver.

solver_version is the static manifest copy — keep it equal to the version field in fpm.toml; release preflight (scripts/release.sh) verifies both against the tag. git_describe comes from the checked-in include version_describe.inc, which holds an empty string in the repository and is overwritten by scripts/gen_version_describe.sh in release builds (the include is regenerated, never committed with a non-empty value).


Variables

Type Visibility Attributes Name Initial
character(len=*), public, parameter :: solver_version = '0.1.0'

Static manifest version (must match fpm.toml version).

character(len=*), private, parameter :: git_describe = ''

Functions

public pure function solver_build() result(build)

Full build identity: the stamped git describe string when present, otherwise the recognizable unstamped fallback v<version>-dev.

Arguments

None

Return Value character(len=:), allocatable


Subroutines

public subroutine handle_version_flag(exe_name)

Shared --version handler for all driver programs. If --version is on the command line, print <exe_name> <build-id> and stop 0. Called pre-MPI_Init by every driver, so the stop 0 is correct (single image, no ranks to orphan) and euler[_1d|_2d] --version works without mpirun.

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: exe_name