MCPcopy Create free account
hub / github.com/numpy/numpy / show_fcompilers

Function show_fcompilers

numpy/distutils/fcompiler/__init__.py:912–969  ·  view source on GitHub ↗

Print list of available compilers (used by the "--help-fcompiler" option to "config_fc").

(dist=None)

Source from the content-addressed store, hash-verified

910 return compiler
911
912def show_fcompilers(dist=None):
913 """Print list of available compilers (used by the "--help-fcompiler"
914 option to "config_fc").
915 """
916 if dist is None:
917 from distutils.dist import Distribution
918 from numpy.distutils.command.config_compiler import config_fc
919 dist = Distribution()
920 dist.script_name = os.path.basename(sys.argv[0])
921 dist.script_args = ['config_fc'] + sys.argv[1:]
922 try:
923 dist.script_args.remove('--help-fcompiler')
924 except ValueError:
925 pass
926 dist.cmdclass['config_fc'] = config_fc
927 dist.parse_config_files()
928 dist.parse_command_line()
929 compilers = []
930 compilers_na = []
931 compilers_ni = []
932 if not fcompiler_class:
933 load_all_fcompiler_classes()
934 platform_compilers = available_fcompilers_for_platform()
935 for compiler in platform_compilers:
936 v = None
937 log.set_verbosity(-2)
938 try:
939 c = new_fcompiler(compiler=compiler, verbose=dist.verbose)
940 c.customize(dist)
941 v = c.get_version()
942 except (DistutilsModuleError, CompilerNotFound) as e:
943 log.debug("show_fcompilers: %s not found" % (compiler,))
944 log.debug(repr(e))
945
946 if v is None:
947 compilers_na.append(("fcompiler="+compiler, None,
948 fcompiler_class[compiler][2]))
949 else:
950 c.dump_properties()
951 compilers.append(("fcompiler="+compiler, None,
952 fcompiler_class[compiler][2] + ' (%s)' % v))
953
954 compilers_ni = list(set(fcompiler_class.keys()) - set(platform_compilers))
955 compilers_ni = [("fcompiler="+fc, None, fcompiler_class[fc][2])
956 for fc in compilers_ni]
957
958 compilers.sort()
959 compilers_na.sort()
960 compilers_ni.sort()
961 pretty_printer = FancyGetopt(compilers)
962 pretty_printer.print_help("Fortran compilers found:")
963 pretty_printer = FancyGetopt(compilers_na)
964 pretty_printer.print_help("Compilers available for this "
965 "platform, but not found:")
966 if compilers_ni:
967 pretty_printer = FancyGetopt(compilers_ni)
968 pretty_printer.print_help("Compilers not available on this platform:")
969 print("For compiler details, run 'config_fc --verbose' setup command.")

Callers 2

show_fortran_compilersFunction · 0.90
__init__.pyFile · 0.85

Calls 10

new_fcompilerFunction · 0.85
printFunction · 0.85
parse_config_filesMethod · 0.80
customizeMethod · 0.80
dump_propertiesMethod · 0.80
keysMethod · 0.80
sortMethod · 0.80
get_versionMethod · 0.45

Tested by

no test coverage detected