47 lines
1.2 KiB
Python
47 lines
1.2 KiB
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
import os
|
||
|
|
from pathlib import Path
|
||
|
|
|
||
|
|
|
||
|
|
def _native_search_paths() -> list[Path]:
|
||
|
|
package = Path(__file__).resolve().parent
|
||
|
|
return [package / "lib", package / "lib64", package / "bin"]
|
||
|
|
|
||
|
|
|
||
|
|
_dll_directory_handles = []
|
||
|
|
if os.name == "nt" and hasattr(os, "add_dll_directory"):
|
||
|
|
for _directory in _native_search_paths():
|
||
|
|
if _directory.is_dir():
|
||
|
|
_dll_directory_handles.append(os.add_dll_directory(str(_directory)))
|
||
|
|
|
||
|
|
from ._core import capabilities, mfem_version, serial_poisson_dofs
|
||
|
|
|
||
|
|
__all__ = [
|
||
|
|
"capabilities",
|
||
|
|
"get_cmake_prefix",
|
||
|
|
"get_include",
|
||
|
|
"get_lib",
|
||
|
|
"mfem_version",
|
||
|
|
"serial_poisson_dofs",
|
||
|
|
]
|
||
|
|
|
||
|
|
|
||
|
|
def _package_dir() -> Path:
|
||
|
|
return Path(__file__).resolve().parent
|
||
|
|
|
||
|
|
|
||
|
|
def get_include() -> str:
|
||
|
|
"""Return the wheel-local include directory containing MFEM headers."""
|
||
|
|
return str(_package_dir() / "include")
|
||
|
|
|
||
|
|
|
||
|
|
def get_lib() -> str:
|
||
|
|
"""Return the wheel-local directory containing MFEM runtime libraries."""
|
||
|
|
return str(_package_dir() / "lib")
|
||
|
|
|
||
|
|
|
||
|
|
def get_cmake_prefix() -> str:
|
||
|
|
"""Return the prefix that can be appended to CMAKE_PREFIX_PATH."""
|
||
|
|
return str(_package_dir())
|