HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //proc/self/root/usr/lib/python3/dist-packages/twisted/python/__pycache__/_setup.cpython-38.pyc
U

u0�[�2�#@sVdZddlZddlZddlZddlmZddlmZddlm	Z	m
Z
ddlmZej
dkr`dZnd	Zed
ddd
dddddddddddgd�
ZdddddgZes�edd g7Zeed!d"d#gd$d%d&gd'gd(gd)d*d+gd,gd-d.gd/�Zed0ed1ed2ed3ed4Zed5ed0ed1ed2ed3ed4eed6eed7ed8�	Zed9ed:<d;d<d=d>d?d@dAdBdCg	ZGdDdE�dEe	e�ZedFdGgdHdI�dJ�edKdLdMgdNgdOdI�dP�edQdRgdSdI�dJ�gZdTdU�ZefdVdW�ZGdXdY�dYee�ZGdZd[�d[eje�Zeefd\d]�Ze�Zd^d_d`dadbdcdddedfdgdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd�g#ZdS)�a:
Setuptools convenience functionality.

This file must not import anything from Twisted, as it is loaded by C{exec} in
C{setup.py}. If you need compatibility functions for this code, duplicate them
here.

@var _EXTRA_OPTIONS: These are the actual package names and versions that will
    be used by C{extras_require}.  This is not passed to setup directly so that
    combinations of the packages can be created without the need to copy
    package names multiple times.

@var _EXTRAS_REQUIRE: C{extras_require} is a dictionary of items that can be
    passed to setup.py to install optional dependencies.  For example, to
    install the optional dev dependencies one would type::

        pip install -e ".[dev]"

    This has been supported by setuptools since 0.5a4.

@var _PLATFORM_INDEPENDENT: A list of all optional cross-platform dependencies,
    as setuptools version specifiers, used to populate L{_EXTRAS_REQUIRE}.

@var _EXTENSIONS: The list of L{ConditionalExtension} used by the setup
    process.

@var notPortedModules: Modules that are not yet ported to Python 3.
�N)�	build_ext)�CompileError)�	Extension�
find_packages)�build_py��rFTZTwistedz6An asynchronous networking framework written in PythonzTwisted Matrix Laboratoriesz twisted-python@twistedmatrix.comzGlyph Lefkowitzzglyph@twistedmatrix.comzhttp://twistedmatrix.com/ZMITz�An extensible framework for Python programming, with special focus
on event-based network programming and multiprotocol integration.
z%Programming Language :: Python :: 2.7z#Programming Language :: Python :: 3z%Programming Language :: Python :: 3.4z%Programming Language :: Python :: 3.5z%Programming Language :: Python :: 3.6z%Programming Language :: Python :: 3.7)
�nameZdescriptionZauthorZauthor_emailZ
maintainerZmaintainer_emailZurl�licenseZlong_descriptionZclassifierszpyflakes >= 1.0.0ztwisted-dev-tools >= 0.0.2zpython-subunitzsphinx >= 1.3.1ztowncrier >= 17.4.0ztwistedchecker >= 0.4.0zpydoctor >= 16.2.0zpyopenssl >= 16.0.0Zservice_identityzidna >= 0.6, != 2.3Zpyasn1zcryptography >= 1.5zappdirs >= 1.4.0Zsoappyzpyserial >= 3.0zpyobjc-corezpyobjc-framework-CFNetworkzpyobjc-framework-CocoaZpywin32zh2 >= 3.0, < 4.0zpriority >= 1.1.0, < 2.0)�dev�tls�conch�soap�serial�macos�windows�http2rr
rrrrrr)	rrr
rrrZall_non_platform�macos_platformZwindows_platformrZosx_platformz+ckeygen = twisted.conch.scripts.ckeygen:runz%cftp = twisted.conch.scripts.cftp:runz'conch = twisted.conch.scripts.conch:runz,mailmail = twisted.mail.scripts.mailmail:runz)pyhtmlizer = twisted.scripts.htmlizer:runz+tkconch = twisted.conch.scripts.tkconch:runz!trial = twisted.scripts.trial:runz3twist = twisted.application.twist._twist:Twist.mainz#twistd = twisted.scripts.twistd:runc@seZdZdZdd�ZdS)�ConditionalExtensionaj
    An extension module that will only be compiled if certain conditions are
    met.

    @param condition: A callable of one argument which returns True or False to
        indicate whether the extension should be built. The argument is an
        instance of L{build_ext_twisted}, which has useful methods for checking
        things about the platform.
    cOs(|�ddd��|_tj|f|�|�dS)N�	conditioncSsdS)NT�)Zbuilderrr�7/usr/lib/python3/dist-packages/twisted/python/_setup.py�<lambda>��z/ConditionalExtension.__init__.<locals>.<lambda>)�poprr�__init__)�self�args�kwargsrrrr�szConditionalExtension.__init__N)�__name__�
__module__�__qualname__�__doc__rrrrrr�s	rztwisted.test.raiserzsrc/twisted/test/raiser.ccCstS)N)�
_isCPython��_rrrr�rr)�sourcesrz(twisted.internet.iocpreactor.iocpsupportz:src/twisted/internet/iocpreactor/iocpsupport/iocpsupport.cz?src/twisted/internet/iocpreactor/iocpsupport/winsock_pointers.cZws2_32cCstotjdkS�NZwin32)r#�sys�platformr$rrrr�r)r&Z	librariesrztwisted.python._sendmsgzsrc/twisted/python/_sendmsg.ccCstotjdkSr')�_PY3r(r)r$rrrr�rcCs:ttdd�}|dkrtd��n|dkr6|dkr6td��dS)	zA
    Fail if we detect a version of Python we don't support.
    �version_info)r)��z%Twisted requires Python 2.7 or later.r)r�z1Twisted on Python 3 requires Python 3.4 or later.N)�getattrr(�ImportError)�versionrrr�_checkPythonVersion�s

r2cs�t�t��}�|d<G�fdd�dt�}d|i}tjddkrHt|d<dd	d
ddd
dg}|�tt	d�dd
g|dt
i|dddddddgidtddid��|S)z^

    @return: The keyword arguments to be used the the setup method.
    @rtype: L{dict}
    Zext_modulescseZdZ�ZdS)z"getSetupArgs.<locals>.my_build_extN)rr r!�conditionalExtensionsr��
extensionsrr�my_build_ext�sr6rrrrzzope.interface >= 4.4.2zconstantly >= 15.1zincremental >= 16.10.1zAutomat >= 0.3.0zhyperlink >= 17.1.1zPyHamcrest >= 1.9.0zattrs >= 17.4.0�srcTZconsole_scripts�z*.cz*.hz*.pxiz*.pyxz	build.batF)ZpackagesZuse_incrementalZsetup_requiresZinstall_requiresZentry_pointsZcmdclassZinclude_package_dataZexclude_package_dataZzip_safeZextras_require�package_dir)r2�STATIC_PACKAGE_METADATA�copy�build_ext_twistedr(r+�BuildPy3�update�dictr�_CONSOLE_SCRIPTS�_EXTRAS_REQUIRE)r5Z	argumentsr6Zcommand_classesZrequirementsrr4r�getSetupArgs�sF
��
���rBc@seZdZdZdd�ZdS)r=zh
    A version of build_py that doesn't install the modules that aren't yet
    ported to Python 3.
    cCsdd�t�|||�D�}|S)NcSs*g|]"}d�|d|dg�tkr|�qS)�.r�)�join�notPortedModules)�.0�modulerrr�
<listcomp>s�z1BuildPy3.find_package_modules.<locals>.<listcomp>)r�find_package_modules)r�packager9�modulesrrrrJs�zBuildPy3.find_package_modulesN)rr r!r"rJrrrrr=sr=c@s8eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�ZdS)
r<zb
    Allow subclasses to easily detect and customize Extensions to
    build at install-time.
    csrtjdkrdg�_ng�_tj�d�r>�j�d��j�d��fdd��jD��_�jD]}|j�	�j�qZdS)	a
        Prepare the C{self.extensions} attribute (used by
        L{build_ext.build_ext}) by checking which extensions in
        I{conditionalExtensions} should be built.  In addition, if we are
        building on NT, define the WIN32 macro to 1.
        �nt)ZWIN32rDZsunos)Z
_XOPEN_SOURCErD)Z_XOPEN_SOURCE_EXTENDEDrDcsg|]}|���r|�qSr)r)rG�x�rrrrI:s
z8build_ext_twisted.prepare_extensions.<locals>.<listcomp>N)
�osr	Z
define_macrosr(r)�
startswith�appendr3r5�extend)rZextrrOr�prepare_extensions#s


�
z$build_ext_twisted.prepare_extensionscCs|��tj�|�dS)zT
        Check to see which extension modules to build and then build them.
        N)rTr�build_extensionsrOrrrrUBsz"build_ext_twisted.build_extensionsc	Cs2dD](}zt�|�Wqtk
r*YqXqdS)N)�
conftest.cz
conftest.ozconftest.obj)rP�unlink�EnvironmentError)r�filenamerrr�_remove_conftestJs
z"build_ext_twisted._remove_conftestc	Csntdd�}zT|�|�|�W5QRXz|jjdgdd�Wntk
rVYW�dSXW�dS|��XdS)NrV�wr8)Z
output_dirFT)�openrZ�write�compiler�compiler)rZcontentZconftestrrr�_compile_helperRs
z!build_ext_twisted._compile_helpercCs$|j�d�|�d�|�d�|��S)z�
        Check if the given header can be included by trying to compile a file
        that contains only an #include line.
        zchecking for {} ...rz#include <{}>
)r^Zannounce�formatr`)rZheader_namerrr�
_check_headeraszbuild_ext_twisted._check_headerN)	rr r!r"rTrUrZr`rbrrrrr<sr<cCs|��dkS)aj
    Checks if this implementation is CPython.

    This uses C{platform.python_implementation}.

    This takes C{sys} and C{platform} kwargs that by default use the real
    modules. You shouldn't care about these -- they are for testing purposes
    only.

    @return: C{False} if the implementation is definitely not CPython, C{True}
        otherwise.
    ZCPython)Zpython_implementation)r(r)rrr�
_checkCPythonks
rcztwisted.mail.aliasztwisted.mail.bounceztwisted.mail.mailztwisted.mail.maildirztwisted.mail.pbztwisted.mail.relaymanagerztwisted.mail.scripts.__init__ztwisted.mail.tapztwisted.mail.test.test_bounceztwisted.mail.test.test_mailztwisted.mail.test.test_optionsztwisted.mail.test.test_scriptsztwisted.news.__init__ztwisted.news.databaseztwisted.news.newsztwisted.news.nntpztwisted.news.tapztwisted.news.test.__init__ztwisted.news.test.test_databaseztwisted.news.test.test_newsztwisted.news.test.test_nntpztwisted.plugins.twisted_mailztwisted.plugins.twisted_newsztwisted.protocols.mice.__init__ztwisted.protocols.mice.mousemanztwisted.protocols.shoutcastztwisted.python._pydoctorztwisted.python.finalizeztwisted.python.hookz#twisted.python.test.cmodulepullpipez!twisted.python.test.test_pydoctorztwisted.python.test.test_win32ztwisted.test.test_hookztwisted.web.soapztwisted.web.test.test_soap) r"rPr)r(Zdistutils.commandrZdistutils.errorsrZ
setuptoolsrrZsetuptools.command.build_pyrr+r*r?r:Z_devZ_EXTRA_OPTIONSZ_PLATFORM_INDEPENDENTrAr@�objectrZ_EXTENSIONSr2rBr=r<rcr#rFrrrr�<module>s2
��������������	

�����	��=N�