Skip to content

Commit f0f4b3b

Browse files
committed
CI: Add flang release containers
1 parent 4dc811b commit f0f4b3b

1 file changed

Lines changed: 34 additions & 13 deletions

File tree

.github/workflows/build.yml

Lines changed: 34 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,25 @@ jobs:
1313
os: [macos-13, macos-14, ubuntu-22.04, ubuntu-24.04]
1414
compiler: [ gfortran ]
1515
version: [ 12, 13, 14 ]
16-
extra_flags: [ -ffree-line-length-0 ]
16+
extra_flags: [ '"-ffree-line-length-0"' ]
1717
include:
18+
# https://hub.docker.com/r/phhargrove/llvm-flang/tags
1819
- os: ubuntu-24.04
1920
compiler: flang
20-
version: new
21-
container: gmao/llvm-flang:latest
22-
extra_flags: -g
21+
version: 20
22+
extra_flags: '"-g"'
23+
container: phhargrove/llvm-flang:20.1.0-1
24+
- os: ubuntu-24.04
25+
compiler: flang
26+
version: 19
27+
extra_flags: '[ "-g", "-mmlir", "-allow-assumed-rank" ]'
28+
container: phhargrove/llvm-flang:19.1.1-1
29+
# - os: ubuntu-24.04
30+
# compiler: flang
31+
# version: new
32+
# container: gmao/llvm-flang:latest
33+
# extra_flags: -g
34+
2335
exclude:
2436
- os: ubuntu-22.04
2537
version: 13 # no package available
@@ -30,25 +42,34 @@ jobs:
3042
image: ${{ matrix.container }}
3143

3244
env:
33-
GCC_V: ${{ matrix.version }}
34-
FPM_FC: ${{ matrix.compiler }}-${{ matrix.version }}
35-
EXTRA_FLAGS: ${{ matrix.extra_flags }}
45+
GCC_VERSION: ${{ matrix.version }}
46+
FC: ${{ matrix.compiler }}
47+
EXTRA_FLAGS: ${{ join(fromJSON(matrix.extra_flags), ' --flag ') }}
3648

3749
steps:
3850
- name: Checkout code
3951
uses: actions/checkout@v4
4052

4153
- name: Install Dependencies Ubuntu
42-
if: contains(matrix.os, 'ubuntu') && 0
54+
if: ${{ contains(matrix.os, 'ubuntu') && matrix.compiler == 'gfortran' && 0 }}
4355
run: |
4456
sudo apt-get update
4557
sudo apt list -a 'gfortran-*'
46-
sudo apt install -y gfortran-${GCC_V} build-essential
47-
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \
48-
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \
49-
--slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_V}
58+
sudo apt install -y gfortran-${GCC_VERSION} build-essential
59+
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_VERSION} 100 \
60+
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_VERSION}
61+
62+
- name: Setup Compilers
63+
run: |
64+
set -x
65+
if test "$FC" = "flang" ; then \
66+
echo "FPM_FC=flang-new" >> "$GITHUB_ENV" ; \
67+
else \
68+
echo "FPM_FC=gfortran-${GCC_VERSION}" >> "$GITHUB_ENV" ; \
69+
fi
5070
51-
- uses: fortran-lang/setup-fpm@main
71+
- name: Setup FPM
72+
uses: fortran-lang/setup-fpm@main
5273
if: ${{ matrix.os != 'macos-14' }}
5374
with:
5475
github-token: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)