a0bi(2SrSSKrSSKr"SS5rSrg)zmdistutils.extension Provides the Extension class, used to describe C/C++ extension modules in setup scripts.NcD\rSrSrSrSSjrSrSrg) Extensiona 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 : [string] list of source filenames, relative to the distribution root (where the setup script lives), in Unix form (slash-separated) for portability. 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 .[U[5(d [S5e[U[5(a[ SU55(d [S5eXlX lU=(d /UlU=(d /UlU=(d /Ul U=(d /Ul U=(d /Ul U=(d /Ul U =(d /Ul U =(d /UlU =(d /UlU =(d /UlU =(d /UlU=(d /UlXlUUl[+U5S:aQUVs/sHn[-U5PM nnSR/[1U55nSU-n[2R4"U5 ggs snf)Nz'name' must be a stringc3B# UHn[U[5v M g7f)N) isinstancestr).0vs ژ/builddir/build/BUILDROOT/alt-python313-setuptools-69.0.2-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/setuptools/_distutils/extension.py %Extension.__init__..ms1Vg*Q2D2Dgsz#'sources' must be a list of stringsrz, zUnknown Extension options: %s)rr AssertionErrorlistallnamesources include_dirs define_macros undef_macros library_dirs librariesruntime_library_dirs extra_objectsextra_compile_argsextra_link_argsexport_symbols swig_optsdependslanguageoptionallenreprjoinsortedwarningswarn)selfrrrrrrrrrrrrrrr r!kwoptionoptionsmsgs r __init__Extension.__init__WsG($$$ !:; ;7D))c1Vg1V.V.V !FG G  (.B*0b(.B(.B"b$8$>B!*0b"4":.4",2"b}"     r7Q;245"tF|"G5iiw0G1G;C MM#  5sFcSRURRURRUR[ U55$)Nz<{}.{}({!r}) at {:#x}>)format __class__ __module__ __qualname__rid)r(s r __repr__Extension.__repr__s='.. NN % % NN ' ' II tH   )rrrrrrrr rrrr!rrrr)NNNNNNNNNNNNNN)__name__r2r3__firstlineno____doc__r-r5__static_attributes__r7r rrs?>L!#/b r7rc SSKJnJnJn SSKJn SSKJn U"U5nU"USSSSSS9n/nUR5n U cGOURU 5(aM.U SU Ss=:XaS :XaO OURS U -5 MZU"X5n U"U 5n U Sn [U /5n Sn U SSGHWnU bU RU5 Sn M[RRU5SnUSS nUS SnUS ;aU R RU5 MkUS :XaU R"RU5 MUS:Xa^UR%S5nUS:XaU R&RUS45 MU R&RUSUUUS -S45 MUS:XaU R(RU5 GMUS:XaU R*RU5 GM:US:XaU R,RU5 GM^US:XaU R.RU5 GMUS:XaU R0RU5 GMUS:XaU R0n GMUS:XaU R2n GMUS:XaU R*n GMUS:Xa4U R2RU5 U(dU R2n GMGMUS;aU R4RU5 GMCURSU-5 GMZ URU 5 GMUR75 U$!UR75 f=f)z3Reads a Setup file and returns Extension instances.r)parse_makefileexpand_makefile_vars _variable_rx)TextFile) split_quoted)strip_comments skip_blanks join_lines lstrip_ws rstrip_wsN*z'%s' 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.dylibzunrecognized argument '%s')distutils.sysconfigr>r?r@distutils.text_filerAdistutils.utilrBreadlinematchr'rappendospathsplitextrrfindrrrrrrrrclose)filenamer>r?r@rArBvarsfile extensionslinewordsmoduleextappend_next_wordwordsuffixswitchvalueequalss r read_setup_filerfsVV,+ ( #D   DQ ==?D|!!$''Aw$r()c) 6=>'3D &E1XFFB'C# ab #/$++D1'+$))$/2aQROOKK&&t,t^$$++E2t^"ZZ_F|))00%?))00%&/5RSCV1WXt^$$++E2t^**11$7t^MM((/t^$$++E2t^,,33E:X%'*'?'?$Z''*':':$\)'*'='=$t^''..t4 +.+>+>(!CC %%,,T2II:TABe"h   c "Y\  s K4L11M)r:rSr&rrfr<r7r rgs%  z z zgr7