Skip to content

Commit

Permalink
Merge branch 'develop' into feature/mathomp4/llvmflang
Browse files Browse the repository at this point in the history
  • Loading branch information
mathomp4 authored Jul 9, 2024
2 parents 348e0bb + 3b79939 commit 5eb28bb
Show file tree
Hide file tree
Showing 9 changed files with 39 additions and 17 deletions.
31 changes: 19 additions & 12 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,20 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04, macos-12, macos-13]
compiler: [gfortran-10, gfortran-11, gfortran-12, gfortran-13]
exclude:
- os: macos-12
compiler: gfortran-10
- os: macos-13
os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14]
compiler: [gfortran-11, gfortran-12, gfortran-13]
# gfortran-10 is only on ubuntu-22.04
# gfortran-14 is available on ubuntu-24.04
include:
- os: ubuntu-22.04
compiler: gfortran-10
- os: ubuntu-24.04
compiler: gfortran-14
exclude:
- os: ubuntu-24.04
compiler: gfortran-11
- os: ubuntu-22.04
compiler: gfortran-13

# fail-fast if set to 'true' here is good for production, but when
# debugging, set to 'false'. fail-fast means if *any* ci test in the matrix fails
Expand Down Expand Up @@ -65,12 +72,12 @@ jobs:
mkdir -p build
cd build
cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/gFTL -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
make -j$(nproc)
make -j4
- name: Build Tests
run: |
cd build
make -j$(nproc) tests
make -j4 tests
- name: Run Tests
run: |
Expand Down Expand Up @@ -141,12 +148,12 @@ jobs:
mkdir -p build
cd build
cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/gFTL -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
make -j$(nproc)
make -j4
- name: Build Tests
run: |
cd build
make -j$(nproc) tests
make -j4 tests
- name: Run Tests
run: |
Expand Down Expand Up @@ -197,12 +204,12 @@ jobs:
mkdir -p build
cd build
cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/gFTL -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
make -j$(nproc)
make -j4
- name: Build Tests
run: |
cd build
make -j$(nproc) tests
make -j4 tests
- name: Run Tests
run: |
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ if (COMMAND cmake_policy)
endif (COMMAND cmake_policy)

project (GFTL
VERSION 1.12.0
VERSION 1.13.0
LANGUAGES NONE)

if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
Expand Down
14 changes: 14 additions & 0 deletions ChangeLog.MD
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,20 @@
## Unreleased


### Fixed

- Change use of `spread` in `include/v2/parameters/define_derived_macros.m4` to `reshape` to avoid NVHPC issue

### Added

- Enabled feature that allows pointers into container objects to remain valid when container grows/shrinks. This ability is already baked into the polymorphic case where `MOVE_ALLOC()` is used. Now if one uses `#define T_deferred` gFTL will also use a wrapper type with an allocatable component and `MOVE_ALLOC()` under the hood.

### Changed

- Update CI to remove `macos-12`, add `macos-14` and `ubuntu-24.04`

## [1.13.0] - 2024-03-20

### Fixed

- Implemented workarounds for ifx compiler and v1 interfaces. v2 tests were fine.
Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
[![Build Status](https://travis-ci.com/Goddard-Fortran-Ecosystem/gFTL.svg?branch=master)](https://travis-ci.com/Goddard-Fortran-Ecosystem/gFTL)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)

This package generates containers (Vector, Set, Map, ...) with Fortran interfaces. It is essentially a brute force analog of C++ STL.
Expand Down
1 change: 1 addition & 0 deletions include/v2/parameters/cpp_copy.m4
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ cpp_copy(default)
cpp_copy(rank)
cpp_copy(shape)
cpp_copy(polymorphic)
cpp_copy(deferred)

cpp_copy(FREE,x)
cpp_copy(COPY,lhs,rhs)
Expand Down
1 change: 1 addition & 0 deletions include/v2/parameters/cpp_undef.m4
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ cpp_undef(rank)
cpp_undef(shape)
cpp_undef(extents)
cpp_undef(polymorphic)
cpp_undef(deferred)

cpp_undef(FREE)
cpp_undef(COPY)
Expand Down
2 changes: 1 addition & 1 deletion include/v2/parameters/define_derived_macros.m4
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ define(__T,`__`'_T()')
# define __T()_dimension_component__ __T()_dimension_result__
# define __T()_dimension_string__ __T()_shape_string__
# ifndef __T()_default__
# define __T()_default__ reshape([__T()_type__ :: ],spread(0,1,__T()_rank))
# define __T()_default__ reshape([__T()_type__ :: ],reshape([0],shape=[__T()_rank],pad=[0]))
# endif
# endif
# define __T()_dimension_dummy__ __T()_dimension_component__
Expand Down
2 changes: 1 addition & 1 deletion tools/ci-install-cmake.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ if [ ! -d "${HOME}/local/cmake/bin" ] ; then
cd cmake-${cmake_ver}
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=${HOME}/local/cmake
make -j$(nproc)
make -j4
make install/strip
cd ../.. && rm -r cmake-${cmake_ver}
fi
2 changes: 1 addition & 1 deletion tools/ci-install-gfe.bash
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ do
cd ${GFE_DIR}/${repo}
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=${GFE_INSTALL_DIR} -DCMAKE_PREFIX_PATH=${GFE_INSTALL_DIR}
make -j$(nproc) install
make -j4 install
done

0 comments on commit 5eb28bb

Please sign in to comment.