f!)@ ddlZddlZddlZGddZdZdS)Nc:eZdZ ddZdZdS) ExtensionNc t|tstdt|trt d|Dstd||_||_|pg|_|pg|_|pg|_ |pg|_ |pg|_ |pg|_ | pg|_ | pg|_| pg|_| pg|_| pg|_|pg|_||_||_t+|dkrId|D}dt/|}d|z}t1j|dSdS)Nz'name' must be a stringc3@K|]}t|tVdS)N) isinstancestr).0vs :/opt/alt/python311/lib64/python3.11/distutils/extension.py z%Extension.__init__..ks,881Jq#&&888888z#'sources' must be a list of stringsrc,g|]}t|S)repr)r options r z&Extension.__init__..s555tF||555r z, zUnknown Extension options: %s)rrAssertionErrorlistallnamesources include_dirs define_macros undef_macros library_dirs librariesruntime_library_dirs extra_objectsextra_compile_argsextra_link_argsexport_symbols swig_optsdependslanguageoptionallenjoinsortedwarningswarn)selfrrrrrrrrrrr r!r"r#r$r%kwoptionsmsgs r __init__zExtension.__init__Ws{"$$$ < !:;; ;7D)) H8888888 H !FGG G  (.B*0b(.B(.B"b$8$>B!*0b"4":.4",2"b}"      r77Q;;55"555Giiw00G1G;C M#      ;r c`d|jj|jj|jt |fzS)Nz<%s.%s(%r) at %#x>) __class__ __module__ __qualname__rid)r+s r __repr__zExtension.__repr__s2# N % N ' I tHH ' r )NNNNNNNNNNNNNN)__name__r2r3r/r5rr r rrsj>F $ $## '+ $%)"&!%"----^r rc ddlm}m}m}ddlm}ddlm}||}||ddddd} g} |} | ntj || r/| d| dcxkrd krnn| d | zd|| |} || } | d} t| g} d} | ddD]?}| | |d} tj|d}|dd }|d d}|d vr| j |u|d kr| j ||dkri|d}|dkr| j |df| j |d|||d zdf|dkr| j |'|dkr| j |I|dkr| j |k|dkr| j ||dkr| j ||dkr | j} |dkr | j} |dkr | j} |dkr%| j ||s| j} |dvr| j |'| d|zA| |  |n#|wxYw|S)Nr)parse_makefileexpand_makefile_vars _variable_rx)TextFile) split_quoted)strip_comments skip_blanks join_lines lstrip_ws rstrip_wsT*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.sysconfigr8r9r:distutils.text_filer;distutils.utilr<readlinerematchr*rappendospathsplitextrrfindrrrrrrr rclose)filenamer8r9r:r;r<varsfile extensionslinewordsmoduleextappend_next_wordwordsuffixswitchvalueequalss r read_setup_filerasE=3333333333-,,,,,++++++ >( # #D 8H#$!1 . . .DQ L #==??D|x d++ Aw$r())))c))))) 6=>>>''d33D L&&E1XFFB''C# abb 2 C2 C#/$++D111'+$))$//2acT!""XUOOOK&&t,,,,t^^$++E2222t^^"ZZ__F||)00%????)00%&/27q 2B2DEEEEt^^$++E2222t^^*11$7777t^^M((////t^^$++E2222t^^,33E::::X%%'*'?$$Z'''*':$$\))'*'=$$t^^'..t444 ?+.+>(CCC %,,T2222II:TABBBB   c " " "YL #V  s K9MM)rNrKr)rrarr r rbsv  wwwwwwwwtcccccr