aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorMichael Hirsch, Ph.D <scivision@users.noreply.github.com>2019-11-24 00:13:54 -0500
committerMichael Hirsch, Ph.D <scivision@users.noreply.github.com>2019-11-30 21:29:49 -0500
commit92b77cb3210280315c47d18f3c87cdd2c59021bc (patch)
tree6d2e5196aab7a1d6827ad1416761bbfbc135e226 /.github
parent818c92003c41b72194cdc668a3346a4b7247bd23 (diff)
downloadmeson-92b77cb3210280315c47d18f3c87cdd2c59021bc.zip
meson-92b77cb3210280315c47d18f3c87cdd2c59021bc.tar.gz
meson-92b77cb3210280315c47d18f3c87cdd2c59021bc.tar.bz2
deps: add scalapack
Scalapack uses a library stack that can be challenging to manage. Not least of all since many Scalapacks ship with broken / incomplete pkg-config files and CMake FindScalapack.cmake This resolves those issues for typical Scalapack setups including: * Linux: Intel MKL or OpenMPI + Netlib * MacOS: Intel MKL or OpenMPI + Netlib * Windows: Intel MKL (OpenMPI not available on Windows)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/ci_frameworks.yml67
1 files changed, 67 insertions, 0 deletions
diff --git a/.github/workflows/ci_frameworks.yml b/.github/workflows/ci_frameworks.yml
new file mode 100644
index 0000000..0a0ce8b
--- /dev/null
+++ b/.github/workflows/ci_frameworks.yml
@@ -0,0 +1,67 @@
+name: ci_frameworks
+
+on:
+ push:
+ paths:
+ - "mesonbuild/dependencies/**"
+ - "test cases/frameworks/**"
+ - ".github/workflows/frameworks.yml"
+ pull_request:
+ paths:
+ - "mesonbuild/dependencies/**"
+ - "test cases/frameworks/**"
+ - ".github/workflows/frameworks.yml"
+
+jobs:
+
+ scalapack_linux:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v1
+ - uses: actions/setup-python@v1
+ with:
+ python-version: '3.x'
+ - run: python -m pip install .
+ - name: install prereq
+ run: |
+ sudo apt update -yq
+ sudo apt install -yq --no-install-recommends pkg-config ninja-build gfortran liblapack-dev libscalapack-mpi-dev libopenmpi-dev openmpi-bin
+ - run: meson setup "test cases/frameworks/30 scalapack" build
+ env:
+ FC: gfortran
+ CC: gcc
+ - run: ninja -C build
+ - uses: actions/upload-artifact@v1
+ if: failure()
+ with:
+ name: Scalpack_Linux_Build
+ path: build/meson-logs/meson-log.txt
+ - run: meson test -C build -v
+ - uses: actions/upload-artifact@v1
+ if: failure()
+ with:
+ name: Scalapack_Linux_Test
+ path: build/meson-logs/testlog.txt
+
+ scalapack_mac:
+ runs-on: macos-latest
+ steps:
+ - uses: actions/checkout@v1
+ - uses: actions/setup-python@v1
+ with:
+ python-version: '3.x'
+ - run: python -m pip install -e .
+ - run: brew install pkg-config ninja gcc openmpi lapack scalapack
+ - run: meson setup "test cases/frameworks/30 scalapack" build
+ - run: ninja -C build
+ - uses: actions/upload-artifact@v1
+ if: failure()
+ with:
+ name: Scalapack_Mac_build
+ path: build/meson-logs/meson-log.txt
+ - run: meson test -C build -v
+ - uses: actions/upload-artifact@v1
+ if: failure()
+ with:
+ name: Scalapack_Mac_test
+ path: build/meson-logs/testlog.txt