
    IriX                        d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
Z
d dlZd dlZd dlmZ ddlmZ ddlmZ ddZddZej        dd            ZddZ	 	 	 dd dZdS )!    )annotationsN)
ModuleType   )get_cache_manager   )knobsnamestrsrcsrcdirlibrary_dirs	list[str]include_dirs	librariesccflagsreturnc                   t           j        j        x}r || |||||          S t          j        d          }t
          j                            |d                    | |                    }	t
          j	        
                    d          }
|
?t          j        d          }t          j        d          }||n|}
|
t          d          t          j                    }|dk    rd	}t          j        |
          d         }t           j        j        }|||g|z   }|
|ddddd|	g}|d |D             z  }|d |D             z  }|d |D             z  }|                    |           t%          j        |t$          j                   |	S )N
EXT_SUFFIXz{name}{suffix})r	   suffixCCclanggcczeFailed to find C compiler. Please specify via CC environment variable or set triton.knobs.build.impl.posix_localposix_prefix)schemeincludez-O3z-sharedz-fPICz
-Wno-psabiz-oc                ,    g | ]}t          |          S  )_library_flag).0libs     l/var/www/html/bestrading.cuttalo.com/models/btc_v9/venv/lib/python3.11/site-packages/triton/runtime/build.py
<listcomp>z_build.<locals>.<listcomp>,   s     777c}S!!777    c                    g | ]}d | S )z-Lr   r    dirs     r"   r#   z_build.<locals>.<listcomp>-   s    222czCzz222r$   c                    g | ]	}|d| 
S )Nz-Ir   r&   s     r"   r#   z_build.<locals>.<listcomp>.   s    EEEcS_zCzz___r$   )stdout)r   buildimpl	sysconfigget_config_varospathjoinformatenvirongetshutilwhichRuntimeErrorget_default_scheme	get_pathsbackend_dirsextend
subprocess
check_callDEVNULL)r	   r   r   r   r   r   r   r+   r   soccr   r   r   py_include_dircustom_backend_dirscc_cmds                    r"   _buildrC      s   {t NtD#v|\9MMM%l33F	f.5545OO	P	PB			B	zW%%l5!!OSS:wy y y)++F (777	BN+26>"P<O"PPL#ui,bIF
77Y7777F
22\2222F
EE\EEEEF
MM'&);<<<<Ir$   r!   c                j    t          j        d|           s|                     d          rd|  S d|  S )Nz\.so(\.\d+)*$z.az-l:z-l)researchendswith)r!   s    r"   r   r   4   sB    	y!3'' 3<<+=+= S{{::r$   c                 x    ddl m} m}m} d                     |              |            g |                      S )Nr   machinesystemarchitecture,)platformrJ   rK   rL   r0   rI   s      r"   platform_keyrO   ;   sN    666666666688WWYY:<<>>:;;;r$   r/   r   c                    t           j                            | |          }|r|j        st	          d|  d|           t           j                            |          }|j                            |           |S )NzFailed to load newly compiled z from )	importlibutilspec_from_file_locationloaderr6   module_from_specexec_module)r	   r/   specmods       r"   _load_module_from_pathrY   A   s{    >11$==D Pt{ PNDNNNNOOO
.
)
)$
/
/CKC   Jr$   list[str] | Nonec           
        t          j        | t                      z                       d                                                    }t          |          }t          j        d          }|                    | |           }	|	Z	 t          ||	          S # t          t          f$ r5 t          j        t                    }
|
                    d| d           Y nw xY wt!          j                    5 }t$          j                            ||dz             }t+          |d          5 }|                    |            d d d            n# 1 swxY w Y   t/          ||||pg |pg |pg |pg           }t+          |d          5 }|                    |                                | | d	          }	d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   t          ||	          S )
Nzutf-8r   z$Triton cache error: compiled module z.so could not be loadedz.cwrbT)binary)hashlibsha256rO   encode	hexdigestr   r,   r-   get_filerY   r6   ImportErrorlogging	getLogger__name__warningtempfileTemporaryDirectoryr.   r/   r0   openwriterC   putread)r   r	   r   r   r   r   keycacher   
cache_pathlogtmpdirsrc_pathfr>   s                  r"   compile_module_from_srcrv   J   s    .#.66w??
@
@
J
J
L
LCc""E%l33F4 1 1 122J	^)$
;;;k* 	^ 	^ 	^#H--CKK\t\\\]]]]]	^ 
	$	&	& M&7<<t44(C   	AGGCLLL	 	 	 	 	 	 	 	 	 	 	 	 	 	 	D(FL,>B@RPRT]Tcacelerprss"d^^ 	Mq16688->f->->tLLJ	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	M 	MM M M M M M M M M M M M M M M "$
333sm   B ACC44G(E
>G
E	GE	0G/F=1G=G	GG	GGG)r	   r
   r   r
   r   r
   r   r   r   r   r   r   r   r   r   r
   )r!   r
   r   r
   )r   r
   )r	   r
   r/   r
   r   r   )NNNN)r   r
   r	   r
   r   rZ   r   rZ   r   rZ   r   rZ   r   r   )
__future__r   	functoolsr_   importlib.utilrQ   re   r.   r4   r;   r,   ri   rE   typesr   rp   r    r   rC   r   	lru_cacherO   rY   rv   r   r$   r"   <module>r}      sD   " " " " " "           				           				       $ $ $ $ $ $         @    < < < <
    SWae8<4 4 4 4 4 4 4r$   