Ë
    ¨Õ°j&  ã                  óž   — d Z ddlmZ ddlZddlmZ ddlmZmZ ddl	m
Z
  e
«        G d„ d	«      «       Z ed
„  ee«      D «       «      Z	 d„ Zy)zmdistutils.extension

Provides the Extension class, used to describe C/C++ extension
modules in setup scripts.é    )ÚannotationsN)ÚIterable)ÚfieldÚfieldsé   )Úlenient_dataclassc                  ó¸  — e Zd ZU dZded<   	 ded<   	  ee¬«      Zded<   	  ee¬«      Zd	ed
<   	  ee¬«      Z	ded<   	  ee¬«      Z
ded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	  ee¬«      Zded<   	 dZded<   	 dZded<   	 d„ Zy)Ú	ExtensionzÏJust a collection of attributes that describes an extension
    module and everything needed to build it (hopefully in a portable
    way, but there are hooks that let you be as unportable as you need).
    ÚstrÚnamez Iterable[str | os.PathLike[str]]Úsources)Údefault_factoryz	list[str]Úinclude_dirszlist[tuple[str, str | None]]Údefine_macrosÚundef_macrosÚlibrary_dirsÚ	librariesÚruntime_library_dirsÚextra_objectsÚextra_compile_argsÚextra_link_argsÚexport_symbolsÚ	swig_optsÚdependsNz
str | NoneÚlanguageFÚboolÚoptionalc                ó.  — t        | j                  t        «      st        d«      ‚t        | j                  t        «      rt        d«      ‚	 t        t        t        j                  | j                  «      «      | _        y # t        $ r t        d«      ‚w xY w)Nz'name' must be a stringzJ'sources' must be an iterable of strings or PathLike objects, not a stringz<'sources' must be an iterable of strings or PathLike objects)	Ú
isinstancer   r   Ú	TypeErrorr   ÚlistÚmapÚosÚfspath)Úselfs    úU/var/www/mission/venv/lib/python3.12/site-packages/setuptools/_distutils/extension.pyÚ__post_init__zExtension.__post_init__ƒ   s{   € Ü˜$Ÿ)™)¤SÔ)ÜÐ5Ó6Ð6ô �d—l‘l¤CÔ(ÜØ\óð ð
	Ü¤¤B§I¡I¨t¯|©|Ó <Ó=ˆD�LøÜò 	ÜØNóð ð	ús   Á2A? Á?B)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__r   r!   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r'   © ó    r&   r
   r
      sB  … ñð
 ƒIðð
 .Ó-ðñ $°DÔ9€L�)Ó9ðñ
 38ÈÔ2M€MÐ/ÓMðñ $°DÔ9€L�)Ó9Ø/á#°DÔ9€L�)Ó9ØHá °Ô6€IˆyÓ6ØHá&+¸DÔ&AÐ˜)ÓAðñ
  %°TÔ:€M�9Ó:ðñ %*¸$Ô$?Ð˜	Ó?ðñ "'°tÔ!<€O�YÓ<ðñ !&°dÔ ;€N�IÓ;ðñ !°Ô6€IˆyÓ6ðñ
 ¨tÔ4€GˆYÓ4Ø5à€HˆjÓðð
 €HˆdÓðó
r.   r
   c              #  ó4   K  — | ]  }|j                   –— Œ y ­w)N)r   )Ú.0Úfs     r&   ú	<genexpr>r2   –   s   è ø€ Ò0˜ˆa�f�fÑ0ùs   ‚c                ó4  — ddl m}m}m} ddlm} ddlm}  || «      } || ddddd¬«      }	 g }	 |j                  «       }	|	€�n­|j                  |	«      rŒ'|	d   |	d   cxk(  rd	k(  rn n|j                  d
|	› d�«       ŒQ ||	|«      }	 ||	«      }
|
d   }t        |g «      }d}|
dd D �]1  }|�|j                  |«       d}Œt        j                  j                  |«      d   }|dd }|dd }|dv r|j                   j                  |«       Œf|dk(  r|j"                  j                  |«       Œ‡|dk(  r[|j%                  d«      }|dk(  r|j&                  j                  |df«       ŒÀ|j&                  j                  |d| ||dz   d f«       Œç|dk(  r|j(                  j                  |«       �Œ	|dk(  r|j*                  j                  |«       �Œ+|dk(  r|j,                  j                  |«       �ŒM|dk(  r|j.                  j                  |«       �Œo|dk(  r|j0                  j                  |«       �Œ‘|dk(  r|j0                  }�Œ¤|dk(  r|j2                  }�Œ·|dk(  r|j*                  }�ŒÊ|dk(  r-|j2                  j                  |«       |r�Œî|j2                  }�Œü|dv r|j4                  j                  |«       �Œ|j                  d|› d
�«       �Œ4 |j                  |«       �ŒÁ	 |j7                  «        |S # |j7                  «        w xY w)z3Reads a Setup file and returns Extension instances.r   )Ú_variable_rxÚexpand_makefile_varsÚparse_makefile)ÚTextFile)Úsplit_quotedT)Ústrip_commentsÚskip_blanksÚ
join_linesÚ	lstrip_wsÚ	rstrip_wsNéÿÿÿÿÚ*ú'z' lines not handled yetr   é   )z.cz.ccz.cppz.cxxz.c++z.mz.mmz-Iz-Dú=z-Uz-Cz-lz-Lz-Rz-rpathz-Xlinkerz
-Xcompilerz-u)z.az.soz.slz.oz.dylibzunrecognized argument ')Údistutils.sysconfigr4   r5   r6   Údistutils.text_filer7   Údistutils.utilr8   ÚreadlineÚmatchÚwarnr
   Úappendr#   ÚpathÚsplitextr   r   Úfindr   r   r   r   r   r   r   r   Úclose)Úfilenamer4   r5   r6   r7   r8   ÚvarsÚfileÚ
extensionsÚlineÚwordsÚmoduleÚextÚappend_next_wordÚwordÚsuffixÚswitchÚvalueÚequalss                      r&   Úread_setup_filer\   š   s   € çVÑVÝ,Ý+ñ ˜(Ó#€Dñ ØØØØØØô€DðQØˆ
àØ—=‘=“?ˆDØˆ|ÙØ×!Ñ! $Ô'Øà�A‰w˜$˜r™(Ô) cÕ)Ø—	‘	˜A˜d˜VÐ#:Ð;Ô<Øá'¨¨dÓ3ˆDÙ  Ó&ˆEð ˜1‘XˆFÜ˜F BÓ'ˆCØ#Ðà˜a˜b˜	ó 2A�Ø#Ð/Ø$×+Ñ+¨DÔ1Ø'+Ð$ØäŸ™×)Ñ)¨$Ó/°Ñ2�Ø˜a ˜�Ø˜Q˜R˜�àÐOÑOð —K‘K×&Ñ& tÕ,Ø˜t’^Ø×$Ñ$×+Ñ+¨EÕ2Ø˜t’^Ø"ŸZ™Z¨›_�FØ ’|Ø×)Ñ)×0Ñ0°%¸°Õ?à×)Ñ)×0Ñ0°%¸¸&°/À5ÈÐRSÉÈÐCVÐ1WÕXØ˜t’^Ø×$Ñ$×+Ñ+¨EÖ2Ø˜t’^Ø×*Ñ*×1Ñ1°$Ö7Ø˜t’^Ø—M‘M×(Ñ(¨Ö/Ø˜t’^Ø×$Ñ$×+Ñ+¨EÖ2Ø˜t’^Ø×,Ñ,×3Ñ3°EÖ:Ø˜XÒ%Ø'*×'?Ñ'?Ò$Ø˜ZÒ'Ø'*×':Ñ':Ò$Ø˜\Ò)Ø'*×'=Ñ'=Ò$Ø˜t’^Ø×'Ñ'×.Ñ.¨tÔ4Û Ø+.×+>Ñ+>Ò(ØÐCÑCð
 ×%Ñ%×,Ñ,¨TÖ2à—I‘IÐ 7¸°v¸QÐ?Ö@ðe2Aðh ×Ñ˜cÔ"ñY ð ðV 	�
‰
ŒàÐøð 	�
‰
�ús   ®I(L ÊAL ÌL)r+   Ú
__future__r   r#   Úcollections.abcr   Údataclassesr   r   Ú
_dataclassr   r
   ÚtupleÚ_safer\   r-   r.   r&   ú<module>rc      s[   ðñõ
 #ã 	Ý $ß %å )ñ Ó÷yð yó ðyñx 	Ñ0™f YÓ/Ô0Ó0€Ø <ófr.   