Skip to content

Commit d91e933

Browse files
committed
ci: use setup-fortran for Intel compiler CI
1 parent 175f1d8 commit d91e933

File tree

1 file changed

+5
-154
lines changed

1 file changed

+5
-154
lines changed

Diff for: .github/workflows/CI.yml

+5-154
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,17 @@ jobs:
2525
- {compiler: gcc, version: 11}
2626
- {compiler: gcc, version: 12}
2727
- {compiler: gcc, version: 13}
28+
- {compiler: intel, version: '2024.1'}
29+
- {compiler: intel-classic, version: '2021.9'}
2830
build: [cmake]
2931
include:
3032
- os: ubuntu-latest
3133
build: cmake-inline
3234
toolchain:
3335
- {compiler: gcc, version: 10}
36+
exclude:
37+
- os: macos-12
38+
toolchain: {compiler: intel, version: '2024.1'}
3439
env:
3540
BUILD_DIR: ${{ matrix.build == 'cmake' && 'build' || '.' }}
3641

@@ -82,157 +87,3 @@ jobs:
8287
- name: Install project
8388
if: ${{ contains(matrix.build, 'cmake') }}
8489
run: cmake --install ${{ env.BUILD_DIR }}
85-
86-
intel-build-llvm:
87-
runs-on: ${{ matrix.os }}
88-
strategy:
89-
fail-fast: false
90-
matrix:
91-
os: [ubuntu-latest]
92-
fc: [ifx]
93-
cc: [icx]
94-
cxx: [icpx]
95-
env:
96-
FC: ${{ matrix.fc }}
97-
CC: ${{ matrix.cc }}
98-
CXX: ${{ matrix.cxx }}
99-
100-
steps:
101-
- name: Checkout code
102-
uses: actions/checkout@v4
103-
104-
- name: Set up Python 3.x
105-
uses: actions/setup-python@v5
106-
with:
107-
python-version: 3.x
108-
109-
- name: Add Intel repository (Linux)
110-
if: contains(matrix.os, 'ubuntu')
111-
run: |
112-
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB \ | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
113-
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
114-
sudo apt-get update
115-
116-
- name: Install Intel oneAPI compiler (Linux)
117-
if: contains(matrix.os, 'ubuntu')
118-
run: |
119-
sudo apt-get install intel-oneapi-compiler-fortran
120-
sudo apt-get install intel-oneapi-compiler-dpcpp-cpp
121-
122-
- name: Setup Intel oneAPI environment
123-
run: |
124-
source /opt/intel/oneapi/setvars.sh
125-
printenv >> $GITHUB_ENV
126-
127-
- name: Install fypp
128-
run: pip install --upgrade fypp
129-
130-
- name: Configure with CMake
131-
run: >-
132-
cmake -Wdev
133-
-DCMAKE_BUILD_TYPE=Release
134-
-DCMAKE_MAXIMUM_RANK:String=4
135-
-DCMAKE_INSTALL_PREFIX=$PWD/_dist
136-
-S . -B build
137-
138-
- name: Build and compile
139-
run: cmake --build build
140-
141-
- name: catch build fail
142-
run: cmake --build build --verbose --parallel 1
143-
if: failure()
144-
145-
- name: test
146-
run: ctest --parallel --output-on-failure --no-tests=error
147-
working-directory: build
148-
149-
- name: Install project
150-
run: cmake --install build
151-
152-
intel-build-classic:
153-
runs-on: ${{ matrix.os }}
154-
strategy:
155-
fail-fast: false
156-
matrix:
157-
os: [macos-12]
158-
fc: [ifort]
159-
cc: [icc]
160-
cxx: [icpc]
161-
env:
162-
MACOS_HPCKIT_URL: >-
163-
https://registrationcenter-download.intel.com/akdlm/IRC_NAS/a99cb1c5-5af6-4824-9811-ae172d24e594/m_HPCKit_p_2023.1.0.44543.dmg
164-
MACOS_FORTRAN_COMPONENTS: all
165-
FC: ${{ matrix.fc }}
166-
CC: ${{ matrix.cc }}
167-
CXX: ${{ matrix.cxx }}
168-
169-
steps:
170-
- name: Checkout code
171-
uses: actions/checkout@v4
172-
173-
- name: Set up Python 3.x
174-
uses: actions/setup-python@v5
175-
with:
176-
python-version: 3.x
177-
178-
- name: Prepare for cache restore (OSX)
179-
if: contains(matrix.os, 'macos')
180-
run: |
181-
sudo mkdir -p /opt/intel
182-
sudo chown $USER /opt/intel
183-
184-
- name: Cache Intel install (OSX)
185-
if: contains(matrix.os, 'macos')
186-
id: cache-install
187-
uses: actions/cache@v2
188-
with:
189-
path: /opt/intel/oneapi
190-
key: install-${{ env.MACOS_HPCKIT_URL }}-${{ env.MACOS_FORTRAN_COMPONENTS }}
191-
192-
- name: Install Intel oneAPI compiler (OSX)
193-
if: contains(matrix.os, 'macos') && steps.cache-install.outputs.cache-hit != 'true'
194-
run: |
195-
curl --output webimage.dmg --url "$URL" --retry 5 --retry-delay 5
196-
hdiutil attach webimage.dmg
197-
if [ -z "$COMPONENTS" ]; then
198-
sudo /Volumes/"$(basename "$URL" .dmg)"/bootstrapper.app/Contents/MacOS/bootstrapper -s --action install --eula=accept --continue-with-optional-error=yes --log-dir=.
199-
installer_exit_code=$?
200-
else
201-
sudo /Volumes/"$(basename "$URL" .dmg)"/bootstrapper.app/Contents/MacOS/bootstrapper -s --action install --components="$COMPONENTS" --eula=accept --continue-with-optional-error=yes --log-dir=.
202-
installer_exit_code=$?
203-
fi
204-
hdiutil detach /Volumes/"$(basename "$URL" .dmg)" -quiet
205-
exit $installer_exit_code
206-
env:
207-
URL: ${{ env.MACOS_HPCKIT_URL }}
208-
COMPONENTS: ${{ env.MACOS_FORTRAN_COMPONENTS }}
209-
210-
- name: Setup Intel oneAPI environment
211-
run: |
212-
source /opt/intel/oneapi/setvars.sh
213-
printenv >> $GITHUB_ENV
214-
215-
- name: Install fypp
216-
run: pip install --upgrade fypp
217-
218-
- name: Configure with CMake
219-
run: >-
220-
cmake -Wdev
221-
-DCMAKE_BUILD_TYPE=Release
222-
-DCMAKE_MAXIMUM_RANK:String=4
223-
-DCMAKE_INSTALL_PREFIX=$PWD/_dist
224-
-S . -B build
225-
226-
- name: Build and compile
227-
run: cmake --build build
228-
229-
- name: catch build fail
230-
run: cmake --build build --verbose --parallel 1
231-
if: failure()
232-
233-
- name: test
234-
run: ctest --parallel --output-on-failure --no-tests=error
235-
working-directory: build
236-
237-
- name: Install project
238-
run: cmake --install build

0 commit comments

Comments
 (0)