Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

SciFortran Checkout

A composite GitHub Action that installs the dependencies and a published SciFortran binary release on ubuntu-24.04 (x86_64) or macos-15 (arm64). It does not compile SciFortran.

permissions:
  contents: read

jobs:
  build:
    runs-on: ubuntu-24.04
    steps:
      - uses: actions/checkout@v4
      - id: scifor
        uses: SciFortran/checkout@main
      # Add this project's own configure/build steps here.

The action chooses the newest published scifor-* prerelease by default.

Set with: release: scifor-4.23.13-1234abcd to install a specific release (here 4.23.13 with git short SHA1 1234abcd). The release input chooses the binary package; the @main reference chooses the version of this action. For a reproducible build, pin this action to a commit SHA and provide an explicit release tag.

Later steps in the same job receive PKG_CONFIG_PATH, SFROOT, SCIFOR_ROOT, SCIFOR_RELEASE, LIBRARY_PATH, LD_LIBRARY_PATH, INCLUDE_PATH, FC=mpif90, GLOB_INC and GLOB_LIB. This is the release-package equivalent of loading the SciFortran environment module. The action also exposes release and root outputs. These environment variables do not cross job boundaries; call the action in each job that needs SciFortran. Before returning, the action verifies the library, module file and pkg-config metadata, then prints the selected release and compile/link flags. A failed check stops the job before the project build. The package contains libscifor.a, Fortran module files and scifor.pc. Fortran .mod files require a compatible compiler and MPI setup.

The action reads public releases from SciFortran/SciFortran using the caller's github.token; contents: read is sufficient. An optional token input overrides it.

About

GitHub action to checkout SciFortran in gh CI scripts using SciFortran releases

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages