Skip to content

Only check for overlaps in pairs that we haven't already checked #17

Only check for overlaps in pairs that we haven't already checked

Only check for overlaps in pairs that we haven't already checked #17

Workflow file for this run

name: OS
on: [pull_request, workflow_dispatch]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
alpine:
name: Alpine
defaults:
run:
shell: alpine.sh {0}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: jirutka/setup-alpine@v1
with:
branch: v3.15
- name: Alpine/musl versions . . .
run: |
cat /etc/alpine-release
apk info musl
- name: Install autotools etc . . .
run: |
apk add build-base autoconf automake libtool
shell: alpine.sh --root {0}
- name: Setup ccache . . .
uses: Chocobo1/setup-ccache-action@v1
with:
update_packager_index: false
install_ccache: true
- name: Configure . . .
run: ./autogen.sh && ./configure
- name: Build libsemigroups . . .
run: make -j4
- name: Build test_all . . .
run: make test_all -j4
- name: Run the quick tests . . .
run: ./test_all "[quick]"
cygwin:
name: Cygwin
defaults:
run:
shell: C:\cygwin\bin\bash.exe --login -o igncr '{0}'
timeout-minutes: 60
runs-on: windows-latest
env:
CHERE_INVOKING: 1
steps:
- uses: actions/checkout@v6
- uses: cygwin/cygwin-install-action@v6
with:
packages: gcc-g++,libtool,autoconf,automake
- name: Configure . . .
run: ./autogen.sh && ./configure --disable-eigen --disable-hpcombi CXXFLAGS="-Os"
- name: Build libsemigroups . . .
run: make -j4
- name: Run make test_all.exe . . .
run: make test_all.exe -j4
- name: Run the quick tests (ex:no-cygwin)
run: ./test_all "[quick][exclude:no-cygwin]"
macos:
name: "macOS-${{ matrix.os.arch }}"
runs-on: ${{ matrix.os.image_name }}
timeout-minutes: 60
strategy:
matrix:
os:
- { image_name: macos-latest, arch: arm }
- { image_name: macos-15-intel, arch: x86 }
env:
CXX: ccache clang++
CXXFLAGS: -fdiagnostics-color
steps:
- uses: actions/checkout@v6
- name: Setup ccache . . .
uses: Chocobo1/setup-ccache-action@v1
with:
update_packager_index: false
install_ccache: true
override_cache_key: "macos_${{ matrix.os.arch }}"
- name: Runner information . . .
run: uname -a
- name: Install dependencies . . .
run: brew install autoconf automake libtool
- name: Clang version . . .
run: clang++ --version
- name: Configure . . .
run: |
mkdir -p m4
./autogen.sh
./configure CXX="$CXX" CXXFLAGS="$CXXFLAGS" --disable-backward
- name: Build libsemigroups . . .
run: make -j4
- name: Build test_all . . .
run: make test_all -j4
- name: Run the quick tests . . .
run: ./test_all "[quick]"
ubuntu-32:
name: Ubuntu-32
timeout-minutes: 60
runs-on: ubuntu-latest
env:
GH_ACTIONS_ABI: 32
GH_ACTIONS_ARCH: x86
GH_ACTIONS_TEST_PROG: test_all
GH_ACTIONS_TEST_TAGS: "[quick][exclude:no-valgrind][exclude:no-coverage][exclude:BMat8]"
steps:
- uses: actions/checkout@v6
- name: Running the quick tests in libsemigroups-docker-x86-32-base docker container . . .
run: |
ci/launch-docker-container.sh
arm:
name: Ubuntu-arm
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v6
- name: Setup ccache . . .
uses: Chocobo1/setup-ccache-action@v1
with:
update_packager_index: false
install_ccache: true
- name: Install autotools etc . . .
run: sudo apt-get install autoconf automake libtool
- name: Configure . . .
run: ./autogen.sh && ./configure
- name: Build libsemigroups . . .
run: make -j4
- name: Build test_all . . .
run: make test_all -j4
- name: Run the quick tests . . .
run: ./test_all "[quick]"
aarch64:
name: Ubuntu-aarch64
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v6
- uses: uraimo/run-on-arch-action@v3
with:
arch: aarch64
distro: ubuntu22.04
run: |
apt-get --yes update
apt-get install autoconf automake libtool build-essential --yes
gcc --version
g++ --version
./autogen.sh && ./configure
make test_all -j4
./test_all "[quick]"
FreeBSD:
name: FreeBSD
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Test in FreeBSD
uses: vmactions/freebsd-vm@v1
with:
usesh: true
prepare: |
pkg install -y autoconf automake libtool
run: |
./autogen.sh
./configure
make -j4
make test_all -j4
./test_all [quick]
OpenBSD:
name: OpenBSD
timeout-minutes: 60
runs-on: ubuntu-latest
env:
AUTOCONF_VERSION: 2.72
AUTOMAKE_VERSION: 1.17
steps:
- uses: actions/checkout@v6
- name: Test in OpenBSD
uses: vmactions/openbsd-vm@v1
with:
envs: "AUTOCONF_VERSION AUTOMAKE_VERSION"
usesh: true
prepare: |
pkg_add autoconf-2.72p0 automake-1.17 libtool
run: |
./autogen.sh
./configure
make -j4
make test_all -j4
./test_all [quick]