Skip to content

Commit

Permalink
Merge pull request #110 from Goddard-Fortran-Ecosystem/feature/mathom…
Browse files Browse the repository at this point in the history
…p4/add-fujitsu

Add support for Fujitsu compiler
  • Loading branch information
tclune authored Mar 4, 2024
2 parents b3d088c + 4092b86 commit 857f00e
Show file tree
Hide file tree
Showing 4 changed files with 103 additions and 6 deletions.
22 changes: 22 additions & 0 deletions .github/workflows/changelog-enforcer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: "Enforce Changelog"
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]

jobs:
# Enforces the update of a changelog file on every pull request
changelog:
runs-on: ubuntu-latest
steps:
- uses: dangoslen/changelog-enforcer@v3
with:
changeLogPath: 'ChangeLog.md'
skipLabels: 'Skip Changelog'
missingUpdateErrorMessage: >
No update to ChangeLog.md found! Please add a changelog
entry to it describing your change. Please note that the
keepachangelog (https://keepachangelog.com) format is
used. If your change is very trivial not applicable for a
changelog entry, add a 'Skip Changelog' label to the pull
request to skip the changelog enforcer.
57 changes: 57 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -160,3 +160,60 @@ jobs:
name: logfiles
path: |
build/**/*.log
Nvidia:
runs-on: ubuntu-20.04
container: nvcr.io/nvidia/nvhpc:24.1-devel-cuda12.3-ubuntu22.04
env:
FC: nvfortran

name: Nvidia HPC
steps:
- name: Versions
run: |
${FC} --version
cmake --version
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Set all directories as git safe
run: |
git config --global --add safe.directory '*'
- name: Add python-is-python3 package
run: |
apt-get update
apt-get install -y python-is-python3
- name: Build GFE Prereqs
run: |
bash ./tools/ci-install-gfe.bash
- name: Build pFlogger
run: |
mkdir -p build
cd build
cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/pFlogger -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
make -j$(nproc)
- name: Build Tests
run: |
cd build
make -j$(nproc) tests
- name: Run Tests
run: |
cd build
ctest -j1 --output-on-failure --repeat until-pass:4
- name: Archive log files on failure
uses: actions/upload-artifact@v4
if: failure()
with:
name: logfiles
path: |
build/**/*.log
16 changes: 10 additions & 6 deletions ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

<<<<<<< Updated upstream
## [1.12.0] - 2024-01-25
### Added

### Changed
- Fujitsu compiler support

- Add new `ENABLE_MPI` option to allow disabling MPI support (#106). By default, MPI is enabled to maintain backward compatibility.
=======
### Changed

- Updated dependency on yaFyaml to 1.2.0 as a workaround to gfortran
13.2 bug with polymorphic assignment.
>>>>>>> Stashed changes

## [1.12.0] - 2024-01-25

### Changed

- Add new `ENABLE_MPI` option to allow disabling MPI support (#106). By default, MPI is enabled to maintain backward compatibility.



## [1.11.0] - 2023-11-29

Expand Down
14 changes: 14 additions & 0 deletions cmake/Fujitsu.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
if (CMAKE_Fortran_COMPILER_ID MATCHES Fujitsu)
if (CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 4.10.0)
message(FATAL_ERROR "${CMAKE_Fortran_COMPILER_ID} version must be at least 4.10.0!")
endif ()
endif ()

# Compiler specific flags for Fujitsu Fortran compiler

set(check_all "-Nquickdbg")
set(cpp "-Cfpp")

set(CMAKE_Fortran_FLAGS_DEBUG "-O0 ${check_all}")
set(CMAKE_Fortran_FLAGS_RELEASE "-O3")
set(CMAKE_Fortran_FLAGS "-g ${cpp} -Nalloc_assign -Free")

0 comments on commit 857f00e

Please sign in to comment.