bg dZddlZddlmZejdejjZejdejjZ GddeZdS)zdistutils.extension Provides the Extension class, used to describe C/C++ extension modules in setup scripts. Overridden to support f2py. N) Extensionz.*\.(cpp|cxx|cc)\Zz!.*\.(f90|f95|f77|for|ftn|f|pyf)\ZcLeZdZdZ ddZdZdZdS)ra Parameters ---------- name : str Extension name. sources : list of str List of source file locations relative to the top directory of the package. extra_compile_args : list of str Extra command line arguments to pass to the compiler. extra_f77_compile_args : list of str Extra command line arguments to pass to the fortran77 compiler. extra_f90_compile_args : list of str Extra command line arguments to pass to the fortran90 compiler. Nctj||g||||||| | | |  ||_| pg|_t |jt rAddl}d}||td|j |_|pg|_ ||_ |pg|_ |pg|_ |pg|_|pg|_|pg|_|pg|_dS)N) include_dirs define_macros undef_macros library_dirs librariesruntime_library_dirs extra_objectsextra_compile_argsextra_link_argsexport_symbolsrz4swig_opts is specified as a string instead of a list) stacklevel) old_Extension__init__sources swig_opts isinstancestrwarningswarn SyntaxWarningsplitdependslanguage f2py_options module_dirsextra_c_compile_argsextra_cxx_compile_argsextra_f77_compile_argsextra_f90_compile_args)selfnamerrrrr r r r r rrrrrrrr r!r"r#rmsgs l/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/numpy/distutils/extension.pyrzExtension.__init__!s, dB)+))#%9+#5 /- / / / / #b dnc * * 4 OOOHC MM#}M ; ; ;!^1133DN}"   ).B&,"$8$>B!&<&B#&<&B#&<&B#cX|jD]!}tt|rdS"dSNTF)r cxx_ext_rerr$sources r'has_cxx_sourceszExtension.has_cxx_sources_s:l  F#f++&& tt ur(c>|jD]}t|rdSdSr*)rfortran_pyf_ext_rer,s r'has_f2py_sourceszExtension.has_f2py_sourceses4l  F!&)) tt ur()NNNNNNNNNNNNNNNNNNN)__name__ __module__ __qualname____doc__rr.r1r(r'rrs"!%# !%#'#'#')<<<<| r(r) r5redistutils.extensionrrcompileImatchr+r0r6r(r'r<s ::::::RZ-rt 4 4 : RZ DbdKKQXXXXX XXXXXr(