<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
ž
«ÿf}@  c               @   sa  d  Z  d d l Z d d l Z d d l Z d d l m Z m Z m Z d d l Z d d l	 m
 Z
 m Z d d l m Z d d l m Z d d l m Z m Z m Z d d l m Z d d	 l m Z d d
 l m Z d d „  Z Gd d „  d e ƒ Z Gd d „  d e ƒ Z d Z d Z d Z d d „  Z  e j! d ƒ Z" d d „  Z# d d „  Z$ d d „  Z% d S(   u  distutils.cygwinccompiler

Provides the CygwinCCompiler class, a subclass of UnixCCompiler that
handles the Cygwin port of the GNU C compiler to Windows.  It also contains
the Mingw32CCompiler class which handles the mingw32 port of GCC (same as
cygwin in no-cygwin mode).
i    N(   u   Popenu   PIPEu   check_output(   u   gen_preprocess_optionsu   gen_lib_options(   u   UnixCCompiler(   u
   write_file(   u   DistutilsExecErroru   CompileErroru   UnknownFileError(   u   log(   u   LooseVersion(   u   find_executablec              C   s¯   t  j j d ƒ }  |  d k r« t  j |  d |  d … } | d k rL d g S| d k r_ d g S| d	 k rr d
 g S| d k r… d g S| d k r˜ d g St d | ƒ ‚ n  d S(   ua   Include the appropriate MSVC runtime library if Python was built
    with MSVC 7.0 or later.
    u   MSC v.i   i   i
   u   1300u   msvcr70u   1310u   msvcr71u   1400u   msvcr80u   1500u   msvcr90u   1600u   msvcr100u   Unknown MS Compiler version %s Niÿÿÿÿ(   u   sysu   versionu   findu
   ValueError(   u   msc_posu   msc_ver(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu	   get_msvcr>   s    u	   get_msvcrc             B   s¡   |  Ee  Z d  Z d Z d Z d Z d Z d Z d Z d Z	 d Z
 d	 d	 d	 d
 d „ Z d d „  Z d d d d d d	 d d d d d d „
 Z d	 d d d „ Z d S(   u   CygwinCCompileru?    Handles the Cygwin port of the GNU C compiler to Windows.
    u   cygwinu   .ou   .au   .dllu   lib%s%su   %s%su   .exei    c             C   sS  t  j |  | | | ƒ t ƒ  \ } } |  j d | | f ƒ | t k	 r\ |  j d | ƒ n  t ƒ  \ |  _ |  _ |  _	 |  j |  j
 d |  j |  j |  j	 f ƒ |  j d k r¼ d |  _ n	 d |  _ |  j d k rÝ d } n d	 } |  j d
 d d d d d d d d d |  j | f ƒ |  j d k rCd g |  _ |  j d ƒ n t ƒ  |  _ d  S(   Nu%   Python's GCC status: %s (details: %s)uƒ   Python's pyconfig.h doesn't seem to support your compiler. Reason: %s. Compiling may fail because of undefined preprocessor macros.u   : gcc %s, ld %s, dllwrap %s
u   2.10.90u   gccu   dllwrapu   2.13u   -sharedu   -mdll -staticu   compileru   gcc -mcygwin -O -Wallu   compiler_sou   gcc -mcygwin -mdll -O -Wallu   compiler_cxxu   g++ -mcygwin -O -Wallu
   linker_exeu   gcc -mcygwinu	   linker_sou   %s -mcygwin %su   2.91.57u   msvcrtu,   Consider upgrading to a newer version of gcc(   u   UnixCCompileru   __init__u   check_config_hu   debug_printu   CONFIG_H_OKu   warnu   get_versionsu   gcc_versionu
   ld_versionu   dllwrap_versionu   compiler_typeu
   linker_dllu   set_executablesu   dll_librariesu	   get_msvcr(   u   selfu   verboseu   dry_runu   forceu   statusu   detailsu   shared_option(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   __init__c   s<    			
u   CygwinCCompiler.__init__c             C   sÐ   | d k s | d k ro y  |  j  d d | d | g ƒ WqÌ t k
 rk } z t | ƒ ‚ WYd d } ~ XqÌ Xn] y) |  j  |  j | | d | g | ƒ Wn1 t k
 rË } z t | ƒ ‚ WYd d } ~ Xn Xd S(   u:   Compiles the source by spawning GCC and windres if needed.u   .rcu   .resu   windresu   -iu   -oN(   u   spawnu   DistutilsExecErroru   CompileErroru   compiler_so(   u   selfu   obju   srcu   extu   cc_argsu   extra_postargsu   pp_optsu   msg(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   _compilež   s     "u   CygwinCCompiler._compilec             C   sÖ  t  j  |
 p g  ƒ }
 t  j  | p$ g  ƒ } t  j  | p9 g  ƒ } | j |  j ƒ | d k	 rˆ| |  j k sy |  j d k rˆt j j | d ƒ } t j j	 t j j
 | ƒ ƒ \ } } t j j | | d ƒ } t j j | d | d ƒ } d t j j
 | ƒ d g } x | D] } | j | ƒ qW|  j t | | f d | ƒ |  j d	 k rx|
 j d
 | g ƒ |
 j d | g ƒ qˆ| j | ƒ n  |	 sž|
 j d ƒ n  t j |  | | | | | | | d |	 |
 | | | ƒ d S(   u   Link the objects.u   gcci    u   .defu   libu   .au
   LIBRARY %su   EXPORTSu
   writing %su   dllwrapu   --output-libu   --defu   -sN(   u   copyu   extendu   dll_librariesu   Noneu
   EXECUTABLEu
   linker_dllu   osu   pathu   dirnameu   splitextu   basenameu   joinu   appendu   executeu
   write_fileu   UnixCCompileru   link(   u   selfu   target_descu   objectsu   output_filenameu
   output_diru	   librariesu   library_dirsu   runtime_library_dirsu   export_symbolsu   debugu   extra_preargsu   extra_postargsu
   build_tempu   target_langu   temp_diru   dll_nameu   dll_extensionu   def_fileu   lib_fileu   contentsu   sym(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   link­   s:    				u   CygwinCCompiler.linku    c             C   sú   | d k r d } n  g  } xØ | D]Ð } t j j t j j | ƒ ƒ \ } } | |  j d d g k r~ t d | | f ƒ ‚ n  | r™ t j j | ƒ } n  | d k rÏ | j t j j	 | | | |  j
 ƒ ƒ q" | j t j j	 | | |  j
 ƒ ƒ q" W| S(   u#   Adds supports for rc and res files.u    u   .rcu   .resu"   unknown file type '%s' (from '%s')N(   u   .resu   .rc(   u   Noneu   osu   pathu   splitextu   normcaseu   src_extensionsu   UnknownFileErroru   basenameu   appendu   joinu   obj_extension(   u   selfu   source_filenamesu	   strip_diru
   output_diru	   obj_namesu   src_nameu   baseu   ext(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   object_filenamesû   s     	$u    CygwinCCompiler.object_filenamesN(   u   __name__u
   __module__u   __qualname__u   __doc__u   compiler_typeu   obj_extensionu   static_lib_extensionu   shared_lib_extensionu   static_lib_formatu   shared_lib_formatu   exe_extensionu   __init__u   _compileu   Noneu   linku   object_filenames(   u
   __locals__(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   CygwinCCompilerX   s   ;		Ku   CygwinCCompilerc             B   s5   |  Ee  Z d  Z d Z d Z d d d d d „ Z d S(   u   Mingw32CCompileru@    Handles the Mingw32 port of the GNU C compiler to Windows.
    u   mingw32i    c             C   sÝ   t  j |  | | | ƒ |  j d k r. d } n d } |  j d k rL d } n d } |  j d k  sj t ƒ  rs d } n d } |  j d	 d
 | d d | d d | d d | d d |  j | | | f ƒ g  |  _ t ƒ  |  _ d  S(   Nu   2.13u   -sharedu   -mdll -staticu   2.91.57u   --entry _DllMain@12u    u   4u    -mno-cygwinu   compileru   gcc%s -O -Wallu   compiler_sou   gcc%s -mdll -O -Wallu   compiler_cxxu   g++%s -O -Wallu
   linker_exeu   gcc%su	   linker_sou
   %s%s %s %s(	   u   CygwinCCompileru   __init__u
   ld_versionu   gcc_versionu   is_cygwingccu   set_executablesu
   linker_dllu   dll_librariesu	   get_msvcr(   u   selfu   verboseu   dry_runu   forceu   shared_optionu   entry_pointu	   no_cygwin(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   __init__  s&    			


		u   Mingw32CCompiler.__init__N(   u   __name__u
   __module__u   __qualname__u   __doc__u   compiler_typeu   __init__(   u
   __locals__(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   Mingw32CCompiler  s   u   Mingw32CCompileru   oku   not oku	   uncertainc              C   sÈ   d d l  m }  d t j k r) t d f S|  j ƒ  } yP t | ƒ } z2 d | j ƒ  k rg t d | f St d | f SWd | j	 ƒ  XWn< t
 k
 rÃ } z t d	 | | j f f SWYd d } ~ Xn Xd S(
   uw  Check if the current Python installation appears amenable to building
    extensions with GCC.

    Returns a tuple (status, details), where 'status' is one of the following
    constants:

    - CONFIG_H_OK: all is well, go ahead and compile
    - CONFIG_H_NOTOK: doesn't look good
    - CONFIG_H_UNCERTAIN: not sure -- unable to read pyconfig.h

    'details' is a human-readable string explaining the situation.

    Note there are two ways to conclude "OK": either 'sys.version' contains
    the string "GCC" (implying that this Python was built with GCC), or the
    installed "pyconfig.h" contains the string "__GNUC__".
    i    (   u	   sysconfigu   GCCu   sys.version mentions 'GCC'u   __GNUC__u   '%s' mentions '__GNUC__'u    '%s' does not mention '__GNUC__'Nu   couldn't read '%s': %s(   u	   distutilsu	   sysconfigu   sysu   versionu   CONFIG_H_OKu   get_config_h_filenameu   openu   readu   CONFIG_H_NOTOKu   closeu   IOErroru   CONFIG_H_UNCERTAINu   strerror(   u	   sysconfigu   fnu   config_hu   exc(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   check_config_hH  s    
u   check_config_hs   (\d+\.\d+(\.\d+)*)c             C   s—   |  j  ƒ  d } t | ƒ d k r& d St |  d d d t ƒj } z | j ƒ  } Wd | j ƒ  Xt	 j
 | ƒ } | d k r~ d St | j d ƒ j ƒ  ƒ S(   u¤   Find the version of an executable by running `cmd` in the shell.

    If the command is not found, or the output does not match
    `RE_VERSION`, returns None.
    i    u   shellu   stdoutNi   T(   u   splitu   find_executableu   Noneu   Popenu   Trueu   PIPEu   stdoutu   readu   closeu
   RE_VERSIONu   searchu   LooseVersionu   groupu   decode(   u   cmdu
   executableu   outu
   out_stringu   result(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   _find_exe_versionu  s    u   _find_exe_versionc              C   s&   d d d g }  t  d d „  |  Dƒ ƒ S(   ug    Try to find out the versions of gcc, ld and dllwrap.

    If not possible it returns None for it.
    u   gcc -dumpversionu   ld -vu   dllwrap --versionc             S   s   g  |  ] } t  | ƒ ‘ q S(    (   u   _find_exe_version(   u   .0u   cmd(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu
   <listcomp>  s   	 u    get_versions.<locals>.<listcomp>(   u   tuple(   u   commands(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   get_versionsŠ  s    u   get_versionsc              C   s%   t  d d g ƒ }  |  j ƒ  j d ƒ S(   u>   Try to determine if the gcc that would be used is from cygwin.u   gccu   -dumpmachines   cygwin(   u   check_outputu   stripu   endswith(   u
   out_string(    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   is_cygwingcc’  s    u   is_cygwingcc(&   u   __doc__u   osu   sysu   copyu
   subprocessu   Popenu   PIPEu   check_outputu   reu   distutils.ccompileru   gen_preprocess_optionsu   gen_lib_optionsu   distutils.unixccompileru   UnixCCompileru   distutils.file_utilu
   write_fileu   distutils.errorsu   DistutilsExecErroru   CompileErroru   UnknownFileErroru	   distutilsu   logu   distutils.versionu   LooseVersionu   distutils.spawnu   find_executableu	   get_msvcru   CygwinCCompileru   Mingw32CCompileru   CONFIG_H_OKu   CONFIG_H_NOTOKu   CONFIG_H_UNCERTAINu   check_config_hu   compileu
   RE_VERSIONu   _find_exe_versionu   get_versionsu   is_cygwingcc(    (    (    u>   /opt/alt/python33/lib64/python3.3/distutils/cygwinccompiler.pyu   <module>   s.   )º2+