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())
|