# This file is generated by numpy's build process # It contains system_info results at the time of building this package. from enum import Enum from numpy.core._multiarray_umath import ( __cpu_features__, __cpu_baseline__, __cpu_dispatch__, ) __all__ = ["show"] _built_with_meson = True class DisplayModes(Enum): stdout = "stdout" dicts = "dicts" def _cleanup(d): """ Removes empty values in a `dict` recursively This ensures we remove values that Meson could not provide to CONFIG """ if isinstance(d, dict): return {k: _cleanup(v) for k, v in d.items() if v and _cleanup(v)} else: return d CONFIG = _cleanup( { "Compilers": { "c": { "name": "clang", "linker": r"ld64", "version": "14.0.0", "commands": r"cc", "args": r"-fno-strict-aliasing, -DBLAS_SYMBOL_SUFFIX=64_, -DHAVE_BLAS_ILP64", "linker args": r"-fno-strict-aliasing, -DBLAS_SYMBOL_SUFFIX=64_, -DHAVE_BLAS_ILP64", }, "cython": { "name": "cython", "linker": r"cython", "version": "3.0.8", "commands": r"cython", "args": r"", "linker args": r"", }, "c++": { "name": "clang", "linker": r"ld64", "version": "14.0.0", "commands": r"c++", "args": r"-DBLAS_SYMBOL_SUFFIX=64_, -DHAVE_BLAS_ILP64", "linker args": r"-DBLAS_SYMBOL_SUFFIX=64_, -DHAVE_BLAS_ILP64", }, }, "Machine Information": { "host": { "cpu": "aarch64", "family": "aarch64", "endian": "little", "system": "darwin", }, "build": { "cpu": "aarch64", "family": "aarch64", "endian": "little", "system": "darwin", }, "cross-compiled": bool("False".lower().replace("false", "")), }, "Build Dependencies": { "blas": { "name": "openblas64", "found": bool("True".lower().replace("false", "")), "version": "0.3.23.dev", "detection method": "pkgconfig", "include directory": r"/opt/arm64-builds/include", "lib directory": r"/opt/arm64-builds/lib", "openblas configuration": r"USE_64BITINT=1 DYNAMIC_ARCH=1 DYNAMIC_OLDER= NO_CBLAS= NO_LAPACK= NO_LAPACKE= NO_AFFINITY=1 USE_OPENMP= SANDYBRIDGE MAX_THREADS=3", "pc file directory": r"/usr/local/lib/pkgconfig", }, "lapack": { "name": "dep4335021056", "found": bool("True".lower().replace("false", "")), "version": "1.26.4", "detection method": "internal", "include directory": r"unknown", "lib directory": r"unknown", "openblas configuration": r"unknown", "pc file directory": r"unknown", }, }, "Python Information": { "path": r"/private/var/folders/76/zy5ktkns50v6gt5g8r0sf6sc0000gn/T/cibw-run-q69bfk1p/cp312-macosx_arm64/build/venv/bin/python", "version": "3.12", }, "SIMD Extensions": { "baseline": __cpu_baseline__, "found": [ feature for feature in __cpu_dispatch__ if __cpu_features__[feature] ], "not found": [ feature for feature in __cpu_dispatch__ if not __cpu_features__[feature] ], }, } ) def _check_pyyaml(): import yaml return yaml def show(mode=DisplayModes.stdout.value): """ Show libraries and system information on which NumPy was built and is being used Parameters ---------- mode : {`'stdout'`, `'dicts'`}, optional. Indicates how to display the config information. `'stdout'` prints to console, `'dicts'` returns a dictionary of the configuration. Returns ------- out : {`dict`, `None`} If mode is `'dicts'`, a dict is returned, else None See Also -------- get_include : Returns the directory containing NumPy C header files. Notes ----- 1. The `'stdout'` mode will give more readable output if ``pyyaml`` is installed """ if mode == DisplayModes.stdout.value: try: # Non-standard library, check import yaml = _check_pyyaml() print(yaml.dump(CONFIG)) except ModuleNotFoundError: import warnings import json warnings.warn("Install `pyyaml` for better output", stacklevel=1) print(json.dumps(CONFIG, indent=2)) elif mode == DisplayModes.dicts.value: return CONFIG else: raise AttributeError( f"Invalid `mode`, use one of: {', '.join([e.value for e in DisplayModes])}" )