\bgG:ddlmZddlZddlZddlZddlmZddlmZddl m Z ddl m Z ddlmZddlmZdd lmZdd lmZmZdd lmZdd lmZdd lmZmZerddlmZ n$ ddl!mZ e"dn#e#$r ddlmZ YnwxYwedddlm$Z%dZ&dZ'dZ(dZ)ej*dkrdZ(n*ej+dkr ddl,Z,e-e,dxZ(Z'n #e#$rYnwxYwdZ.dZ/Gdde Ze(s ej+dkr d$d%d!Z0dSd"Z) d$d%d#Z0dS)&) annotationsN)IteratorEXTENSION_SUFFIXES)cache_from_source)Path) TYPE_CHECKING) Distribution) BaseError) ExtensionLibrary)log) new_compiler)customize_compilerget_config_var) build_extzCython.Compiler.MainLDSHARED) _config_varscptjdkrtj} dtd<dtd<dtd<t |tjtj|dS#tjtj|wxYwt |dS)Ndarwinz0gcc -Wl,-x -dynamiclib -undefined dynamic_lookuprz -dynamiclibCCSHAREDz.dylibSO)sysplatform _CONFIG_VARScopyrclearupdate)compilertmps m/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/setuptools/command/build_ext.py_customize_compiler_for_shlibr")s |x!! %C  $(6L $!)L  x ( ( (     $ $ $ $ $     $ $ $ $8$$$$$s -A;;)B$FsharedrTntRTLD_NOWctr|ndS)N) have_rtld)ss r!if_dlr*Ms !11r!c>tD]}d|vr|cS|dkr|cSdS)z;Return the file extension for an abi3-compliant Extension()z.abi3z.pydNr)suffixs r!get_abi3_suffixr.QsC$ f  MMM v  MMM 4r+ceZdZUded<dZdZdZd'd Zd(d Zd)dZ d*dZ d+dZ dZ d(dZ dZdZd(dZdZd,dZd-dZd,dZd.dZd Zd!Zd/d(d"Zd/d0d$Zd1d%Zd&S)2rr distributionFc|jdc}|_tj|||_|r|dSdS)z;Build extensions in build directory, then copy if --inplaceFN)inplace _build_extruncopy_extensions_to_source)self old_inplaces r!r4z build_ext.run`sS$(L%! T\t"  -  * * , , , , , - -r+extr returntuple[str, str]c||j}||}|d}d|dd}||}t j|t j|}t j|j |} || fS)N.) get_ext_fullnamenameget_ext_filenamesplitjoinget_package_dirospathbasename build_lib) r6build_pyr8fullnamefilenamemodpathpackage package_dir inplace_file regular_files r!_get_inplace_equivalentz!build_ext._get_inplace_equivalenths((22((22..%%((73B3<((..w77 w||K1A1A(1K1KLL w||DNH== l++r+Nonecf|d}|jD]}|||\}}tj|s|js||||j|j r.| ||}| ||ddS)NrH)levelT)compile) get_finalized_command extensionsrPrDrEexistsoptional copy_fileverbose _needs_stub_get_equivalent_stub_write_stub_file)r6rHr8rNrO inplace_stubs r!r5z#build_ext.copy_extensions_to_sourcers--j99? G GC)-)E)EhPS)T)T &L, w~~l++ O3< O|\NNN G#88lKK %%lC%FFF G Gr+ output_filestrctj|}|jd\}}}tj||dSNr<.py)rDrEdirnamer? rpartitionrB)r6r8r_dir__r?s r!r\zbuild_ext._get_equivalent_stubsOw{++X((-- 1d',,tT**////r+Iterator[tuple[str, str]]c#K|jsdS|d}|djpd}|jD]|}|||\}}||fV|jrT|||}|||}t||}t||} | |fV}dS)NrH install_libr') optimization)r2rUoptimizerVrPr[r\_compiled_file_name) r6rHoptr8rNrOr^ regular_stub inplace_cache output_caches r!_get_output_mappingzbuild_ext._get_output_mappings|  F--j99((77@FB? 4 4C)-)E)EhPS)T)T &L,. . . . 4 $88lKK #88lKK 3Ls S S S 2tr7t&j|jvr$|jt&jG|jr d|_dSdS)Nc<g|]}t|t|S)rwr ).0r8s r! z.build_ext.finalize_options..s'RRRsC9Q9QRsRRRr+r<r=FT)r3finalize_optionsrVcheck_extensions_listrsetup_shlib_compilerr>r? _full_nameryrAlinks_to_dynamicrrwr rr[r@ _file_namerDrErdrBrG library_dirsappendcurdirruntime_library_dirsrr2)r6r8rIltdnsrJlibdirs r!rzbuild_ext.finalize_optionss#D)))//R ""4?333RRdoRRR ; (  % % ' ' '? = =C!2238< %  " "4> 2 2 2   (  % %d&7 8 8 8 : !  - -dj 9 9 9   (  % %d&7 8 8 8'9&@&@&J&J###r+cdt|tr|jStj||SN)rwr export_symbolsr3get_export_symbols)r6r8s r!rzbuild_ext.get_export_symbolss0 c7 # # &% %,T3777r+c>||j} t|tr |j|_t j|||jr0|dj }| ||||_dS#||_wxYw)NrH) _convert_pyx_sources_to_langrrwr r}r3build_extensionr[rUrG write_stub)r6r8 _compilerrGs r!rzbuild_ext.build_extensions ((***M  &#w'' 4 $ 3  &tS 1 1 1 0 66zBBL  3///%DMMMIDM % % % %s A-B Bc td|jDd|jddddgzt fd|jDS)z?Return true if 'ext' links to a dynamic lib in the same packagecg|] }|j Sr)r)rlibs r!rz.build_ext.links_to_dynamic..s!H!H!HS#.!H!H!Hr+r<Nr=r'c3&K|] }|zvV dSrr)rlibnamelibnamespkgs r! z-build_ext.links_to_dynamic..s,JJ3=H,JJJJJJr+)dictfromkeysrrBrrAanyr)r6r8rrs @@r!rzbuild_ext.links_to_dynamics ==!H!HDK!H!H!HIIhhs~++C00"5<==JJJJJCMJJJJJJr+ list[str]cVgtj||Sr)r3get_source_files_get_internal_dependsrs r!rzbuild_ext.get_source_filess)R,T22RT5O5O5Q5QRRr+ Iterator[str]c#8Kt|jjp tj}d|jD}dd}|D]}t|}|r ||d2d |jvr ||d H ||z d }n#t$r||d Y{wxYw | |n#t$r||dYwxYw| VdS)zAYield ``ext.depends`` that are contained by the project directoryc3.K|]}|jD]}|VdSr)depends)rr8deps r!rz2build_ext._get_internal_depends..s1II3S[IIc3IIIIIIIr+ orig_pathr`reasonr9rQc2tjd||dS)NzJdependency %s won't be automatically included in the manifest: the path %s)rinfo)rrs r!skipz-build_ext._get_internal_depends..skip s+ H8      r+zmust be relativez..zcan't have `..` segmentsT)strictz doesn't existzmust be inside the project rootN)rr`rr`r9rQ) rr0src_rootrDrresolverV is_absolutepartsrx relative_to ValueErroras_posix)r6 project_rootrrrrEresolveds r!rzbuild_ext._get_internal_dependssD-6C")DDLLNN II$/III     " "C99D!! S,---tz!!S4555 (4/888EE   S/***  $$\2222   S;<<< --// ! ! ! !/ " "s$B44C  C C''D?Dc|jr3t|St t j||zSr)r2listget_output_mappingkeyssortedr3 get_outputs_build_ext__get_stubs_outputsrs r!rzbuild_ext.get_outputsAs\ < ://11668899 9j,T22T5M5M5O5OOPPPr+dict[str, str]ch|}tt|dS)z1See :class:`setuptools.commands.build.SubCommand`c|dS)Nrr)xs r!z.build_ext.get_output_mapping..Is !A$r+)key)rrrr)r6mappings r!rzbuild_ext.get_output_mappingFs0**,,F7777888r+cfdjD}tj|}t d|DS)Nc3K|]?}|j tjjjg|jdRV@dS)r<N)r[rDrErBrGrrA)rr8r6s r!rz0build_ext.__get_stubs_outputs..Mse   GL D#.*>*>s*C*C D D D      r+c3&K|] \}}||zV dSrr)rbasefnexts r!rz0build_ext.__get_stubs_outputs..Ts*::[T5D5L::::::r+)rV itertoolsproduct!_build_ext__get_output_extensionsr)r6 ns_ext_basespairss` r!__get_stubs_outputszbuild_ext.__get_stubs_outputsKsj       !,0L0L0N0NOO::E::::::r+c#ZKdVdV|djrdVdSdS)Nrcz.pycrHz.pyo)rUrlrs r!__get_output_extensionsz!build_ext.__get_output_extensionsVsH   % %j 1 1 : LLLLL  r+ctjj|g|jdRdz}||||dSrb)rDrErBrrAr])r6 output_dirr8rT stub_files r!rzbuild_ext.write_stub\sNGLHcn.B.B3.G.GHHH5P  ig66666r+rcltjd|j||r1tj|rt |dz|jst|dd5}d ddd td zd tj |j zd d dtddddtddddddtddddg}| |dddn #1swxYwY|r||dSdS)Nz writing stub loader for %s to %sz already exists! Please delete.wzutf-8)encoding zdef __bootstrap__():z- global __bootstrap__, __file__, __loader__z0 import sys, os, pkg_resources, importlib.utilz, dlz: __file__ = pkg_resources.resource_filename(__name__,%r)z del __bootstrap__z if '__loader__' in globals():z del __loader__z# old_flags = sys.getdlopenflags()z old_dir = os.getcwd()z try:z( os.chdir(os.path.dirname(__file__))z$ sys.setdlopenflags(dl.RTLD_NOW)z3 spec = importlib.util.spec_from_file_location(z# __name__, __file__)z0 mod = importlib.util.module_from_spec(spec)z! spec.loader.exec_module(mod)z finally:z" sys.setdlopenflags(old_flags)z os.chdir(old_dir)z__bootstrap__()r')rrrrDrErWr ropenrBr*rFrwrite_compile_and_remove_stub)r6rr8rTfcontents r!r]zbuild_ext._write_stub_file`s 3S^YOOO  Krw~~i00 KI(IIJJ J| !iw777 !1))*CFvV$&(g&6&6s~&F&FG*6+?@@.>@AAI9F7!>??,%-%0   3 ! ! ! ! ! ! ! ! ! ! ! ! ! ! !4  5  ) )) 4 4 4 4 4 5 5s(BDDDc"ddlm}||gdd|j|dj}|dkr||g|d|jt j|r|jst j|dSdSdS)Nr) byte_compileT)rlrrrj) distutils.utilrrrUrlrDrErWunlink)r6rrrls r!rz"build_ext._compile_and_remove_stubs////// i[1D$,OOOO--m<<E a<< L !      7>>) $ $ !T\ ! Ii  ! ! ! !r+N)r8r r9r:)r9rQ)r8r r_r`r9r`)r9rh)rIr`r9r`)r9r)r9r)r9r)F)rr`r8r )rr`)__name__ __module__ __qualname____annotations__rr2r4rPr5r\rrr@rrrrrrrrrrrrrr]rrr+r!rr[sMG---,,,, G G G G"0000 444426###    >KKK6888 & & & &KKKSSSS$"$"$"$"LQQQQ 9999 ; ; ; 77777 5 5 5 5 5D ! ! ! ! ! !r+rdebugboolr9rQc R||j||||||||| | | | dSr)linkSHARED_LIBRARY) r6objectsoutput_libnamerrrrrr  extra_preargsextra_postargs build_temp target_langs r!rrsN                  r+staticc ,|Jtj|\}} tj| \}}|ddr |dd}|||||| dS)Nrr)rDrErAr|r~ startswithcreate_static_lib)r6rrrrrrrr rrrrrJrF_exts r!rrs*!!!!w}}^<< H))(33$   % % 0 0 7 7 $ |H w*e[QQQQQr+) NNNNNFNNNN)r rr9rQ)1 __future__rrrDrcollections.abcrimportlib.machineryrimportlib.utilrrmpathlibrtypingr setuptools.distr setuptools.errorsr setuptools.extensionr r distutilsrdistutils.ccompilerrdistutils.sysconfigrrdistutils.command.build_extrr3Cython.Distutils.build_ext __import__ ImportErrorrrr"r(rrrr?dlhasattrr*r.rrr+r!r0s1"""""" $$$$$$222222CCCCCC ((((((''''''33333333,,,,,,BBBBBBBB HCCCCCCCHFFFFFF  )**** HHHGGGGGGGGHz=<<<<<%%%*   <8IIW__  'J 7 77 II      """t!t!t!t!t! t!t!t!n  CR4!       BG !RRRRRRRs$#A55 BB:C CC