Mini Kabibi Habibi
�
���dc @ s� d Z d d l Z d d l Z d d l Z d d l Z d d l Z d d d g Z d d d d d d � Z d d d d d � Z d
d d d d � Z
d � Z d
� Z e
d k r� e e � � Z e j e � n d S( s� Module/script to byte-compile all .py files to .pyc (or .pyo) files.
When called as a script with arguments, this compiles the directories
given as arguments recursively; the -l option prevents it from
recursing into directories.
Without arguments, if compiles all modules on sys.path, without
recursing into subdirectories. (Even though it should do so for
packages -- for now, you'll have to deal with packages separately.)
See module py_compile for details of the actual byte-compilation.
i����Nt compile_dirt compile_filet compile_pathi
i c C s� | s d G| Gd GHn y t j | � } Wn# t j k
rN d G| GHg } n X| j � d } x9| D]1} t j j | | � } t j d k r� t j j d � d k r� | j
d d � } n | d
k r� t j j | | � }
n d
}
t j j | � st
| | | | | � s�d } q�qf | d k rf | t j k rf | t j k rf t j j | � rf t j j | � rf t | | d |
| | | � s�d } q�qf qf W| S( s� Byte-compile all modules in the given directory tree.
Arguments (only dir is required):
dir: the directory to byte-compile
maxlevels: maximum recursion level (default 10)
ddir: the directory that will be prepended to the path to the
file as it is compiled into each byte-code file.
force: if 1, force compilation, even if timestamps are up-to-date
quiet: if 1, be quiet during compilation
t Listings ...s
Can't listi t win32t GCCi s \t /N( t ost listdirt errort sortt patht joint syst platformt versiont findt replacet Nonet isdirR t curdirt pardirt islinkR ( t dirt maxlevelst ddirt forcet rxt quiett namest successt namet fullnamet dfile( ( s/ D:/a/msys64/mingw64/lib/python2.7/compileall.pyR s6
' c C s� d } t j j | � } | d k r<