due to a current bug in meson-python duplicate rpaths are registered in the shared object files created by meson-python. The new masos dynamic loader refuses to load shared object files with duplicate rpaths. There is a small patch script which removes any duplicates. This is a temporary but effective fix (https://github.com/mesonbuild/meson-python/issues/813). Further, there was an issue due to mixed use of pure python and C++ code with name conflicts. This has been resolved so that both python and C++ code can be imported just find now.
24 lines
757 B
C++
24 lines
757 B
C++
#include <pybind11/pybind11.h>
|
|
|
|
#include <string>
|
|
|
|
#include "constants/bindings.h"
|
|
#include "composition/bindings.h"
|
|
#include "config/bindings.h"
|
|
|
|
PYBIND11_MODULE(_phys, m) {
|
|
m.doc() = "Python bindings for the fourdst utility modules which are a part of the 4D-STAR project.";
|
|
|
|
auto compMod = m.def_submodule("composition", "Composition-module bindings");
|
|
register_comp_bindings(compMod);
|
|
|
|
auto atomicMod = m.def_submodule("atomic", "Species bindings");
|
|
register_species_bindings(atomicMod);
|
|
|
|
auto constMod = m.def_submodule("constants", "Constants-module bindings");
|
|
register_const_bindings(constMod);
|
|
|
|
auto configMod = m.def_submodule("config", "Configuration-module bindings");
|
|
register_config_bindings(configMod);
|
|
}
|