distutils.misc_util#

numpy.distutils.misc_util.all_strings(lst)[source]#

Return True if all items in lst are string objects.

numpy.distutils.misc_util.allpath(name)[source]#

Convert a /-separated pathname to one using the OS’s path separator.

numpy.distutils.misc_util.appendpath(prefix, path)[source]#
numpy.distutils.misc_util.as_list(seq)[source]#
numpy.distutils.misc_util.blue_text(s)[source]#
numpy.distutils.misc_util.cyan_text(s)[source]#
numpy.distutils.misc_util.cyg2win32(path: str) str[source]#

Convert a path from Cygwin-native to Windows-native.

Uses the cygpath utility (part of the Base install) to do the actual conversion. Falls back to returning the original path if this fails.

Handles the default /cygdrive mount prefix as well as the /proc/cygdrive portable prefix, custom cygdrive prefixes such as / or /mnt, and absolute paths such as /usr/src/ or /home/username

Parameters:
pathstr

The path to convert

Returns:
converted_pathstr

The converted path

Notes

Documentation for cygpath utility: https://cygwin.com/cygwin-ug-net/cygpath.html Documentation for the C function it wraps: https://cygwin.com/cygwin-api/func-cygwin-conv-path.html

numpy.distutils.misc_util.default_config_dict(name=None, parent_name=None, local_path=None)[source]#

Return a configuration dictionary for usage in configuration() function defined in file setup_<name>.py.

numpy.distutils.misc_util.dict_append(d, **kws)[source]#
numpy.distutils.misc_util.dot_join(*args)[source]#
numpy.distutils.misc_util.exec_mod_from_location(modname, modfile)[source]#

Use importlib machinery to import a module modname from the file modfile. Depending on the spec.loader, the module may not be registered in sys.modules.

numpy.distutils.misc_util.filter_sources(sources)[source]#

Return four lists of filenames containing C, C++, Fortran, and Fortran 90 module sources, respectively.

numpy.distutils.misc_util.generate_config_py(target)[source]#

Generate config.py file containing system_info information used during building the package.

Usage:

config[‘py_modules’].append((packagename, ‘__config__’,generate_config_py))

numpy.distutils.misc_util.get_build_architecture()[source]#
numpy.distutils.misc_util.get_cmd(cmdname, _cache={})[source]#
numpy.distutils.misc_util.get_data_files(data)[source]#
numpy.distutils.misc_util.get_dependencies(sources)[source]#
numpy.distutils.misc_util.get_ext_source_files(ext)[source]#
numpy.distutils.misc_util.get_frame(level=0)[source]#

Return frame object from call stack with given level.

numpy.distutils.misc_util.get_info(pkgname, dirs=None)[source]#

Return an info dict for a given C library.

The info dict contains the necessary options to use the C library.

Parameters:
pkgnamestr

Name of the package (should match the name of the .ini file, without the extension, e.g. foo for the file foo.ini).

dirssequence, optional

If given, should be a sequence of additional directories where to look for npy-pkg-config files. Those directories are searched prior to the NumPy directory.

Returns:
infodict

The dictionary with build information.

Raises:
PkgNotFound

If the package is not found.

Examples

To get the necessary information for the npymath library from NumPy:

>>> npymath_info = np.distutils.misc_util.get_info('npymath')
>>> npymath_info                                    
{'define_macros': [], 'libraries': ['npymath'], 'library_dirs':
['.../numpy/_core/lib'], 'include_dirs': ['.../numpy/_core/include']}

This info dict can then be used as input to a Configuration instance:

config.add_extension('foo', sources=['foo.c'], extra_info=npymath_info)
numpy.distutils.misc_util.get_language(sources)[source]#

Determine language value (c,f77,f90) from sources

numpy.distutils.misc_util.get_lib_source_files(lib)[source]#
numpy.distutils.misc_util.get_mathlibs(path=None)[source]#

Return the MATHLIB line from numpyconfig.h

numpy.distutils.misc_util.get_num_build_jobs()[source]#

Get number of parallel build jobs set by the –parallel command line argument of setup.py If the command did not receive a setting the environment variable NPY_NUM_BUILD_JOBS is checked. If that is unset, return the number of processors on the system, with a maximum of 8 (to prevent overloading the system if there a lot of CPUs).

Returns:
outint

number of parallel jobs that can be run

numpy.distutils.misc_util.get_numpy_include_dirs()[source]#
numpy.distutils.misc_util.get_pkg_info(pkgname, dirs=None)[source]#

Return library info for the given package.

Parameters:
pkgnamestr

Name of the package (should match the name of the .ini file, without the extension, e.g. foo for the file foo.ini).

dirssequence, optional

If given, should be a sequence of additional directories where to look for npy-pkg-config files. Those directories are searched prior to the NumPy directory.

Returns:
pkginfoclass instance

The LibraryInfo instance containing the build information.

Raises:
PkgNotFound

If the package is not found.

numpy.distutils.misc_util.get_script_files(scripts)[source]#
numpy.distutils.misc_util.gpaths(paths, local_path='', include_non_existing=True)[source]#

Apply glob to paths and prepend local_path if needed.

numpy.distutils.misc_util.green_text(s)[source]#
numpy.distutils.misc_util.has_cxx_sources(sources)[source]#

Return True if sources contains C++ files

numpy.distutils.misc_util.has_f_sources(sources)[source]#

Return True if sources contains Fortran files

numpy.distutils.misc_util.is_local_src_dir(directory)[source]#

Return true if directory is local directory.

numpy.distutils.misc_util.is_sequence(seq)[source]#
numpy.distutils.misc_util.is_string(s)[source]#
numpy.distutils.misc_util.mingw32()[source]#

Return true when using mingw32 environment.

numpy.distutils.misc_util.minrelpath(path)[source]#

Resolve and ‘.’ from path.

numpy.distutils.misc_util.njoin(*path)[source]#

Join two or more pathname components + - convert a /-separated pathname to one using the OS’s path separator. - resolve and from path.

Either passing n arguments as in njoin(‘a’,’b’), or a sequence of n names as in njoin([‘a’,’b’]) is handled, or a mixture of such arguments.

numpy.distutils.misc_util.red_text(s)[source]#
numpy.distutils.misc_util.sanitize_cxx_flags(cxxflags)[source]#

Some flags are valid for C but not C++. Prune them.

numpy.distutils.misc_util.terminal_has_colors()[source]#
numpy.distutils.misc_util.yellow_text(s)[source]#