ó
    Eñi“+  ã                  óJ   • S r SSKJr  SSKrSSKrSSKJr   " S S5      rS rg)zmdistutils.extension

Provides the Extension class, used to describe C/C++ extension
modules in setup scripts.é    )ÚannotationsN)ÚIterablec                  ó†   • \ rS rSrSr              S                               SS jjrS rSrg)	Ú	Extensioné   a±  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).

Instance attributes:
  name : string
    the full name of the extension, including any packages -- ie.
    *not* a filename or pathname, but Python dotted name
  sources : Iterable[string | os.PathLike]
    iterable of source filenames (except strings, which could be misinterpreted
    as a single filename), relative to the distribution root (where the setup
    script lives), in Unix form (slash-separated) for portability. Can be any
    non-string iterable (list, tuple, set, etc.) containing strings or
    PathLike objects. Source files may be C, C++, SWIG (.i), platform-specific
    resource files, or whatever else is recognized by the "build_ext" command
    as source for a Python extension.
  include_dirs : [string]
    list of directories to search for C/C++ header files (in Unix
    form for portability)
  define_macros : [(name : string, value : string|None)]
    list of macros to define; each macro is defined using a 2-tuple,
    where 'value' is either the string to define it to or None to
    define it without a particular value (equivalent of "#define
    FOO" in source or -DFOO on Unix C compiler command line)
  undef_macros : [string]
    list of macros to undefine explicitly
  library_dirs : [string]
    list of directories to search for C/C++ libraries at link time
  libraries : [string]
    list of library names (not filenames or paths) to link against
  runtime_library_dirs : [string]
    list of directories to search for C/C++ libraries at run time
    (for shared extensions, this is when the extension is loaded)
  extra_objects : [string]
    list of extra files to link with (eg. object files not implied
    by 'sources', static library that must be explicitly specified,
    binary resource files, etc.)
  extra_compile_args : [string]
    any extra platform- and compiler-specific information to use
    when compiling the source files in 'sources'.  For platforms and
    compilers where "command line" makes sense, this is typically a
    list of command-line arguments, but for other platforms it could
    be anything.
  extra_link_args : [string]
    any extra platform- and compiler-specific information to use
    when linking object files together to create the extension (or
    to create a new static Python interpreter).  Similar
    interpretation as for 'extra_compile_args'.
  export_symbols : [string]
    list of symbols to be exported from a shared extension.  Not
    used on all platforms, and not generally necessary for Python
    extensions, which typically export exactly one symbol: "init" +
    extension_name.
  swig_opts : [string]
    any extra options to pass to SWIG if a source file has the .i
    extension.
  depends : [string]
    list of files that the extension depends on
  language : string
    extension language (i.e. "c", "c++", "objc"). Will be detected
    from the source extensions if not provided.
  optional : boolean
    specifies that a build failure in the extension should not abort the
    build process, but simply not install the failing extension.
Nc                óx  • [        U[        5      (       d  [        S5      e[        U[        5      (       a  [        S5      e [        [	        [
        R                  U5      5      U l        Xl        U=(       d    / U l	        U=(       d    / U l
        U=(       d    / U l        U=(       d    / U l        U=(       d    / U l        U=(       d    / U l        U	=(       d    / U l        U
=(       d    / U l        U=(       d    / U l        U=(       d    / U l        U=(       d    / U l        U=(       d    / U l        Xðl        UU l        [/        U5      S:”  aQ  U Vs/ s H  n[1        U5      PM     nnSR3                  [5        U5      5      nSU 3n[6        R8                  " U5        g g ! [         a    [        S5      ef = fs  snf )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 objectsr   z, zUnknown Extension options: )Ú
isinstanceÚstrÚ	TypeErrorÚlistÚmapÚosÚfspathÚsourcesÚnameÚinclude_dirsÚdefine_macrosÚundef_macrosÚlibrary_dirsÚ	librariesÚruntime_library_dirsÚextra_objectsÚextra_compile_argsÚextra_link_argsÚexport_symbolsÚ	swig_optsÚdependsÚlanguageÚoptionalÚlenÚreprÚjoinÚsortedÚwarningsÚwarn)Úselfr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   ÚkwÚoptionÚoptionsÚmsgs                        Ú\/home/mande/repo/quber/.venv/lib/python3.13/site-packages/setuptools/_distutils/extension.pyÚ__init__ÚExtension.__init__\   sz  € ô( ˜$¤×$Ñ$ÜÐ5Ó6Ð6ô �gœs×#Ñ#ÜØ\óð ð
	Ü¤¤B§I¡I¨wÓ 7Ó8ˆDŒLð Œ	Ø(×.¨BˆÔØ*×0¨bˆÔØ(×.¨BˆÔØ(×.¨BˆÔØ"Ÿ bˆŒØ$8×$>¸BˆÔ!Ø*×0¨bˆÔØ"4×":¸ˆÔØ.×4°"ˆÔØ,×2°ˆÔØ"Ÿ bˆŒØ—} "ˆŒØ ŒØ ˆŒô ˆr‹7�Q‹;Ù24Ó5²"¨”t˜F–|±"ˆGÐ5Ø—i‘i¤ w£Ó0ˆGØ/°¨yÐ9ˆCÜ�MŠM˜#Õð	 øô- ó 	ÜØNóð ð	üò. 6s   Á(F ÅF7ÆF4c           
     óš   • SU R                   R                   SU R                   R                   SU R                  < S[	        U 5      S S3	$ )NÚ<Ú.Ú(z) at z#xÚ>)Ú	__class__Ú
__module__Ú__qualname__r   Úid)r&   s    r+   Ú__repr__ÚExtension.__repr__˜   sJ   € Ø�4—>‘>×,Ñ,Ð-¨Q¨t¯~©~×/JÑ/JÐ.KÈ1ÈTÏYÉYÉMÐY^Ô_aÐbfÓ_gÐhjÐ^kÐklÐmÐmó    )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )NNNNNNNNNNNNNN) r   r
   r   z Iterable[str | os.PathLike[str]]r   úlist[str] | Noner   z#list[tuple[str, str | None]] | Noner   r:   r   r:   r   r:   r   r:   r   r:   r   r:   r   r:   r   r:   r   r:   r   r:   r   z
str | Noner   zbool | None)Ú__name__r4   r5   Ú__firstlineno__Ú__doc__r,   r7   Ú__static_attributes__© r9   r+   r   r      sß   † ñ@ðP *.Ø=AØ)-Ø)-Ø&*Ø15Ø*.Ø/3Ø,0Ø+/Ø&*Ø$(Ø#Ø $ð#:àð:ð 2ð:ð 'ð	:ð
 ;ð:ð 'ð:ð 'ð:ð $ð:ð /ð:ð (ð:ð -ð:ð *ð:ð )ð:ð $ð:ð "ð:ð  ð!:ð" õ#:õxnr9   r   c           	     ó�  • SSK JnJnJn  SSKJn  SSKJn  U" U 5      nU" U SSSSSS9n / n UR                  5       n	U	c  GOÞUR                  U	5      (       a  M.  U	S   U	S   s=:X  a  S	:X  a  O  OUR                  S
U	 S35        M[  U" X–5      n	U" U	5      n
U
S   n[        U/ 5      nSnU
SS  GHX  nUb  UR                  U5        SnM  [        R                  R                  U5      S   nUSS nUSS nUS;   a  UR                   R                  U5        Mk  US:X  a  UR"                  R                  U5        MŽ  US:X  a^  UR%                  S5      nUS:X  a  UR&                  R                  US45        MÊ  UR&                  R                  USU UUS-   S 45        Mò  US:X  a  UR(                  R                  U5        GM  US:X  a  UR*                  R                  U5        GM:  US:X  a  UR,                  R                  U5        GM^  US:X  a  UR.                  R                  U5        GM‚  US:X  a  UR0                  R                  U5        GM¦  US:X  a  UR0                  nGM»  US:X  a  UR2                  nGMÐ  US:X  a  UR*                  nGMå  US:X  a4  UR2                  R                  U5        U(       d  UR2                  nGM  GM  US;   a  UR4                  R                  U5        GMC  UR                  SU S
35        GM[     UR                  U5        GMó  UR7                  5         U$ ! UR7                  5         f = f)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 yeté   é   )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.sysconfigrA   rB   rC   Údistutils.text_filerD   Údistutils.utilrE   ÚreadlineÚmatchr%   r   Úappendr   ÚpathÚsplitextr   r   Úfindr   r   r   r   r   r   r   r   Úclose)ÚfilenamerA   rB   rC   rD   rE   ÚvarsÚfileÚ
extensionsÚlineÚwordsÚmoduleÚextÚappend_next_wordÚwordÚsuffixÚswitchÚvalueÚequalss                      r+   Úread_setup_fileri   œ   s  € çVÑVÝ,Ý+ñ ˜(Ó#€Dñ ØØØØØØñ€DðQØˆ
àØ—=‘=“?ˆDØ‰|ÙØ×!Ñ! $×'Ñ'Ùà�A‰w˜$˜r™(Õ) cÖ)Ø—	‘	˜A˜d˜VÐ#:Ð;Ô<Ùá'¨Ó3ˆDÙ  Ó&ˆEð ˜1‘XˆFÜ˜F BÓ'ˆCØ#Ðà˜a˜bœ	�Ø#Ñ/Ø$×+Ñ+¨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 "ðh ×Ñ˜cÔ"òY ð\ 	�
‰
ŒàÐøð 	�
‰
�ús   «K6L3 Ì3M)	r=   Ú
__future__r   r   r$   Úcollections.abcr   r   ri   r?   r9   r+   Ú<module>rl      s-   ðñõ
 #ã 	Û Ý $÷Bnñ BnóJfr9   