Skip to content

chore(deps): update quay.io/pypa/manylinux_2_28_x86_64 docker tag to v2025.12.29 #1460

chore(deps): update quay.io/pypa/manylinux_2_28_x86_64 docker tag to v2025.12.29

chore(deps): update quay.io/pypa/manylinux_2_28_x86_64 docker tag to v2025.12.29 #1460

Workflow file for this run

# Copyright 2023 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Linux Build and Test
on:
push:
branches:
- main
pull_request:
permissions:
contents: read
# This allows a subsequently queued workflow run to interrupt previous runs
concurrency:
group: ${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}
cancel-in-progress: true
jobs:
build:
name: ${{ matrix.cxx }}, ${{ matrix.build_type }}, ivf=${{ matrix.ivf }}, asan=${{ matrix.asan }}
runs-on: ubuntu-22.04
strategy:
matrix:
build_type: [RelWithDebugInfo]
ivf: [OFF, ON]
cxx: [g++-11, g++-12, clang++-15]
asan: [OFF]
cmake_extra_args: [-DSVS_BUILD_BINARIES=YES -DSVS_BUILD_EXAMPLES=YES]
ctest_args: ['']
include:
- cxx: g++-11
cc: gcc-11
- cxx: g++-12
cc: gcc-12
- cxx: clang++-15
cc: clang-15
- cxx: clang++-18
cc: clang-18
build_type: Debug
ivf: OFF
asan: ON
# address sanitizer flags
cmake_extra_args: >-
-DCMAKE_CXX_FLAGS='-fsanitize=address -fno-omit-frame-pointer -g'
-DCMAKE_C_FLAGS='-fsanitize=address -fno-omit-frame-pointer -g'
-DCMAKE_EXE_LINKER_FLAGS='-fsanitize=address'
-DCMAKE_SHARED_LINKER_FLAGS='-fsanitize=address'
-DSVS_BUILD_BINARIES=NO
-DSVS_BUILD_EXAMPLES=NO
# skip longer-running tests
ctest_args: -LE long
exclude:
- cxx: g++-12
ivf: ON
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Install MKL
timeout-minutes: 5
run: |
.github/scripts/setup_apt_repo_linux.sh
sudo apt install intel-oneapi-mkl intel-oneapi-mkl-devel
# Setup environment variables for building against MKL.
# Persist the environment variables for use across multiple subsequent actions.
source /opt/intel/oneapi/setvars.sh
printenv >> $GITHUB_ENV
- name: Install Clang 18
if: matrix.cxx == 'clang++-18'
run: |
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 18
- name: Configure build
working-directory: ${{ runner.temp }}
env:
CXX: ${{ matrix.cxx }}
CC: ${{ matrix.cc }}
TEMP_WORKSPACE: ${{ runner.temp }}
run: |
cmake -B${TEMP_WORKSPACE}/build -S${GITHUB_WORKSPACE} \
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
-DSVS_BUILD_TESTS=YES \
-DSVS_NO_AVX512=NO \
-DSVS_EXPERIMENTAL_ENABLE_IVF=${{ matrix.ivf }} \
${{ matrix.cmake_extra_args }}
- name: Build Tests and Utilities
working-directory: ${{ runner.temp }}/build
run: make -j$(nproc)
- name: Run tests
env:
CTEST_OUTPUT_ON_FAILURE: 1
working-directory: ${{ runner.temp }}/build/tests
run: ctest -C ${{ matrix.build_type }} ${{ matrix.ctest_args }}
- name: Run Cpp Examples
if: matrix.asan != 'ON'
env:
CTEST_OUTPUT_ON_FAILURE: 1
working-directory: ${{ runner.temp }}/build/examples/cpp
run: ctest -C ${{ matrix.build_type }}