Skip to content

New makefile

New makefile #14

Workflow file for this run

name: Build and tests
on:
push:
branches: [ main, master, develop ]
paths-ignore:
- '**.md'
workflow_dispatch:
jobs:
########################################################################################
make:
name: Make
strategy:
fail-fast: false
matrix:
machine: [ubuntu-latest]
gmake_install_command: ['gmake --version']
compiler: [12]
include:
- {machine: macOS-13, gmake_install_command: 'brew install make && gmake --version', compiler: 12}
runs-on: ['${{ matrix.machine }}']
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: install gmake
run: ${{ matrix.gmake_install_command }}
- name: get tags
run: |
cd ./libs/igraph
git fetch --prune --unshallow
echo exit code $?
git tag --list
continue-on-error: true
- name: make
run: |
gmake -j32 CXX=g++-${{matrix.compiler}} CC=gcc-${{matrix.compiler}} STATIC_LINK=true
cp ./bin/clusty ./clusty-${{matrix.compiler}}
gmake clean
- name: tar artifacts
run: tar -cvf clusty.tar ./clusty-${{matrix.compiler}} ./test/cmp.py ./test/vir61.*
- uses: actions/upload-artifact@v4
with:
name: executable-artifact-${{ matrix.machine }}
path: ./clusty.tar
########################################################################################
vir61-linkage:
name: Vir61
needs: make
strategy:
fail-fast: false
matrix:
machine: [ubuntu-latest, macOS-13]
compiler: [12]
algo: [single, complete]
threshold: [95, 70]
runs-on: ['${{ matrix.machine }}']
steps:
- uses: actions/download-artifact@v4
with:
name: executable-artifact-${{ matrix.machine }}
path: ./
- name: untar artifacts
run: tar -xf clusty.tar
- name: help
run: ./clusty-${{matrix.compiler}}
- name: version
run: ./clusty-${{matrix.compiler}} --version
- name: ${{matrix.algo}}, ${{matrix.threshold}} (with representatives, reordered columns)
run: |
./clusty-${{matrix.compiler}} --algo ${{matrix.algo}} --objects-file ./test/vir61.list --similarity --min ani 0.${{matrix.threshold}} --id-cols id2 id1 --distance-col ani ./test/vir61.ani vir61.${{matrix.algo}}.${{matrix.threshold}} --out-representatives
python ./test/cmp.py vir61.${{matrix.algo}}.${{matrix.threshold}} ./test/vir61.${{matrix.algo}}.${{matrix.threshold}}.python.csv