Skip to content

Commit 0ceb65f

Browse files
iulusoywpbonelligithub-actions[bot]
authored
Sync fork (#19)
* fix(mac/lfortran): only install micromamba if needed (fortran-lang#79) * docs(readme): mention lfortran in compiler option section (fortran-lang#80) * ci: include long_compat.csv in autoupdate prs (fortran-lang#85) * Update compatibility matrix (fortran-lang#86) Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * refactor(gcc): drop support for gcc 7 and 8 (fortran-lang#83) These have patchy availability. And anyways, the oldest release series still receiving support is 11, so there may be an argument for dropping 9 and 10, but I will leave that for later. In any case, nothing prevents trying unsupported versions, but we will no longer test them or make guarantees. This frees up room in the test matrix, which is capped at 256 jobs * feat(intel): support intel 2024.1 on linux and windows (fortran-lang#84) --------- Co-authored-by: wpbonelli <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 parent bcd830b commit 0ceb65f

File tree

6 files changed

+40
-37
lines changed

6 files changed

+40
-37
lines changed

.github/compat/long_compat.csv

+12-23
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ macos-12,gcc,10,&check;
33
macos-12,gcc,11,&check;
44
macos-12,gcc,12,&check;
55
macos-12,gcc,13,&check;
6-
macos-12,gcc,7,&check;
7-
macos-12,gcc,8,&check;
86
macos-12,gcc,9,&check;
97
macos-12,intel-classic,2021.1.2,
108
macos-12,intel-classic,2021.1,&check;
@@ -14,7 +12,7 @@ macos-12,intel-classic,2021.3,&check;
1412
macos-12,intel-classic,2021.4,&check;
1513
macos-12,intel-classic,2021.5,&check;
1614
macos-12,intel-classic,2021.6,&check;
17-
macos-12,intel-classic,2021.7.1,&check;
15+
macos-12,intel-classic,2021.7.1,
1816
macos-12,intel-classic,2021.7,&check;
1917
macos-12,intel-classic,2021.8,&check;
2018
macos-12,intel-classic,2021.9,&check;
@@ -25,8 +23,6 @@ macos-13,gcc,10,&check;
2523
macos-13,gcc,11,&check;
2624
macos-13,gcc,12,&check;
2725
macos-13,gcc,13,&check;
28-
macos-13,gcc,7,
29-
macos-13,gcc,8,
3026
macos-13,intel-classic,2021.1.2,
3127
macos-13,intel-classic,2021.1,&check;
3228
macos-13,intel-classic,2021.10,&check;
@@ -35,7 +31,7 @@ macos-13,intel-classic,2021.3,&check;
3531
macos-13,intel-classic,2021.4,&check;
3632
macos-13,intel-classic,2021.5,&check;
3733
macos-13,intel-classic,2021.6,&check;
38-
macos-13,intel-classic,2021.7.1,&check;
34+
macos-13,intel-classic,2021.7.1,
3935
macos-13,intel-classic,2021.7,&check;
4036
macos-13,intel-classic,2021.8,&check;
4137
macos-13,intel-classic,2021.9,&check;
@@ -45,7 +41,6 @@ macos-13,lfortran,0.33.0,&check;
4541
macos-14,gcc,11,&check;
4642
macos-14,gcc,12,&check;
4743
macos-14,gcc,13,&check;
48-
macos-14,gcc,7,
4944
macos-14,intel-classic,2021.1.2,
5045
macos-14,intel-classic,2021.1,&check;
5146
macos-14,intel-classic,2021.10,&check;
@@ -54,7 +49,7 @@ macos-14,intel-classic,2021.3,&check;
5449
macos-14,intel-classic,2021.4,&check;
5550
macos-14,intel-classic,2021.5,&check;
5651
macos-14,intel-classic,2021.6,&check;
57-
macos-14,intel-classic,2021.7.1,&check;
52+
macos-14,intel-classic,2021.7.1,
5853
macos-14,intel-classic,2021.7,&check;
5954
macos-14,intel-classic,2021.8,&check;
6055
macos-14,intel-classic,2021.9,&check;
@@ -65,8 +60,6 @@ ubuntu-20.04,gcc,10,&check;
6560
ubuntu-20.04,gcc,11,&check;
6661
ubuntu-20.04,gcc,12,
6762
ubuntu-20.04,gcc,13,&check;
68-
ubuntu-20.04,gcc,7,&check;
69-
ubuntu-20.04,gcc,8,&check;
7063
ubuntu-20.04,gcc,9,&check;
7164
ubuntu-20.04,intel-classic,2021.1.2,&check;
7265
ubuntu-20.04,intel-classic,2021.1,&check;
@@ -92,6 +85,7 @@ ubuntu-20.04,intel,2023.0,&check;
9285
ubuntu-20.04,intel,2023.1,&check;
9386
ubuntu-20.04,intel,2023.2,&check;
9487
ubuntu-20.04,intel,2024.0,&check;
88+
ubuntu-20.04,intel,2024.1,&check;
9589
ubuntu-20.04,lfortran,0.31.0,&check;
9690
ubuntu-20.04,lfortran,0.32.0,&check;
9791
ubuntu-20.04,lfortran,0.33.0,&check;
@@ -121,8 +115,6 @@ ubuntu-22.04,gcc,10,&check;
121115
ubuntu-22.04,gcc,11,&check;
122116
ubuntu-22.04,gcc,12,&check;
123117
ubuntu-22.04,gcc,13,&check;
124-
ubuntu-22.04,gcc,7,
125-
ubuntu-22.04,gcc,8,
126118
ubuntu-22.04,gcc,9,&check;
127119
ubuntu-22.04,intel-classic,2021.1.2,&check;
128120
ubuntu-22.04,intel-classic,2021.1,&check;
@@ -148,6 +140,7 @@ ubuntu-22.04,intel,2023.0,&check;
148140
ubuntu-22.04,intel,2023.1,&check;
149141
ubuntu-22.04,intel,2023.2,&check;
150142
ubuntu-22.04,intel,2024.0,&check;
143+
ubuntu-22.04,intel,2024.1,&check;
151144
ubuntu-22.04,lfortran,0.31.0,&check;
152145
ubuntu-22.04,lfortran,0.32.0,&check;
153146
ubuntu-22.04,lfortran,0.33.0,&check;
@@ -156,14 +149,12 @@ ubuntu-22.04,nvidia-hpc,20.7,
156149
ubuntu-22.04,nvidia-hpc,20.9,
157150
ubuntu-22.04,nvidia-hpc,21.1,
158151
ubuntu-22.04,nvidia-hpc,21.11,&check;
159-
ubuntu-22.04,nvidia-hpc,21.7,
160-
ubuntu-22.04,nvidia-hpc,22.1,
152+
ubuntu-22.04,nvidia-hpc,21.9,
161153
ubuntu-22.04,nvidia-hpc,22.11,&check;
162154
ubuntu-22.04,nvidia-hpc,22.2,
163155
ubuntu-22.04,nvidia-hpc,22.3,
164156
ubuntu-22.04,nvidia-hpc,22.5,
165157
ubuntu-22.04,nvidia-hpc,22.7,
166-
ubuntu-22.04,nvidia-hpc,22.9,
167158
ubuntu-22.04,nvidia-hpc,23.1,
168159
ubuntu-22.04,nvidia-hpc,23.11,&check;
169160
ubuntu-22.04,nvidia-hpc,23.3,&check;
@@ -174,8 +165,6 @@ windows-2019,gcc,10,&check;
174165
windows-2019,gcc,11,&check;
175166
windows-2019,gcc,12,&check;
176167
windows-2019,gcc,13,&check;
177-
windows-2019,gcc,7,
178-
windows-2019,gcc,8,&check;
179168
windows-2019,gcc,9,&check;
180169
windows-2019,intel-classic,2021.1.2,
181170
windows-2019,intel-classic,2021.1,
@@ -187,7 +176,7 @@ windows-2019,intel-classic,2021.5,
187176
windows-2019,intel-classic,2021.6,&check;
188177
windows-2019,intel-classic,2021.7.1,
189178
windows-2019,intel-classic,2021.7,&check;
190-
windows-2019,intel-classic,2021.8,&check;
179+
windows-2019,intel-classic,2021.8,
191180
windows-2019,intel-classic,2021.9,&check;
192181
windows-2019,intel,2021.1.2,
193182
windows-2019,intel,2021.1,
@@ -197,19 +186,18 @@ windows-2019,intel,2022.0,
197186
windows-2019,intel,2022.1,&check;
198187
windows-2019,intel,2022.2.1,
199188
windows-2019,intel,2022.2,&check;
200-
windows-2019,intel,2023.0,&check;
189+
windows-2019,intel,2023.0,
201190
windows-2019,intel,2023.1,&check;
202191
windows-2019,intel,2023.2,&check;
203192
windows-2019,intel,2024.0,&check;
193+
windows-2019,intel,2024.1,&check;
204194
windows-2019,lfortran,0.31.0,&check;
205195
windows-2019,lfortran,0.32.0,&check;
206196
windows-2019,lfortran,0.33.0,&check;
207197
windows-2022,gcc,10,&check;
208198
windows-2022,gcc,11,&check;
209199
windows-2022,gcc,12,&check;
210200
windows-2022,gcc,13,&check;
211-
windows-2022,gcc,7,
212-
windows-2022,gcc,8,&check;
213201
windows-2022,gcc,9,&check;
214202
windows-2022,intel-classic,2021.1.2,
215203
windows-2022,intel-classic,2021.1,
@@ -221,7 +209,7 @@ windows-2022,intel-classic,2021.5,
221209
windows-2022,intel-classic,2021.6,&check;
222210
windows-2022,intel-classic,2021.7.1,
223211
windows-2022,intel-classic,2021.7,&check;
224-
windows-2022,intel-classic,2021.8,&check;
212+
windows-2022,intel-classic,2021.8,
225213
windows-2022,intel-classic,2021.9,&check;
226214
windows-2022,intel,2021.1.2,
227215
windows-2022,intel,2021.1,
@@ -231,10 +219,11 @@ windows-2022,intel,2022.0,
231219
windows-2022,intel,2022.1,&check;
232220
windows-2022,intel,2022.2.1,
233221
windows-2022,intel,2022.2,&check;
234-
windows-2022,intel,2023.0,&check;
222+
windows-2022,intel,2023.0,
235223
windows-2022,intel,2023.1,&check;
236224
windows-2022,intel,2023.2,&check;
237225
windows-2022,intel,2024.0,&check;
226+
windows-2022,intel,2024.1,&check;
238227
windows-2022,lfortran,0.31.0,&check;
239228
windows-2022,lfortran,0.32.0,&check;
240229
windows-2022,lfortran,0.33.0,&check;

.github/compat/matrix.yml

+1-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ toolchain:
1212
- {compiler: gcc, version: 11}
1313
- {compiler: gcc, version: 10}
1414
- {compiler: gcc, version: 9}
15-
- {compiler: gcc, version: 8}
16-
- {compiler: gcc, version: 7}
15+
- {compiler: intel, version: '2024.1'}
1716
- {compiler: intel, version: '2024.0'}
1817
- {compiler: intel, version: '2023.2'}
1918
- {compiler: intel, version: '2023.1'}

.github/workflows/test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ jobs:
221221
default_branch="${{ github.event.repository.default_branch }}"
222222
223223
git switch -c "$updated_branch"
224-
git add .github/compat/compat.csv README.md
224+
git add .github/compat/*compat.csv README.md
225225
git commit -m "Update compatibility matrix"
226226
git push -u origin "$updated_branch"
227227
gh pr create -B "$default_branch" -H "$updated_branch" --title "Update compatibility matrix" --body-file .github/compat/compat.md

README.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,11 @@ jobs:
6666
## Options
6767
6868
- *compiler*: Compiler toolchain to setup, available options are
69-
- *gcc* (for `gfortran`)
70-
- *intel* (for `ifx`)
71-
- *intel-classic* (for `ifort`)
72-
- *nvidia-hpc* (for `nvfortran`)
69+
- *gcc* for `gfortran`
70+
- *intel* for `ifx`
71+
- *intel-classic* for `ifort`
72+
- *lfortran* for `lfortran`
73+
- *nvidia-hpc* for `nvfortran`
7374
- *version*: Version of the compiler toolchain. See [runner compatibility](#runner-compatibility) charts below.
7475
- *install_mkl*: If MKL libraries should be installed alongsider the intel compiler. Defaults to `false`.
7576

action.yml

+13-2
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,20 @@ runs:
4646
path: ${{ env.ONEAPI_ROOT }}
4747
key: ${{ runner.os }}-${{ inputs.compiler }}-${{ inputs.version }}-${{ steps.get-date.outputs.date }}
4848

49-
# used to install lfortran on mac
50-
- uses: mamba-org/setup-micromamba@v1
49+
# Use micromamba for lfortran install on mac. Check if micromamba already
50+
# exists, only install it if needed. If we install it, clean it up after.
51+
- name: Check for micromamba
52+
id: check-umamba
5153
if: runner.os == 'macOS' && contains(inputs.compiler, 'lfortran')
54+
shell: bash
55+
run: |
56+
if [ "$(command -v micromamba)" ]; then
57+
echo "install=false" >> $GITHUB_OUTPUT
58+
else
59+
echo "install=true" >> $GITHUB_OUTPUT
60+
fi
61+
- uses: mamba-org/setup-micromamba@v1
62+
if: runner.os == 'macOS' && contains(inputs.compiler, 'lfortran') && steps.check-umamba.outputs.install == 'true'
5263
with:
5364
init-shell: bash
5465
post-cleanup: 'all'

setup-fortran.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -225,10 +225,6 @@ intel_version_map_l()
225225
esac
226226
else
227227
case $actual_version in
228-
# 2024 versions omit patch version number in pkg name
229-
2024.0*)
230-
version=2024.0
231-
;;
232228
2022.0.0 | 2022.0)
233229
version=2022.0.2
234230
;;
@@ -358,7 +354,10 @@ intel_version_map_w()
358354
esac
359355
else
360356
case $actual_version in
361-
2024 | 2024.0 | 2024.0.1)
357+
2024.1 | 2024.1.0)
358+
version=2024.1.0
359+
;;
360+
2024.0 | 2024.0.1)
362361
version=2024.0.1
363362
;;
364363
2023.2 | 2023.1 | 2023.0)
@@ -499,6 +498,10 @@ install_intel_win()
499498
intel_version_map_w $version $classic
500499

501500
case $version in
501+
2024.1.0)
502+
WINDOWS_HPCKIT_URL=https://registrationcenter-download.intel.com/akdlm/IRC_NAS/c95a3b26-fc45-496c-833b-df08b10297b9/w_HPCKit_p_2024.1.0.561_offline.exe
503+
WINDOWS_HPCKIT_COMPONENTS=intel.oneapi.win.ifort-compiler:intel.oneapi.win.cpp-dpcpp-common
504+
;;
502505
2024.0.1)
503506
WINDOWS_HPCKIT_URL=https://registrationcenter-download.intel.com/akdlm/IRC_NAS/7a6db8a1-a8b9-4043-8e8e-ca54b56c34e4/w_HPCKit_p_2024.0.1.35_offline.exe
504507
WINDOWS_HPCKIT_COMPONENTS=intel.oneapi.win.ifort-compiler:intel.oneapi.win.cpp-dpcpp-common

0 commit comments

Comments
 (0)