|
1 |
| -# Building OpenBLAS |
| 1 | +# OpenBLAS |
2 | 2 |
|
3 |
| -This is a repository to trigger builds of OpenBLAS on Travis-CI (for aarch64, |
4 |
| -ppc64, s390x) and github actions for all the others. |
| 3 | +We build OpenBLAS on Travis-CI (for linux aarch64, ppc64, s390x) and github actions |
| 4 | +for linux, windows, macOS x86_64 and macOS arm64. |
5 | 5 |
|
6 |
| -The OpenBLAS libraries get uploaded to |
| 6 | +Tarballs are at |
7 | 7 | https://anaconda.org/scientific-python-nightly-wheels/openblas-libs/files
|
8 | 8 |
|
9 |
| -A project using these libraries, for Manylinux or macOS, will need the |
| 9 | +A project using the tarball, for Manylinux or macOS, will need the |
10 | 10 | ``gfortran-install`` submodule used here, from
|
11 | 11 | https://github.com/MacPython/gfortran-install
|
12 | 12 |
|
| 13 | +We also build and upload a pip-installable wheel. The wheel is self-contianed, |
| 14 | +no additional fortran support installations are needed. The wheel supplies |
| 15 | +interfaces for building and using OpenBLAS in a python project like SciPy or |
| 16 | +NumPy: |
| 17 | + |
| 18 | +## Buildtime |
| 19 | + |
| 20 | +- `get_include_dir()`, `get_lib_dir()` and `get_library()` for use in compiler |
| 21 | + or project arguments |
| 22 | +- `get_pkg_config()` will return a multi-line text that can be saved into a |
| 23 | + file and used with pkg-config for build systems like meson. This works around |
| 24 | + the problem of [relocatable pkg-config |
| 25 | + files](https://docs.conan.io/en/1.43/integrations/build_system/pkg_config_pc_files.html) |
| 26 | + since the windows build uses pkgconfiglite v0.28 which does not support |
| 27 | + `--define-prefix`. |
| 28 | + |
| 29 | +## Runtime |
| 30 | + |
| 31 | +- `open_so()` will load openblas into the executable and provide the openblas |
| 32 | + symbols linked in from the `get_include_dir()` includes (on windows linking |
| 33 | + with `get_lib_dir()`/`get_libarary()` is required). |
0 commit comments