MCPcopy Index your code
hub / github.com/numpy/numpy / run_compile

Function run_compile

numpy/f2py/f2py2e.py:592–734  ·  view source on GitHub ↗

Do it all in one call!

()

Source from the content-addressed store, hash-verified

590 }
591
592def run_compile():
593 """
594 Do it all in one call!
595 """
596 import tempfile
597
598 # Collect dependency flags, preprocess sys.argv
599 argy = preparse_sysargv()
600 modulename = argy["modulename"]
601 if modulename is None:
602 modulename = 'untitled'
603 dependencies = argy["dependencies"]
604 backend_key = argy["backend"]
605 build_backend = f2py_build_generator(backend_key)
606
607 i = sys.argv.index('-c')
608 del sys.argv[i]
609
610 remove_build_dir = 0
611 try:
612 i = sys.argv.index('--build-dir')
613 except ValueError:
614 i = None
615 if i is not None:
616 build_dir = sys.argv[i + 1]
617 del sys.argv[i + 1]
618 del sys.argv[i]
619 else:
620 remove_build_dir = 1
621 build_dir = tempfile.mkdtemp()
622
623 _reg1 = re.compile(r'--link-')
624 sysinfo_flags = [_m for _m in sys.argv[1:] if _reg1.match(_m)]
625 sys.argv = [_m for _m in sys.argv if _m not in sysinfo_flags]
626 if sysinfo_flags:
627 sysinfo_flags = [f[7:] for f in sysinfo_flags]
628
629 _reg2 = re.compile(
630 r'--((no-|)(wrap-functions|lower|freethreading-compatible|latex-doc)|debug-capi|quiet|skip-empty-wrappers)|-include')
631 f2py_flags = [_m for _m in sys.argv[1:] if _reg2.match(_m)]
632 sys.argv = [_m for _m in sys.argv if _m not in f2py_flags]
633 f2py_flags2 = []
634 fl = 0
635 for a in sys.argv[1:]:
636 if a in ['only:', 'skip:']:
637 fl = 1
638 elif a == ':':
639 fl = 0
640 if fl or a == ':':
641 f2py_flags2.append(a)
642 if f2py_flags2 and f2py_flags2[-1] != ':':
643 f2py_flags2.append(':')
644 f2py_flags.extend(f2py_flags2)
645 sys.argv = [_m for _m in sys.argv if _m not in f2py_flags2]
646 _reg3 = re.compile(
647 r'--((f(90)?compiler(-exec|)|compiler)=|help-compiler)')
648 flib_flags = [_m for _m in sys.argv[1:] if _reg3.match(_m)]
649 sys.argv = [_m for _m in sys.argv if _m not in flib_flags]

Callers 1

mainFunction · 0.85

Calls 11

f2py_build_generatorFunction · 0.90
preparse_sysargvFunction · 0.85
filter_filesFunction · 0.85
validate_modulenameFunction · 0.85
run_mainFunction · 0.85
get_newer_optionsFunction · 0.85
splitMethod · 0.80
joinMethod · 0.80
outmessFunction · 0.70
indexMethod · 0.45
compileMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…