name: hdf5 dev icx CI # Triggers the workflow on a call from another workflow on: workflow_call: inputs: build_mode: description: "release vs. debug build" required: true type: string permissions: contents: read env: CTEST_OUTPUT_ON_FAILURE: 1 jobs: intel_oneapi_linux: name: "linux-oneapi ${{ inputs.build_mode }}" runs-on: ubuntu-latest steps: - name: Get Sources (Linux) uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install Dependencies (Linux) shell: bash run: | sudo apt-get update sudo apt-get install ninja-build graphviz sudo apt install libssl3 libssl-dev libcurl4 libcurl4-openssl-dev - name: Install oneAPI (Linux) uses: fortran-lang/setup-fortran@be037f0a45b1160f139d4ccd0b96f9e9bfd6a682 # v1 id: setup-fortran with: compiler: intel version: '2025.2' - name: Configure (Linux) shell: bash env: FC: ${{ steps.setup-fortran.outputs.fc }} CC: ${{ steps.setup-fortran.outputs.cc }} run: | mkdir "${{ runner.workspace }}/build" cd "${{ runner.workspace }}/build" cmake -C $GITHUB_WORKSPACE/config/cmake/cacheinit.cmake -G Ninja --log-level=VERBOSE \ -DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} \ -DHDF5_BUILD_FORTRAN:BOOL=ON \ -DHDF5_BUILD_CPP_LIB:BOOL=ON \ ${{ github.workspace }} - name: Build (Linux) shell: bash env: FC: ${{ steps.setup-fortran.outputs.fc }} CC: ${{ steps.setup-fortran.outputs.cc }} run: | cmake --build . --parallel 3 --config ${{ inputs.build_mode }} working-directory: ${{ runner.workspace }}/build - name: Run Tests (Linux) shell: bash env: FC: ${{ steps.setup-fortran.outputs.fc }} CC: ${{ steps.setup-fortran.outputs.cc }} run: | ctest . --parallel 2 -C ${{ inputs.build_mode }} working-directory: ${{ runner.workspace }}/build Intel_oneapi_windows: name: "windows-oneapi ${{ inputs.build_mode }}" runs-on: windows-2022 steps: - name: Get Sources (Windows) uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Install Dependencies (Windows) run: choco install ninja - name: install oneAPI (Windows) uses: fortran-lang/setup-fortran@be037f0a45b1160f139d4ccd0b96f9e9bfd6a682 # v1 id: setup-fortran with: compiler: intel version: '2025.2' - name: Setup Java uses: actions/setup-java@dd06d9cba3e5552c54d9f8ea23572deb30010f7c # v6.0.0 with: java-version: 11 distribution: 'temurin' - name: Configure (Windows) shell: pwsh env: FC: ${{ steps.setup-fortran.outputs.fc }} CC: ${{ steps.setup-fortran.outputs.cc }} run: | mkdir "${{ runner.workspace }}/build" Set-Location -Path "${{ runner.workspace }}\\build" cmake -C ${{ github.workspace }}/config/cmake/cacheinit.cmake -G Ninja -DCMAKE_BUILD_TYPE=${{ inputs.build_mode }} -DHDF5_BUILD_FORTRAN=ON -DHDF5_BUILD_CPP_LIB=ON -DLIBAEC_USE_LOCALCONTENT=OFF -DZLIB_USE_LOCALCONTENT=OFF ${{ github.workspace }} - name: Build (Windows) shell: pwsh env: FC: ${{ steps.setup-fortran.outputs.fc }} CC: ${{ steps.setup-fortran.outputs.cc }} run: | cmake --build . --parallel 3 --config ${{ inputs.build_mode }} working-directory: ${{ runner.workspace }}/build - name: Run Tests (Windows) shell: pwsh env: FC: ${{ steps.setup-fortran.outputs.fc }} CC: ${{ steps.setup-fortran.outputs.cc }} run: | ctest . --parallel 2 -C ${{ inputs.build_mode }} -E tfloatsattrs working-directory: ${{ runner.workspace }}/build