o 0iO @ s d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ d dl m Z g dZdddZ dddddd ddZ dddddd d dZ dddZdd Zedkrgee Zee dS dS ) N)partial)Path)compile_dircompile_filecompile_pathc c s |dk rt | tjrt| } |std| zt| }W n ty6 |dk r2td| g }Y nw | |D ]>}|dkrDq=tj | |}tj |sU|V q=|dkr{|tjkr{|tj kr{tj |r{tj |s{t||d |dE d H q=d S )N zListing {!r}...zCan't list {!r}__pycache__r ) maxlevelsquiet) isinstanceosPathLikefspathprintformatlistdirOSErrorsortpathjoinisdircurdirpardirislink _walk_dir)dirr r namesnamefullname r 1/opt/alt/python310/lib64/python3.10/compileall.pyr s: r Fr stripdir prependdir limit_sl_desthardlink_dupesc C s\ d }|d ur| d us|d urt d|d ur| } |}d }|dk r%t d|dkrFddlm} z| W n ty? d}Y nw ddlm} |d u rNt }t| ||d}d}|dkr|d ur|pbd }||d #}| t t||||||| | ||| d |}t|dd}W d |S 1 sw Y |S |D ]}t|||||||| | ||| dsd }q|S )NPDestination dir (ddir) cannot be used in combination with stripdir or prependdirr z%workers must be greater or equal to 0r )_check_system_limits)ProcessPoolExecutor)r r T)Zmax_workers)ddirforcerxr legacyoptimizeinvalidation_moder$ r% r&