diff options
author | serge-sans-paille <serge.guelton@telecom-bretagne.eu> | 2021-08-19 09:28:09 +0200 |
---|---|---|
committer | serge-sans-paille <serge.guelton@telecom-bretagne.eu> | 2021-10-22 11:57:28 +0200 |
commit | 2ae7aeb3aa909b1a16bc58fd0e40dc4476dff35d (patch) | |
tree | 401ac37d2b7e9f274c80144a09154bac42a0d417 /numpy/distutils/misc_util.py | |
parent | d8653001e5342d002b133dce999286fcafbd8bf0 (diff) | |
download | numpy-2ae7aeb3aa909b1a16bc58fd0e40dc4476dff35d.tar.gz |
[demo] how-to replacing numpy custom generation engine by raw C++
This is just a technical prototype to measure and discuss the impact and
implication of moving to C++ for kernel code generation.
Diffstat (limited to 'numpy/distutils/misc_util.py')
-rw-r--r-- | numpy/distutils/misc_util.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/numpy/distutils/misc_util.py b/numpy/distutils/misc_util.py index c9e051237..f0f9b4bd7 100644 --- a/numpy/distutils/misc_util.py +++ b/numpy/distutils/misc_util.py @@ -11,6 +11,7 @@ import multiprocessing import textwrap import importlib.util from threading import local as tlocal +from functools import reduce import distutils from distutils.errors import DistutilsError @@ -43,7 +44,7 @@ __all__ = ['Configuration', 'get_numpy_include_dirs', 'default_config_dict', 'dot_join', 'get_frame', 'minrelpath', 'njoin', 'is_sequence', 'is_string', 'as_list', 'gpaths', 'get_language', 'get_build_architecture', 'get_info', 'get_pkg_info', - 'get_num_build_jobs'] + 'get_num_build_jobs', 'sanitize_cxx_flags'] class InstallableLib: """ @@ -2478,3 +2479,15 @@ def get_build_architecture(): # systems, so delay the import to here. from distutils.msvccompiler import get_build_architecture return get_build_architecture() + + +_cxx_ignore_flags = {'-Werror=implicit-function-declaration'} + + +def sanitize_cxx_flags(cxxflags): + ''' + Some flags are valid for C but not C++. Prune them. + ''' + return [flag for flag in cxxflags if flag not in _cxx_ignore_flags] + + |