Ë Ýdy<£2ãó2—dZddlZddlZddlZddlZddlZddlmZmZm Z m Z m Z ddl m Z mZddlmZddlmZddlZej(de«ej,Zej0Zej4Zej8Zej<ej>ej@ejBfZ"ejFd k(xrejHd kDZ%e%rd Z&d Z'd Z(ndZ&dZ'dZ(dddœZ)Gd„d«Z*Gd„d«Z+d„Z,d„Z-d„Z.d„Z/dd„Z0e,«Z1Gd„de «Z2y) a distutils.msvc9compiler Contains MSVCCompiler, an implementation of the abstract CCompiler class for the Microsoft Visual Studio 2008. The module is compatible with VS 2005 and VS 2008. You can find legacy support for older versions of VS in distutils.msvccompiler. éNé)ÚDistutilsExecErrorÚDistutilsPlatformErrorÚ CompileErrorÚLibErrorÚ LinkError)Ú CCompilerÚgen_lib_options)Úlog)Ú get_platformz™msvc9compiler is deprecated and slated to be removed in the future. Please discontinue use or file an issue with pypa/distutils describing your use case.Úwin32lz1Software\Wow6432Node\Microsoft\VisualStudio\%0.1fz5Software\Wow6432Node\Microsoft\Microsoft SDKs\Windowsz,Software\Wow6432Node\Microsoft\.NETFrameworkz%Software\Microsoft\VisualStudio\%0.1fz)Software\Microsoft\Microsoft SDKs\Windowsz Software\Microsoft\.NETFrameworkÚx86Úamd64©r z win-amd64cóh—eZdZdZd„Zee«Zd„Zee«Zd„Zee«Zd„Ze e«Zy)ÚRegz-Helper class to read values from the registrycón—tD]"}|j||«}|sŒ||vsŒ||cSt|«‚©N)ÚHKEYSÚ read_valuesÚKeyError)ÚclsÚpathÚkeyÚbaseÚds úH/usr/lib/python3.12/site-packages/setuptools/_distutils/msvc9compiler.pyÚ get_valuez Reg.get_valueNs:€ßˆDØ—‘  dÓ+ˆAÚ�S˜A’Xؘ‘v’ ðô�s‹mÐócó¬— t||«}g}d} t||«}|j|«|dz }Œ$#t$rYywxYw#t$rY|SwxYw)zReturn list of registry keys.Nrr)Ú RegOpenKeyExÚRegErrorÚ RegEnumKeyÚappend)rrrÚhandleÚLÚiÚks rÚ read_keysz Reg.read_keysWs|€ð Ü! $¨Ó,ˆFð ˆØ ˆØð ܘv qÓ)�ð �H‰H�QŒKØ �‰FˆAð øô ò Ùð ûôò Øðˆð  ús ‚ 7” A· AÁAÁ AÁAcóø— t||«}i}d} t||«\}}}|j«}|j |«||j |«<|dz }ŒJ#t$rYywxYw#t$rY|SwxYw)z`Return dict of registry keys and values. All names are converted to lowercase. Nrr)r!r"Ú RegEnumValueÚlowerÚ convert_mbcs) rrrr%rr'ÚnameÚvalueÚtypes rrzReg.read_valuesjs£€ð  Ü! $¨Ó,ˆFð ˆØ ˆØð Ü$0°¸Ó$;Ñ!��e˜Tð—:‘:“<ˆDØ(+×(8Ñ(8¸Ó(?ˆAˆc×јtÓ$Ñ %Ø �‰FˆAðøô ò Ùð ûôò Øðˆð  ús"‚ A”A,Á A)Á(A)Á, A9Á8A9cóZ—t|dd«}|� |d«}|S|S#t$rY|SwxYw)NÚdecodeÚmbcs)ÚgetattrÚ UnicodeError)ÚsÚdecs rr-zReg.convert_mbcs�sG€Ü�a˜ 4Ó(ˆØ ˆ?ð Ù˜“K�ðˆˆqˆøô ò ØØˆð ús ‘� *©*N) Ú__name__Ú __module__Ú __qualname__Ú__doc__rÚ classmethodr)rr-Ú staticmethod©rrrrKsI„Ù7òñ˜IÓ&€Iòñ"˜IÓ&€Iòñ*˜kÓ*€Kòñ   Ó-�Lrrcó$—eZdZd„Zd„Zd„Zd„Zy)Ú MacroExpandercóP—i|_t|z|_|j|«yr)ÚmacrosÚVS_BASEÚvsbaseÚ load_macros)ÚselfÚversions rÚ__init__zMacroExpander.__init__Žs#€ØˆŒ Ü Ñ'ˆŒ Ø ×јÕ!rcóP—tj||«|jd|z<y)Nz$(%s))rrrB)rFÚmacrorrs rÚ set_macrozMacroExpander.set_macro“s€Ü'*§}¡}°T¸3Ó'?ˆ� ‰ �G˜e‘OÒ$rcó„—|jd|jdzd«|jd|jdzd«|jdtd« |dk\r|jd td «n td «‚ |d k\r5|jd |jd«|jdt d«yd}t D]S} t||«}t|d«}tj|dj||««}|d|jd<ŒUy#t$r t d «‚wxYw#t$rYŒzwxYw)NÚ VCInstallDirz \Setup\VCÚ productdirÚ VSInstallDirz \Setup\VSÚ FrameworkDirÚ installrootç @ÚFrameworkSDKDirzsdkinstallrootv2.0aPython was built with Visual Studio 2008; extensions must be built with a compiler than can generate compatible binaries. Visual Studio 2008 was not found on this system. If you have Cygwin installed, you can try compiling with MingW32, by passing "-c mingw32" to setup.py.g"@ÚFrameworkVersionz clr versionÚ WindowsSdkDirÚcurrentinstallfolderz.Software\Microsoft\NET Framework Setup\Productrz{}\{}rGz$(FrameworkVersion))rKrDÚNET_BASErrÚ WINSDK_BASErr!r"r#rrÚformatrB)rFrGÚprÚhrrs rrEzMacroExpander.load_macros–s6€Ø �‰�~ t§{¡{°\Ñ'AÀ<ÔPØ �‰�~ t§{¡{°\Ñ'AÀ<ÔPØ �‰�~¤x°Ô?ð Ø˜#Š~Ø—‘Ð0´(ÐØ �N‰NÐ-¨t¯{©{¸MÔ JØ �N‰N˜?¬KÐ9OÕ PàAˆAß�ðÜ$ T¨1Ó-�Aô!  AÓ&�Ü—M‘M $¨¯©¸¸3Ó(?Ó@�Ø56°y±\�— ‘ Ð1Ò2ñøôò Ü(ðLóð ð ûô  òÙðúsÁ(Dà D3ÄD0Ä3 D?Ä>D?cón—|jj«D]\}}|j||«}Œ|Sr)rBÚitemsÚreplace)rFr6r(Úvs rÚsubzMacroExpander.subµs1€Ø—K‘K×%Ñ%Ö'‰DˆAˆqØ— ‘ ˜!˜Q“‰Að(àˆrN)r8r9r:rHrKrEr`r>rrr@r@�s„ò"ò @òBó>rr@có4—d}tjj|«}|dk(ry|t|«z}tj|dj dd«\}}t |dd«dz }|dk\r|dz }t |d d «d z }|dk(rd }|dk\r||zSy) zÃReturn the version of MSVC that was used to build Python. For Python 2.3 and up, the version number is included in sys.version. For earlier versions, assume the compiler is MSVC 6. zMSC v.éÿÿÿÿéNÚ réþÿÿÿé éég$@r)ÚsysrGÚfindÚlenÚsplitÚint)Úprefixr'r6ÚrestÚ majorVersionÚ minorVersions rÚget_build_versionrr»s°€ð €FÜ � ‰ ×Ñ˜Ó €A؈B‚wØØ ŒC�‹K‰€AÜ�k‰k˜!˜"ˆo×#Ñ# C¨Ó+�G€A€tÜ�q˜˜"�v“; ‘?€LØ�rÒà˜Ñˆ Ü�q˜˜1�v“; Ñ%€Là�qÒØˆ Ø�qÒØ˜lÑ*Ð*à rcó‚—g}|D]7}tjj|«}||vsŒ'|j|«Œ9|S)znReturn a list of normalized paths with duplicates removed. The current order of paths is maintained. )ÚosrÚnormpathr$)ÚpathsÚ reduced_pathsrZÚnps rÚnormalize_and_reduce_pathsryÕsE€ð €MÛ ˆÜ �W‰W× Ñ ˜aÓ ˆà �]Ò "Ø × Ñ  Õ $ð ð ÐrcóÀ—|jtj«}g}|D]}||vsŒ|j|«Œtjj |«}|S)z3Remove duplicate values of an environment variable.)rlrtÚpathsepr$Újoin)ÚvariableÚoldListÚnewListr'Ú newVariables rÚremoveDuplicatesr�äsQ€à�n‰nœRŸZ™ZÓ(€GØ€GÛ ˆØ �GÒ Ø �N‰N˜1Õ ðô—*‘*—/‘/ 'Ó*€KØ Ðrcóœ—t|z} tjd|zd«}|rt jj|«sód|z}t jj|d«}|r´t jj|«r•t jj|t jt jd«}t jj|«}t jj|«s1t j d|z«yt j d|z«|st j d «yt jj|d «}t jj|«r|St j d «y#t$rt j d«d}Y�Œ¦wxYw) z¨Find the vcvarsall.bat file At first it tries to find the productdir of VS 2008 in the registry. If that fails it falls back to the VS90COMNTOOLS env var. z %s\Setup\VCrNz%Unable to find productdir in registryNzVS%0.f0COMNTOOLSÚVCz%s is not a valid directoryz Env var %s is not set or invalidzNo productdir foundz vcvarsall.batúUnable to find vcvarsall.bat)rCrrrr ÚdebugrtrÚisdirÚenvironÚgetr|ÚpardirÚabspathÚisfile)rGrDrNÚtoolskeyÚtoolsdirÚ vcvarsalls rÚfind_vcvarsallr�ïsE€ô �wÑ €FðÜ—]‘] >°FÑ#:¸LÓIˆ ñ œRŸW™WŸ]™]¨:Ô6Ø%¨Ñ/ˆÜ—:‘:—>‘> (¨DÓ1ˆá œŸ™Ÿ ™  hÔ/ÜŸ™Ÿ™ h´· ± ¼2¿9¹9ÀdÓKˆJÜŸ™Ÿ™¨Ó4ˆJÜ—7‘7—=‘= Ô,Ü— ‘ Ð7¸*ÑDÔEØä �I‰IÐ8¸8ÑCÔ DÙ Ü � ‰ Ð'Ô(ØÜ—‘— ‘ ˜Z¨Ó9€IÜ ‡w�w‡~�~�iÔ ØÐ܇I�IÐ,Ô-Ø øô/ òÜ � ‰ Ð9Ô:Ø‹ ðús‹F'Æ' G Ç G có4—t|«}hd£}i}|€ td«‚tjd||«t j dj ||«tjtj¬«} |j«\}}|j«dk7rt|jd««‚|jd«}|jd «D]ˆ}tj|«}d |vrŒ|j«}|jd d «\} } | j«} | |vsŒW| j!t"j$«r| dd } t'| «|| <ŒŠ |j(j+«|j,j+«t/|«t/|«k7r+t1t3t5|j7««««‚|S#|j(j+«|j,j+«wxYw) z?Launch vcvarsall.bat and read the settings from its environment>ÚlibrÚincludeÚlibpathNr„z'Calling 'vcvarsall.bat %s' (version=%s)z "{}" {} & set)ÚstdoutÚstderrrr3Ú Ú=rrb)r�rr r…Ú subprocessÚPopenrYÚPIPEÚ communicateÚwaitr2rlrr-Ústripr,Úendswithrtr{r�r”Úcloser•rkÚ ValueErrorÚstrÚlistÚkeys) rGÚarchrŽÚ interestingÚresultÚpopenr”r•Úlinerr/s rÚquery_vcvarsallr©s­€ä˜wÓ'€IÚ7€KØ €FàÐÜ$Ð%CÓDÐD܇I�IÐ7¸¸wÔGÜ × Ñ Ø×јy¨$Ó/Ü�‰Ü�‰ô €Eð Ø×*Ñ*Ó,‰ˆ�Ø �:‰:‹<˜1Ò Ü(¨¯©°vÓ)>Ó?Ð ?à—‘˜vÓ&ˆØ—L‘L Ö&ˆDÜ×#Ñ# DÓ)ˆDؘ$‰ØØ—:‘:“<ˆDØŸ™ C¨Ó+‰JˆC�Ø—)‘)“+ˆCØ�kÒ!Ø—>‘>¤"§*¡*Ô-Ø! # 2˜J�EÜ.¨uÓ5��s’ ñ'ð � ‰ ×ÑÔØ � ‰ ×ÑÔä ˆ6ƒ{”c˜+Ó&Ò&ÜœœT &§+¡+£-Ó0Ó1Ó2Ð2à €Møð � ‰ ×ÑÔØ � ‰ ×ÑÕúsÁ;B8G!Ä44G!Ç!6Hcóö‡—eZdZdZdZiZdgZgd¢ZdgZdgZ eezeze zZ dZ dZ d Z d Zd xZZd Zdˆfd „ Zdd„Zdd„Z dd„Z dd„Z d d„Zd„Zd„Zd„Zd„Zd„Zd„Zd!d„Zd„ZˆxZ S)"Ú MSVCCompilerztConcrete class that implements an interface to Microsoft Visual C++, as defined by the CCompiler abstract class.Úmsvcz.c)z.ccz.cppz.cxxú.rcz.mcz.resz.objz.libz.dllz%s%sz.execó„•—t‰|�|||«t|_d|_g|_d|_d|_d|_y)NzSoftware\Microsoft\VisualStudioF) ÚsuperrHÚVERSIONÚ_MSVCCompiler__versionÚ_MSVCCompiler__rootÚ_MSVCCompiler__pathsÚ plat_nameÚ_MSVCCompiler__archÚ initialized)rFÚverboseÚdry_runÚforceÚ __class__s €rrHzMSVCCompiler.__init__^s?ø€Ü ‰Ñ˜ '¨5Ô1Ü ˆŒØ8ˆŒ àˆŒ àˆŒØˆŒ Ø ˆÕrcóú—|jrJd«‚|jdkrtd|jz«‚|€ t«}d}||vrtdj |««‚dt j vrHdt j vr6|jd«r%d|_d |_ d |_ d |_ d |_ �n7|t«d fvr t|}ntt«dzt|z}tt|«}|dj!t j"«|_|dt j d<|dt j d<t'|j$«dk(rtd|j(z«‚|jd«|_|jd «|_ |jd «|_ |jd «|_ |jd «|_ t j dj!d«D]}|j$j+|«Œ t/|j$«|_dj1|j$«t j d<d|_|j4dk(rgd¢|_gd¢|_ngd¢|_gd¢|_gd¢|_|jdk\r gd¢|_dg|_d|_y#t,$rYŒ½wxYw)Nzdon't init multiple timesrRz(VC %0.1f is not supported by this modulerz--plat-name must be one of {}ÚDISTUTILS_USE_SDKÚMSSdkzcl.exezlink.exezlib.exezrc.exezmc.exer Ú_rr‘r’rzxPython was built with %s, and extensions need to be built with the same version of the compiler, but it isn't installed.Ú;r)ú/nologoú/O2ú/MDú/W3ú/DNDEBUG)rÀú/Odú/MDdrÃú/Z7ú/D_DEBUG)rÀrÁrÂrÃú/GS-rÄ)rÀrÅrÆrÃrÉrÇrÈ)ú/DLLrÀz/INCREMENTAL:NOé)rÊrÀz/INCREMENTAL:noz/DEBUGrÀT) r¶r±rr rYrtr‡Úfind_exeÚccÚlinkerr‘ÚrcÚmcÚPLAT_TO_VCVARSr©r°rlr{r³rkÚ_MSVCCompiler__productr$rryr|Úpreprocess_optionsrµÚcompile_optionsÚcompile_options_debugÚldflags_sharedÚldflags_shared_debugÚldflags_static)rFr´Úok_platsÚ plat_specÚvc_envrZs rÚ initializezMSVCCompiler.initializeis¬€à×#Ò#Ð@Ð%@Ó@Ð#Ø �>‰>˜CÒ Ü(Ø:¸T¿^¹^ÑKóð ð Ð Ü$›ˆIà'ˆØ ˜HÑ $Ü(Ø/×6Ñ6°xÓ@óð ð ¤2§:¡:Ñ -Øœ2Ÿ:™:Ñ%Ø— ‘ ˜hÔ'ðˆDŒGØ$ˆDŒKØ ˆDŒH؈DŒG؈DŽGð œ\›^¨WÐ5Ñ5ä*¨9Ñ5‘ ô#¤<£>Ñ2°SÑ8¼>È)Ñ;TÑTðô%¤W¨iÓ8ˆFà! &™>×/Ñ/´· ± Ó;ˆDŒLØ & u¡ ŒB�J‰J�uÑ Ø$*¨9Ñ$5ŒB�J‰J�yÑ !ä�4—<‘<Ó  AÒ%Ü,ðGàIMÏÉñXóðð —m‘m HÓ-ˆDŒGØŸ-™-¨ Ó3ˆDŒKØ—}‘} YÓ/ˆDŒHØ—m‘m HÓ-ˆDŒGØ—m‘m HÓ-ˆDŒGð  Ü—Z‘Z Ñ'×-Ñ-¨cÖ2�Ø— ‘ ×#Ñ# AÕ&ñ3ô2°$·,±,Ó?ˆŒ Ø ŸX™X d§l¡lÓ3Œ� ‰ �6Ñà"&ˆÔØ �;‰;˜%Ò Ú#OˆDÔ ò*ˆDÕ &ò$XˆDÔ ò*ˆDÔ &òEˆÔØ �>‰>˜QÒ Ú(XˆDÔ %Ø(˜kˆÔàˆÕøôEò Ù ð úsÇ9AK.Ë. K:Ë9K:có—|€d}g}|D�]y}tjj|«\}}tjj|«d}|tjj |«d}||j vrt d|z«‚|rtjj|«}||jvr=|jtjj|||jz««Œò||jvr>|jtjj|||jz««�Œ>|jtjj|||jz««�Œ||S)NÚrzDon't know how to compile %s)rtrÚsplitextÚ splitdriveÚisabsÚsrc_extensionsrÚbasenameÚ_rc_extensionsr$r|Ú res_extensionÚ_mc_extensionsÚ obj_extension)rFÚsource_filenamesÚ strip_dirÚ output_dirÚ obj_namesÚsrc_namerÚexts rÚobject_filenameszMSVCCompiler.object_filenamesÒs=€ð Р؈J؈ Ü(ˆHÜŸ'™'×*Ñ*¨8Ó4‰KˆT�3Ü—7‘7×%Ñ% dÓ+¨AÑ.ˆDØœŸ™Ÿ ™  dÓ+Ð-Ð.ˆDؘ$×-Ñ-Ñ-ô#Ð#AÀHÑ#LÓMÐMÙÜ—w‘w×'Ñ'¨Ó-�Ø�d×)Ñ)Ñ)Ø× Ñ ¤§¡§¡¨j¸$À×ASÑASÑ:SÓ!TÕUؘ×+Ñ+Ñ+Ø× Ñ ¤§¡§¡¨j¸$À×ASÑASÑ:SÓ!TÖUà× Ñ ¤§¡§¡¨j¸$À×ASÑASÑ:SÓ!TÖUð!)ð"Ðrc ó¬—|js|j«|j||||||«} | \}} }} } |xsg} | jd«|r| j |j «n| j |j «| D�]ß} | |\}}|rtjj|«}||jvrd|z}�nm||jvrd|z}�nX||jvr0|}d|z} |j|jg| z|gz|gz«Œ–||j$vrñtjj'|«}tjj'|«} |j|j(gd|d|gz|gz«tjj+tjj-|««\}}tjj/||dz«}|j|jgd|zgz|gz«�Œ•t#dj1||««‚d |z} |j|j2g| z| z||gz|z«�Œâ| S#t$rY�ŒñwxYw#t $r}t#|«‚d}~wwxYw#t $r}t#|«‚d}~wwxYw#t $r}t#|«‚d}~wwxYw) Nz/cz/Tcz/Tpz/foz-hz-rr­z"Don't know how to compile {} to {}z/Fo)r¶rÜÚ_setup_compiler$ÚextendrÕrÔrrtrrŠÚ _c_extensionsÚ_cpp_extensionsräÚspawnrÏrrræÚdirnamerÐrßrãr|rYrÍ)rFÚsourcesrêrBÚ include_dirsr…Ú extra_preargsÚextra_postargsÚdependsÚ compile_infoÚobjectsÚpp_optsÚbuildÚ compile_optsÚobjÚsrcríÚ input_optÚ output_optÚmsgÚh_dirÚrc_dirrr¾Úrc_files rÚcompilezMSVCCompiler.compileës߀ð×ÒØ �O‰OÔ Ø×*Ñ*Ø ˜  ¨g°wÀó ˆ ð;GÑ7ˆ�˜¨°%à$Ò*¨ˆ Ø×јDÔ!Ù Ø × Ñ  × :Ñ :Õ ;à × Ñ  × 4Ñ 4Ô 5äˆCð Ø  ™:‘��Sñô—g‘g—o‘o cÓ*�à�d×(Ñ(Ñ(Ø! C™K’ ؘ×,Ñ,Ñ,Ø! C™K’ ؘ×+Ñ+Ñ+à� Ø" S™[� ð,Ø—J‘J §¡˜y¨7Ñ2°j°\ÑAÀYÀKÑOÔPðؘ×+Ñ+Ñ+ôŸ™Ÿ™¨Ó,�ÜŸ™Ÿ™¨Ó-�ð ,à—J‘J §¡˜y¨D°%¸¸vÐ+FÑFÈ#ÈÑNÔOÜ Ÿg™g×.Ñ.¬r¯w©w×/?Ñ/?ÀÓ/DÓE‘G�D˜!Ü Ÿg™gŸl™l¨6°4¸%±<Ó@�Gà—J‘J §¡˜y¨E°C©K¨=Ñ8¸G¸9ÑDÔEñô#Ø8×?Ñ?ÀÀSÓIóð𠙈Jð (Ø— ‘ Ø—W‘W�IØ"ñ#àñð! *Ð-ñ.ð%ñ %öðsðFˆøôAò Úð ûô$*ò,Ü& sÓ+Ð+ûð,ûô2*ò,Ü& sÓ+Ð+ûð,ûô$&ò (Ü" 3Ó'Ð'ûð (ús[ÂI2Ã;'JÅ0B0JÉ*J:É2 I?É>I?Ê JÊ JÊJÊ J7Ê' J2Ê2J7Ê: KË KËKcón—|js|j«|j||«\}}|j||¬«}|j ||«r-|d|zgz}|r |j |j g|z«ytjd|«y#t$r}t|«‚d}~wwxYw)N)rêú/OUT:úskipping %s (up-to-date)) r¶rÜÚ_fix_object_argsÚlibrary_filenameÚ _need_linkrôr‘rrr r…) rFrüÚoutput_libnamerêr…Ú target_langÚoutput_filenameÚlib_argsrs rÚcreate_static_libzMSVCCompiler.create_static_libIs²€ð×ÒØ �O‰OÔ Ø $× 5Ñ 5°g¸zÓ Jш�*Ø×/Ñ/°È:Ð/ÓVˆà �?‰?˜7 OÔ 4Ø '¨OÑ";Ð!<Ñ<ˆHÙØð $Ø— ‘ ˜DŸH™H˜:¨Ñ0Õ1ô �I‰IÐ0°/Õ Bøô&ò $ܘs“mÐ#ûð $úsÁ$B B4Â$ B/Â/B4cóÈ—|js|j«|j||«\}}|j|||«}|\}}}|r|j dt |«z«t ||||«}|� tjj||«}|j||«�rè|tjk(r"| r|jdd}n+|jdd}n| r |j}n |j}g}|xsgD]}|jd|z«Œ||z|z|zd|zgz}tjj!|d«} |�‚tjj#tjj%|««\}}tjj| |j'|««}|jd|z«|j)|| |«| r| |dd| r|j+| «|j-tjj!|«« |j/|j0g|z«|j7||«}|�/|\}}dj9||«} |j/dd d ||g«yyt;j<d |«y#t2$r}t5|«‚d}~wwxYw#t2$r}t5|«‚d}~wwxYw) Nz5I don't know what to do with 'runtime_library_dirs': rz/EXPORT:r rz/IMPLIB:z-outputresource:{};{}zmt.exez-nologoz -manifestr )r¶rÜr Ú _fix_lib_argsÚwarnr¡r rtrr|rr Ú EXECUTABLEr×rÖr$rõrßrãr Úmanifest_setup_ldargsrñÚmkpathrôrÎrrÚmanifest_get_embed_inforYr r…)rFÚ target_descrürrêÚ librariesÚ library_dirsÚruntime_library_dirsÚexport_symbolsr…rørùÚ build_temprÚ fixed_argsÚlib_optsÚldflagsÚ export_optsÚsymÚld_argsÚdll_nameÚdll_extÚ implib_filerÚmfinfoÚ mffilenameÚmfidÚout_args rÚlinkzMSVCCompiler.link\sÇ€ð ×ÒØ �O‰OÔ Ø $× 5Ñ 5°g¸zÓ Jш�*Ø×'Ñ'¨ °<ÐAUÓVˆ Ø:DÑ7ˆ�LÐ"6á Ø �I‰IØGÜÐ*Ó+ñ,ô ô # 4¨Ð7KÈYÓWˆØ Ð !Ü Ÿg™gŸl™l¨:°ÓGˆOà �?‰?˜7 OÕ 4Øœi×2Ñ2Ò2ÙØ"×7Ñ7¸¸Ð;‘Gà"×1Ñ1°!°"Ð5‘GáØ"×7Ñ7‘Gà"×1Ñ1�GàˆKØ%Ò+¨Ò+�Ø×"Ñ" :°Ñ#3Õ4ð,ð˜(Ñ" [Ñ0°7Ñ:¸gÈÑ>WÐ=XÑXð ôŸ™Ÿ™¨°©Ó4ˆJØÐ)Ü&(§g¡g×&6Ñ&6Ü—G‘G×$Ñ$ _Ó5ó'Ñ#�˜7ô!Ÿg™gŸl™l¨:°t×7LÑ7LÈXÓ7VÓW� Ø—‘˜z¨KÑ7Ô8à × &Ñ & ¸ ÀGÔ LáØ+�˜˜� ÙØ—‘˜~Ô.à �K‰KœŸ™Ÿ™¨Ó8Ô 9ð %Ø— ‘ ˜DŸK™K˜=¨7Ñ2Ô3ð×1Ñ1°+¸wÓGˆFØÐ!Ø#)Ñ � ˜DØ1×8Ñ8¸È$ÓO�ð)Ø—J‘J ¨)°[À*ÈgÐVÕWð "ô �I‰IÐ0°/Õ Bøô#&ò %Ü “nÐ$ûð %ûô*ò)Ü# C›.Ð(ûð)ús0È2J,É=KÊ, KÊ5 KËKË K!Ë KËK!có¬—tjj|tjj|«dz«}|j d|z«y)Nz .manifestú/MANIFESTFILE:)rtrr|rãr$)rFrr r&Ú temp_manifests rrz"MSVCCompiler.manifest_setup_ldargsºsC€ôŸ™Ÿ ™ Ø œŸ™×(Ñ(¨Ó9¸KÑGó ˆ ð �‰Ð'¨-Ñ7Õ8rcó—|D]*}|jd«sŒ|jdd«d}ny|tjk(rd}nd}|j |«}|€y||fS)Nr0Ú:rrg)Ú startswithrlr rÚ_remove_visual_c_ref)rFrr&Úargr1r,s rrz$MSVCCompiler.manifest_get_embed_infoÆsx€ó ˆCØ�~‰~Ð.Õ/Ø #§ ¡ ¨#¨qÓ 1°!Ñ 4� Ùðð Ø œ)×.Ñ.Ò .ð‰DðˆDØ ×5Ñ5°mÓDˆMØ Ð ØØ˜dÐ"Ð"rcóL— t|«} |j«}|j«tjdtj «}tj |d|«}d}tj |d|«}tjdtj «}tj||«€yt|d«} |j|«||j«S#|j«wxYw#|j«wxYw#t$rYywxYw)NzU|)rÞz*\s*zI|)Úw) ÚopenÚreadrŸÚrerÚDOTALLr`ÚsearchÚwriteÚOSError)rFÚ manifest_fileÚ manifest_fÚ manifest_bufÚpatterns rr5z!MSVCCompiler._remove_visual_c_refÞs€ð' ô˜mÓ,ˆJð #Ø)Ÿ™Ó0� à× Ñ Ô"Ü—j‘jðDä— ‘ óˆGô Ÿ6™6 '¨2¨|Ó<ˆLØCˆGÜŸ6™6 '¨2¨|Ó<ˆLô—j‘jð5ä— ‘ óˆGô �y‰y˜ ,Ó/Ð7Øä˜m¨SÓ1ˆJð #Ø× Ñ  Ô.Ø$à× Ñ Õ"øð1× Ñ Õ"ûð0× Ñ Õ"ûÜò Ù ð úsF‚ DŽC-žBDÂ= Dà DÃDÃ-C?Ã?DÄDÄDÄ D#Ä"D#có —d|zS)Nz /LIBPATH:r>©rFÚdirs rÚlibrary_dir_optionzMSVCCompiler.library_dir_option s €Ø˜SÑ Ð rcó—td«‚)Nz‘> 'Õ*Ø"”Nñ"ððrcóö—|jD]b}tjjtjj |«|«}tjj |«sŒ`|cStj djd«D]b}tjjtjj |«|«}tjj |«sŒ`|cS|S)aŒReturn path to an MSVC executable program. Tries to find the program in several places: first, one of the MSVC program search paths from the registry; next, the directories in the PATH environment variable. If any of those work, return an absolute path that is known to exist. If none of them work, just return the original program name, 'exe'. ÚPathr¿)r³rtrr|rŠr‹r‡rl)rFÚexerZÚfns rrÌzMSVCCompiler.find_exe)s¥€ð—”ˆAÜ—‘—‘œbŸg™gŸo™o¨aÓ0°#Ó6ˆBÜ�w‰w�~‰~˜bÕ!Ø’ ðô —‘˜FÑ#×)Ñ)¨#Ö.ˆAÜ—‘—‘œbŸg™gŸo™o¨aÓ0°#Ó6ˆBÜ�w‰w�~‰~˜bÕ!Ø’ ð/ð ˆ r)rrrr)rrÞ)NNNrNNN)NrN) NNNNNrNNNN)r)!r8r9r:r;Ú compiler_typeÚ executablesròrórärærârårçÚstatic_lib_extensionÚshared_lib_extensionÚstatic_lib_formatÚshared_lib_formatÚ exe_extensionrHrÜrîrrr.rrr5rGrIrKrRrÌÚ __classcell__)rºs@rr«r«Asüø„ñ3ð€Mð€Kð�F€MÚ-€OØ�W€NØ�W€Nð# _Ñ4°~ÑEÈÑV€NØ€MØ€MØ!ÐØ!ÐØ,2Ð2ÐÐ)Ø€Mõ !óe óRð8ØØØØØØó\ð~NRóCð0ØØØ!ØØØØØØó\Cò| 9ò#ò0(ò\!ò ò *óö$rr«)r)3r;rtr˜rir;ÚwarningsÚerrorsrrrrrÚ ccompilerr r Ú_logr Úutilr ÚwinregrÚDeprecationWarningÚ OpenKeyExr!ÚEnumKeyr#Ú EnumValuer+Úerrorr"Ú HKEY_USERSÚHKEY_CURRENT_USERÚHKEY_LOCAL_MACHINEÚHKEY_CLASSES_ROOTrÚplatformÚmaxsizeÚ NATIVE_WIN64rCrXrWrÑrr@rrryr�r�r©r°r«r>rrÚrqs<ðñó ÛÛ Û Û÷õ÷2ÝÝã à €‡ � ð4ðô ð×Ñ€ Ø �^‰^€ Ø×Ñ€ Ø �<‰<€ð ×ÑØ ×ÑØ ×ÑØ ×Ñð  €ð�|‰|˜wÑ&Ò>¨3¯;©;¸Ñ+>€ ÙðC€GØJ€KØ>�Hà6€GØ>€KØ2€Hð Øñ€÷ ?.ñ?.÷D+ñ+ò\ò4 òò óF'ñV Ó €ô|�9õ|r