diff --git a/.github/workflows/build_linux.yml b/.github/workflows/build_linux.yml new file mode 100644 index 00000000..d0eee6bd --- /dev/null +++ b/.github/workflows/build_linux.yml @@ -0,0 +1,52 @@ +name: build on linux +on: + push: + branches: + - master + - release-* + - v* + pull_request: + branches: + - master + +jobs: + Ubuntu_Latest_Apt: + runs-on: ubuntu-latest + strategy: + matrix: + build.type: + - Debug + - Release + - RelNoOpenMP + - RelWithDebInfo + steps: + - name: checkout + uses: actions/checkout@v4.1.0 + + - name: install dependencies + run: |- + sudo apt-get update + sudo apt-get install -y cmake wget ninja-build libblas-dev liblapack-dev liblapacke-dev libboost-all-dev libopenmpi-dev libeigen3-dev libhdf5-dev + sudo apt-get clean all + + - name: Install HighFive + run: | + wget -O HighFive.tar.gz https://github.com/BlueBrain/HighFive/archive/v2.9.0.tar.gz + tar xzf HighFive.tar.gz + rm HighFive.tar.gz + cd HighFive* + cmake -S . -B build + cmake --build build + cmake --install build + + - name: Run CMake + run: |- + cmake -S . -B build.${{ matrix.build.type }} -DCMAKE_BUILD_TYPE=${{ matrix.build.type }} -DENABLE_PYTHON=OFF + + - name: Build + run: |- + cmake --build build.${{ matrix.build.type }} + + - name: Run tests + run: |- + ./build.${{ matrix.build.type }}/bin/tests