§
    !@Ä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dS )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dS )Ú	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                óH  — t          | j        t          ¦  «        st          d¦  «        ‚t          | j        t          ¦  «        rt          d¦  «        ‚	 t          t          t          j        | j        ¦  «        ¦  «        | _        d S # 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    úPC:\Projects\Historical\venv\Lib\site-packages\setuptools/_distutils/extension.pyÚ__post_init__zExtension.__post_init__ƒ   s¦   € Ý˜$œ)¥SÑ)Ô)ð 	7ÝÐ5Ñ6Ô6Ð6õ �d”l¥CÑ(Ô(ð 	ÝØ\ñô ð ð
	Ý¥¥B¤I¨t¬|Ñ <Ô <Ñ=Ô=ˆDŒLˆLˆLøÝð 	ð 	ð 	ÝØNñô ð ð	øøøs   Á1B Â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
      s0  € € € € € € ðð ð
 €I€I�Iðð
 .Ð-Ð-Ñ-ðð $˜e°DÐ9Ñ9Ô9€LÐ9Ð9Ð9Ñ9ðð
 38°%ÈÐ2MÑ2MÔ2M€MÐMÐMÐMÑMðð $˜e°DÐ9Ñ9Ô9€LÐ9Ð9Ð9Ñ9Ø/à#˜e°DÐ9Ñ9Ô9€LÐ9Ð9Ð9Ñ9ØHà ˜5°Ð6Ñ6Ô6€IÐ6Ð6Ð6Ñ6ØHà&+ e¸DÐ&AÑ&AÔ&AÐÐAÐAÐAÑAðð
  %˜u°TÐ:Ñ:Ô:€MÐ:Ð:Ð:Ñ:ðð %* E¸$Ð$?Ñ$?Ô$?ÐÐ?Ð?Ð?Ñ?ðð "' °tÐ!<Ñ!<Ô!<€OÐ<Ð<Ð<Ñ<ðð !& °dÐ ;Ñ ;Ô ;€NÐ;Ð;Ð;Ñ;ðð !˜5°Ð6Ñ6Ô6€IÐ6Ð6Ð6Ñ6ðð
 ˜¨tÐ4Ñ4Ô4€GÐ4Ð4Ð4Ñ4Ø5à€HÐÐÐÑðð
 €HÐÐÐÑðð
ð ð ð ð r.   r
   c              #  ó$   K  — | ]}|j         V — Œd S )N)r   )Ú.0Úfs     r&   ú	<genexpr>r2   –   s$   è è € Ð0Ð0˜ˆaŒfÐ0Ð0Ð0Ð0Ð0Ð0r.   c                óÀ  — ddl m}m}m} ddlm} ddlm}  || ¦  «        } || ddddd¬¦  «        }	 g }	 |                     ¦   «         }	|	€�nà| 	                    |	¦  «        rŒ/|	d         |	d         cxk    rd	k    rn n| 
                    d
|	› d�¦  «         Œe ||	|¦  «        }	 ||	¦  «        }
|
d         }t          |g ¦  «        }d}|
dd…         D �]@}|�|                     |¦  «         d}Œt          j                             |¦  «        d         }|dd…         }|dd…         }|dv r|j                             |¦  «         Œu|dk    r|j                             |¦  «         Œ–|dk    ri|                     d¦  «        }|dk    r|j                             |df¦  «         ŒÔ|j                             |d|…         ||dz   d…         f¦  «         �Œ|dk    r|j                             |¦  «         �Œ'|dk    r|j                             |¦  «         �ŒI|dk    r|j                             |¦  «         �Œk|dk    r|j                             |¦  «         �Œ�|dk    r|j                             |¦  «         �Œ¯|dk    r	|j        }�Œ¾|dk    r	|j        }�ŒÍ|dk    r	|j        }�ŒÜ|dk    r%|j                             |¦  «         |s|j        }�Œ|dv r|j                             |¦  «         �Œ'| 
                    d|› d
�¦  «         �ŒB|                     |¦  «         �Œø	 |                     ¦   «          n# |                     ¦   «          w xY w|S )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\   š   s0  € àVÐVÐVÐVÐVÐVÐVÐVÐVÐVØ,Ð,Ð,Ð,Ð,Ð,Ø+Ð+Ð+Ð+Ð+Ð+ð ˆ>˜(Ñ#Ô#€Dð ˆ8ØØØØØØðñ ô €DðQØˆ
ðL	#Ø—=’=‘?”?ˆDØˆ|ÙØ×!Ò! $Ñ'Ô'ð Øà�AŒw˜$˜rœ(Ð)Ð)Ò)Ð) cÒ)Ð)Ð)Ð)Ð)Ø—	’	Ð;˜dÐ;Ð;Ð;Ñ<Ô<Ð<Øà'Ð'¨¨dÑ3Ô3ˆDØ �L Ñ&Ô&ˆEð ˜1”XˆFÝ˜F BÑ'Ô'ˆCØ#Ðà˜a˜b˜bœ	ð 2Añ 2A�Ø#Ð/Ø$×+Ò+¨DÑ1Ô1Ð1Ø'+Ð$Øåœ×)Ò)¨$Ñ/Ô/°Ô2�Ø˜a ˜cœ�Ø˜Q˜R˜Rœ�àÐOÐOÐOð ”K×&Ò& tÑ,Ô,Ð,Ð,Ø˜t’^�^ØÔ$×+Ò+¨EÑ2Ô2Ð2Ð2Ø˜t’^�^Ø"ŸZšZ¨™_œ_�FØ ’|�|ØÔ)×0Ò0°%¸°Ñ?Ô?Ð?Ð?àÔ)×0Ò0°%¸¸&¸´/À5ÈÐRSÉÈÈÔCVÐ1WÑXÔXÐXÑXØ˜t’^�^ØÔ$×+Ò+¨EÑ2Ô2Ð2Ñ2Ø˜t’^�^ØÔ*×1Ò1°$Ñ7Ô7Ð7Ñ7Ø˜t’^�^Ø”M×(Ò(¨Ñ/Ô/Ð/Ñ/Ø˜t’^�^ØÔ$×+Ò+¨EÑ2Ô2Ð2Ñ2Ø˜t’^�^ØÔ,×3Ò3°EÑ:Ô:Ð:Ñ:Ø˜XÒ%Ð%Ø'*Ô'?Ð$Ñ$Ø˜ZÒ'Ð'Ø'*Ô':Ð$Ñ$Ø˜\Ò)Ð)Ø'*Ô'=Ð$Ñ$Ø˜t’^�^ØÔ'×.Ò.¨tÑ4Ô4Ð4Ø ð ?Ø+.Ô+>Ð(ùØÐCÐCÐCð
 Ô%×,Ò,¨TÑ2Ô2Ð2Ñ2à—I’IÐ?¸Ð?Ð?Ð?Ñ@Ô@Ð@Ñ@à×Ò˜cÑ"Ô"Ð"ñYL	#ð ðV 	�
Š
‰Œˆˆøˆ�
Š
‰ŒˆˆøøøàÐs   ´K;M ÍM)r+   Ú
__future__r   r#   Úcollections.abcr   Údataclassesr   r   Ú
_dataclassr   r
   ÚtupleÚ_safer\   r-   r.   r&   ú<module>rc      sú   ððð ð
 #Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø $Ð $Ð $Ð $Ð $Ð $Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à )Ð )Ð )Ð )Ð )Ð )ð ÐÑÔðyð yð yð yð yñ yô yñ Ôðyðx 	ˆÐ0Ð0˜f˜f YÑ/Ô/Ð0Ñ0Ô0Ñ0Ô0€Ø <ðfð fð fð fð fr.   