- Jun 10, 2022
-
-
Thorsten Hater authored
# Changes - Bump ABI to v0.1.1 - Add `arb_mechanism` to bundle `type` and `interface`s - Adjust `generate_catalogue` and `build_catalogue` - Return `nullptr` for GPU interfaces if not enabled # Open Questions - How to tell CMake not to link against `libarbor.a` and only use headers? - ~~How to get around `#ifdef ARB_GPU_ENABLED`~~ Update: just embrace it. # Linked Issues Fixes #1834
-
- Feb 24, 2022
-
-
boeschf authored
Exports all symbols so arbor can be compiled as set of shared libraries. In order to export all symbols correctly, one macro per library and one global macro are added. The content of the macros is determined at configure time depending on build variant (static/shared), compiler, and platforms (linux, mac os) and goes into the library's include directory as `export.hpp` when installed (at build time it resides at cmake's temporary build directory). The per-library macro is named `ARB_LIBNAME_API` and goes in front of to-be-exported symbols. The global macro is `ARB_SYMBOL_VISIBLE`. This PR adds the annotation in all of the places where it is required. Most of them are in the public headers (and corresponding sources) but some are also added in internal headers, which were required for the unit tests to link properly. Fixes #1752
-
- Nov 10, 2021
-
-
Sam Yates authored
* Consolidate default_concurrency, default_gpu functionality into arborenv/default_env.hpp, .cpp. * Add new arborenv function `default_allocation()` that uses environment variables ARBENV_NUM_THREADS and ARBENV_GPU_ID to create an `arb::proc_allocation`, with a fallback to `thread_concurrency()`. * Use arborenv-specific exceptions instead of generic std::runtime_error etc. * Update examples, docs to suit. Fixes #988 (except for reworking all the unit tests!)
-