Skip to content

* c/nondominated.h: Specialize find_nondominated_2d to speed up the … #95

* c/nondominated.h: Specialize find_nondominated_2d to speed up the …

* c/nondominated.h: Specialize find_nondominated_2d to speed up the … #95

Workflow file for this run

name: C
on:
push:
branches-ignore: [gh-pages]
paths:
- '.github/workflows/C.yml'
- 'c/Make*'
- 'c/*.mk'
- 'c/*.[ch]p?p?'
pull_request:
branches-ignore: [gh-pages]
paths:
- '.github/workflows/C.yml'
- 'c/Make*'
- 'c/*.mk'
- 'c/*.[ch]p?p?'
# Manual run
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
if: "! contains(github.event.head_commit.message, '[skip ci]')"
name: Build C code on ${{ matrix.os }} with ${{ matrix.cc }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
# macos-13 is an intel runner, macos-14 is apple silicon
os: [ubuntu-22.04, windows-latest, macos-13, macos-14]
cc: [ gcc ]
include:
- { os: macos-13, cc: clang }
- { os: macos-14, cc: clang }
- { os: ubuntu-24.04, cc: gcc-14 }
env:
CC: ${{ matrix.cc }}
steps:
- uses: actions/checkout@v4
- name: Put MSYS2_MinGW64 on PATH
if: runner.os == 'Windows'
run: |
echo "${{ runner.temp }}/msys64/mingw64/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
echo "${{ runner.temp }}/msys64/mingw64/usr/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- run: $CC -v
shell: bash
- run: make -C c all DEBUG=1 WERROR=1
if: runner.os != 'Windows'
# FIXME: How to install sanitizers in Windows?
- run: make -C c all DEBUG=0 WERROR=1
- name: Functional tests
run: |
./bin/dominatedsets --help
./bin/dominatedsets --help
./bin/eaf --help
./bin/epsilon --help
./bin/hv --help
./bin/igd --help
./bin/ndsort --help
./bin/nondominated --help
msys2:
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
sys: [ clang64 ]
cc: [ clang ]
#- { sys: mingw64, cc: gcc }
#- { sys: ucrt64, cc: gcc }
defaults:
run:
shell: msys2 {0}
steps:
- name: Disable autocrlf
shell: pwsh
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@v4
- uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.sys }}
update: true
install: >-
make
pacboy: >-
${{ matrix.cc }}:p
- run: make -C c all DEBUG=1 WARN_FLAGS='-Werror' CC=${{ matrix.cc }}
- run: make -C c all DEBUG=0 WARN_FLAGS='-Werror' CC=${{ matrix.cc }}
- name: Functional tests
run: |
./bin/dominatedsets --help
./bin/dominatedsets --help
./bin/eaf --help
./bin/epsilon --help
./bin/hv --help
./bin/igd --help
./bin/ndsort --help
./bin/nondominated --help