13
13
os : [macos-13, macos-14, macos-15, ubuntu-22.04, ubuntu-24.04]
14
14
compiler : [ gfortran ]
15
15
version : [ 12, 13, 14 ]
16
- extra_flags : [ -ffree-line-length-0 ]
16
+ extra_flags : [ -g ]
17
17
18
18
exclude :
19
19
- os : ubuntu-22.04
26
26
- os : ubuntu-24.04
27
27
compiler : flang
28
28
version : 20
29
- extra_flags : -g
30
29
container : phhargrove/llvm-flang:20.1.0-1
31
30
- os : ubuntu-24.04
32
31
compiler : flang
@@ -37,27 +36,25 @@ jobs:
37
36
# compiler: flang
38
37
# version: new
39
38
# container: gmao/llvm-flang:latest
40
- # extra_flags: -g
41
39
- os : ubuntu-24.04
42
40
compiler : ifx
43
41
version : 2025.1.0
44
42
error_stop_code : 128
45
- extra_flags : -g
46
43
container : intel/fortran-essentials:2025.1.0-0-devel-ubuntu24.04
47
44
# container: intel/oneapi-hpckit:2025.1.0-0-devel-ubuntu24.04
48
45
- os : ubuntu-22.04
49
46
compiler : ifx
50
47
version : 2025.0.0
51
48
error_stop_code : 128
52
- extra_flags : -g
53
49
container : intel/fortran-essentials:2025.0.0-0-devel-ubuntu22.04
54
50
55
51
container :
56
52
image : ${{ matrix.container }}
57
53
58
54
env :
59
- GCC_VERSION : ${{ matrix.version }}
55
+ COMPILER_VERSION : ${{ matrix.version }}
60
56
FC : ${{ matrix.compiler }}
57
+ FFLAGS : ${{ matrix.extra_flags }}
61
58
FPM_FLAGS : --profile release --verbose
62
59
63
60
steps :
69
66
run : |
70
67
sudo apt-get update
71
68
sudo apt list -a 'gfortran-*'
72
- sudo apt install -y gfortran-${GCC_VERSION } build-essential
73
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_VERSION } 100 \
74
- --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_VERSION }
69
+ sudo apt install -y gfortran-${COMPILER_VERSION } build-essential
70
+ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${COMPILER_VERSION } 100 \
71
+ --slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${COMPILER_VERSION }
75
72
76
73
- name : Setup Compilers
77
74
run : |
81
78
elif test "$FC" = "ifx" ; then \
82
79
echo "FPM_FC=ifx" >> "$GITHUB_ENV" ; \
83
80
else \
84
- echo "FPM_FC=gfortran-${GCC_VERSION}" >> "$GITHUB_ENV" ; \
81
+ echo "FPM_FC=gfortran-${COMPILER_VERSION}" >> "$GITHUB_ENV" ; \
82
+ echo "FFLAGS=-ffree-line-length-0 $FFLAGS" >> "$GITHUB_ENV" ; \
85
83
fi
86
84
if test -n "${{ matrix.error_stop_code }}" ; then \
87
85
echo "ERROR_STOP_CODE=${{ matrix.error_stop_code }}" >> "$GITHUB_ENV" ; \
@@ -118,22 +116,22 @@ jobs:
118
116
- name : Build and Test (Assertions OFF)
119
117
run : |
120
118
set -x
121
- fpm test ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} "
122
- fpm run --example false-assertion ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} "
123
- fpm run --example invoke-via-macro ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} "
119
+ fpm test ${FPM_FLAGS} --flag "$FFLAGS "
120
+ fpm run --example false-assertion ${FPM_FLAGS} --flag "$FFLAGS "
121
+ fpm run --example invoke-via-macro ${FPM_FLAGS} --flag "$FFLAGS "
124
122
125
123
- name : Build and Test (Assertions ON)
126
124
env :
127
125
FPM_FLAGS : ${{ env.FPM_FLAGS }} --flag -DASSERTIONS
128
126
run : |
129
127
set -x
130
- fpm test ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} "
131
- ( set +e ; fpm run --example false-assertion ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} " ; test $? = $ERROR_STOP_CODE )
132
- ( set +e ; fpm run --example invoke-via-macro ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} " ; test $? = $ERROR_STOP_CODE )
128
+ fpm test ${FPM_FLAGS} --flag "$FFLAGS "
129
+ ( set +e ; fpm run --example false-assertion ${FPM_FLAGS} --flag "$FFLAGS " ; test $? = $ERROR_STOP_CODE )
130
+ ( set +e ; fpm run --example invoke-via-macro ${FPM_FLAGS} --flag "$FFLAGS " ; test $? = $ERROR_STOP_CODE )
133
131
134
132
- name : Test Assertions w/ Parallel Callbacks
135
133
env :
136
134
FPM_FLAGS : ${{ env.FPM_FLAGS }} --flag -DASSERTIONS --flag -DASSERT_MULTI_IMAGE --flag -DASSERT_PARALLEL_CALLBACKS
137
135
run : |
138
136
set -x
139
- ( set +e ; fpm run --example false-assertion ${FPM_FLAGS} --flag "${{ matrix.EXTRA_FLAGS }} " ; test $? = $ERROR_STOP_CODE )
137
+ ( set +e ; fpm run --example false-assertion ${FPM_FLAGS} --flag "$FFLAGS " ; test $? = $ERROR_STOP_CODE )
0 commit comments