Merge pull request #1661 from gforney/master #549
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Scripts & Make Build | |
on: [push, pull_request] | |
env: | |
WINDOWS_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/irc_nas/18599/w_BaseKit_p_2022.1.3.210_offline.exe | |
WINDOWS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/irc_nas/18578/w_HPCKit_p_2022.1.3.145_offline.exe | |
LINUX_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/irc_nas/18487/l_BaseKit_p_2022.1.2.146_offline.sh | |
LINUX_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/irc_nas/18479/l_HPCKit_p_2022.1.2.117_offline.sh | |
MACOS_HPCKIT_URL: https://registrationcenter-download.intel.com/akdlm/irc_nas/18341/m_HPCKit_p_2022.1.0.86_offline.dmg | |
WINDOWS_CPP_COMPONENTS: intel.oneapi.win.cpp-compiler | |
WINDOWS_FORTRAN_COMPONENTS: intel.oneapi.win.ifort-compiler | |
WINDOWS_DPCPP_COMPONENTS: intel.oneapi.win.dpcpp-compiler | |
LINUX_CPP_COMPONENTS: intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic | |
LINUX_FORTRAN_COMPONENTS: intel-oneapi-compiler-fortran | |
LINUX_DPCPP_COMPONENTS: intel-oneapi-compiler-dpcpp-cpp | |
LINUX_CPP_COMPONENTS_WEB: intel.oneapi.lin.dpcpp-cpp-compiler-pro | |
LINUX_FORTRAN_COMPONENTS_WEB: intel.oneapi.lin.ifort-compiler | |
LINUX_DPCPP_COMPONENTS_WEB: intel.oneapi.lin.dpcpp-cpp-compiler | |
MACOS_CPP_COMPONENTS: intel.oneapi.mac.cpp-compiler | |
MACOS_FORTRAN_COMPONENTS: intel.oneapi.mac.ifort-compiler | |
CACHE_NUMBER: 2 | |
COMPILER_VERSION: 2022.0.3 | |
jobs: | |
build-macos-intel: | |
name: intel_osx_${{ matrix.program }} | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
program: | |
- background | |
- convert | |
- env2mod | |
- flush | |
- makepo | |
- mergepo | |
- smokediff | |
- smokeview | |
- smokezip | |
- timep | |
- wind2fds | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: prepare for cache restore | |
run: | | |
sudo mkdir -p /opt/intel | |
sudo chown $USER /opt/intel | |
- name: cache install | |
id: cache-install | |
uses: actions/cache@v2 | |
with: | |
path: /opt/intel/oneapi | |
key: install2-${{ env.MACOS_HPCKIT_URL }}-${{ env.MACOS_CPP_COMPONENTS }} | |
- name: install | |
if: steps.cache-install.outputs.cache-hit != 'true' | |
run: bash .github/workflows/install_macos_oneapi.sh $MACOS_HPCKIT_URL | |
- name: build ${{ matrix.program }} | |
shell: bash | |
run: | | |
source /opt/intel/oneapi/setvars.sh | |
pushd Build/${{ matrix.program }}/intel_osx_64 | |
./make_${{ matrix.program }}.sh | |
popd | |
build-linux-intel: | |
name: intel_linux_${{ matrix.program }} | |
strategy: | |
fail-fast: false | |
matrix: | |
program: | |
- background | |
- convert | |
- env2mod | |
- flush | |
- makepo | |
- mergepo | |
- smokediff | |
- smokeview | |
- smokezip | |
- timep | |
- wind2fds | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: prepare for cache restore | |
run: | | |
sudo mkdir -p /opt/intel | |
sudo chown $USER /opt/intel | |
- name: cache install | |
id: cache-install | |
uses: actions/cache@v2 | |
with: | |
path: /opt/intel/oneapi | |
key: install2-${{ env.LINUX_HPCKIT_URL }}-${{ env.LINUX_CPP_COMPONENTS }} | |
- name: install | |
if: steps.cache-install.outputs.cache-hit != 'true' | |
run: bash .github/workflows/install_linux_oneapi.sh $LINUX_HPCKIT_URL | |
- name: build ${{ matrix.program }} | |
shell: bash | |
run: | | |
source /opt/intel/oneapi/setvars.sh | |
sudo apt-get update | |
sudo apt-get install build-essential freeglut3-dev libx11-dev libxmu-dev libxi-dev | |
pushd Build/${{ matrix.program }}/intel_linux_64 | |
./make_${{ matrix.program }}.sh | |
popd | |
build-linux-gnu: | |
name: gnu_linux_${{ matrix.program }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
program: | |
- background | |
- convert | |
- env2mod | |
- flush | |
- makepo | |
- mergepo | |
- smokediff | |
- smokeview | |
- smokezip | |
- timep | |
- wind2fds | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Build | |
shell: bash | |
run: | | |
sudo apt-get update | |
sudo apt-get install build-essential freeglut3-dev libx11-dev libxmu-dev libxi-dev | |
pushd Build/${{ matrix.program }}/gnu_linux_64 || pushd Build/${{ matrix.program }}/gcc_linux_64 | |
./make_${{ matrix.program }}.sh | |
popd | |
build-windows: | |
name: intel_win_${{ matrix.program }} | |
strategy: | |
fail-fast: false | |
matrix: | |
program: | |
- background | |
- convert | |
- env2mod | |
- flush | |
- getdate | |
- get_time | |
- hashfile | |
- makepo | |
- mergepo | |
- set_path | |
- sh2bat | |
- smokediff | |
- smokeview | |
- smokezip | |
- timep | |
- wind2fds | |
runs-on: windows-2019 | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: cache install | |
id: cache-install | |
uses: actions/cache@v2 | |
with: | |
path: | | |
C:\Program Files (x86)\Intel\oneAPI\setvars.bat | |
C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat | |
C:\Program Files (x86)\Intel\oneAPI\compiler | |
key: install-${{ env.CACHE_NUMBER }}-${{ env.WINDOWS_HPCKIT_URL }}-${{ env.WINDOWS_CPP_COMPONENTS }}-compiler-${{ hashFiles('**/scripts/cache_exclude_windows.sh') }} | |
- name: install | |
if: steps.cache-install.outputs.cache-hit != 'true' | |
run: .github/workflows/install_windows_oneapi.bat $WINDOWS_HPCKIT_URL $WINDOWS_CPP_COMPONENTS | |
- name: Make latest link | |
shell: cmd | |
run: | | |
rmdir "C:\Program Files (x86)\Intel\oneAPI\compiler\latest" | |
mklink /D "C:\Program Files (x86)\Intel\oneAPI\compiler\latest" "C:\Program Files (x86)\Intel\oneAPI\compiler\2022.0.3" | |
- name: build libs | |
if: matrix.program == 'smokezip' || matrix.program == 'smokeview' | |
shell: cmd | |
run: | | |
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" | |
pushd Build\LIBS\intel_win_64 | |
call make_LIBS.bat bot | |
dir | |
popd | |
- name: build ${{ matrix.program }} | |
shell: cmd | |
run: | | |
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" | |
"C:\Program Files (x86)\Intel\oneAPI\compiler\latest\windows\bin\icx.exe" -V | |
where icx | |
icx -V | |
set PATH | |
dir "C:\Program Files (x86)\Intel\oneAPI\compiler\2022.0.3" | |
dir "C:\Program Files (x86)\Intel\oneAPI\compiler\2022.0.3" | |
dir "C:\Program Files (x86)\Intel\oneAPI\compiler\2022.0.3\windows" | |
dir "C:\Program Files (x86)\Intel\oneAPI\compiler\2022.0.3\windows\bin" | |
pushd Build\${{ matrix.program }}\intel_win_64 | |
call make_${{ matrix.program }}.bat | |
popd | |
- name: exclude unused files from cache | |
if: steps.cache-install.outputs.cache-hit != 'true' | |
shell: bash | |
run: .github/workflows/cache_exclude_windows.sh | |