CasperSecurity

Current Path : /usr/lib/python3.10/distutils/__pycache__/
Upload File :
Current File : //usr/lib/python3.10/distutils/__pycache__/extension.cpython-310.pyc

o

��bc!)�@s6dZddlZddlZddlZGdd�d�Zdd�ZdS)zmdistutils.extension

Provides the Extension class, used to describe C/C++ extension
modules in setup scripts.�Nc@s>eZdZdZ														ddd�Zdd�ZdS)�	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.
    NcKst|t�s	td��t|t�rtdd�|D��std��||_||_|p$g|_|p)g|_|p.g|_	|p3g|_
|p8g|_|p=g|_|	pBg|_
|
pGg|_|pLg|_|pQg|_|
pVg|_|p[g|_||_||_t|�dkr�dd�|D�}d�t|��}d	|}t�|�dSdS)
Nz'name' must be a stringcss�|]}t|t�VqdS)N)�
isinstance�str)�.0�v�r�*/usr/lib/python3.10/distutils/extension.py�	<genexpr>ks�z%Extension.__init__.<locals>.<genexpr>z#'sources' must be a list of stringsrcSsg|]}t|��qSr)�repr)r�optionrrr�
<listcomp>�sz&Extension.__init__.<locals>.<listcomp>z, zUnknown Extension options: %s)rr�AssertionError�list�all�name�sources�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�join�sorted�warnings�warn)�selfrrrrrrrrrrrrrrrr�kw�options�msgrrr�__init__Ws8

�











�zExtension.__init__cCsd|jj|jj|jt|�fS)Nz<%s.%s(%r) at %#x>)�	__class__�
__module__�__qualname__r�id)r%rrr�__repr__�s�zExtension.__repr__)NNNNNNNNNNNNNN)�__name__r+r,�__doc__r)r.rrrrrs$C
�/rcCs�ddlm}m}m}ddlm}ddlm}||�}||dddddd�}�z-g}	|��}	|	dur3�nt	�
||	�r:q(|	d|	d	krHd
krRnn|�d|	�q(||	|�}	||	�}
|
d}t|g�}d}
|
dd�D]�}|
durz|
�
|�d}
qltj�|�d}|dd�}|dd�}|d
vr�|j�
|�ql|dkr�|j�
|�ql|dkr�|�d�}|d	kr�|j�
|df�ql|j�
|d|�||dd�f�ql|dkr�|j�
|�ql|dkr�|j�
|�ql|dkr�|j�
|�ql|dkr�|j�
|�ql|dk�r|j�
|�ql|dk�r|j}
ql|dk�r|j}
ql|dk�r |j}
ql|dk�r2|j�
|�|�s1|j}
ql|dv�r>|j�
|�ql|�d|�ql|�
|�q)W|��|S|��w)z3Reads a Setup file and returns Extension instances.r)�parse_makefile�expand_makefile_vars�_variable_rx)�TextFile)�split_quoted�)�strip_comments�skip_blanks�
join_lines�	lstrip_ws�	rstrip_wsTN����*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.sysconfigr1r2r3�distutils.text_filer4�distutils.utilr5�readline�re�matchr$r�append�os�path�splitextrr�findrrrrrrrr�close)�filenamer1r2r3r4r5�vars�file�
extensions�line�words�module�ext�append_next_word�word�suffix�switch�value�equalsrrr�read_setup_file�s�� 



�




�

�K
�rZ)r0rGrDr#rrZrrrr�<module>sz
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY