-í
ç¶<c       s@   d  Z  d k Z e i ƒ  Z d g Z d „  Z e e d „ Z d S(   s{   Routine to "compile" a .py file to a .pyc (or .pyo) file.

This module has intimate knowledge of the format of .pyc files.
Ns   compilec    sl   |  i t | d @ƒ ƒ |  i t | d ?d @ƒ ƒ |  i t | d ?d @ƒ ƒ |  i t | d ?d @ƒ ƒ d S(   s>   Internal; write a 32-bit int to a file in little-endian order.iÿ   i   i   i   N(   s   fs   writes   chrs   x(   s   fs   x(    (    s    /usr/lib/python2.2/py_compile.pys   wr_long s
     c    s9  d k  } d k } d k } t |  ƒ }	 y# t | i |	 i ƒ  ƒ d ƒ } Wn, t
 j
 o  t | i |  ƒ d ƒ } n X|	 i ƒ  } | i d d ƒ } | i d d ƒ } |	 i ƒ  | o | d d j o | d } n y  | i | | p |  d ƒ } Wnu t j
 oi } d k }
 d k } |
 i t | ƒ } x5 | D]- } | i i | i d d	 | p |  ƒ ƒ q7Wd Sn X| o |  t o d
 p d } n t | d ƒ } | i d ƒ t | | ƒ | i  | | ƒ | i! ƒ  | i" d d ƒ | i t# ƒ | i ƒ  | i$ d j o& d k% } | i& | ƒ i' d d ƒ n d S(   sˆ  Byte-compile one Python source file to Python bytecode.

    Arguments:

    file:  source filename
    cfile: target filename; defaults to source with 'c' or 'o' appended
           ('c' normally, 'o' in optimizing mode, giving .pyc or .pyo)
    dfile: purported filename; defaults to source (this is the filename
           that will show up in error messages)

    Note that it isn't necessary to byte-compile Python modules for
    execution efficiency -- Python itself byte-compiles a module when
    it is loaded, and if it can, writes out the bytecode to the
    corresponding .pyc (or .pyo) file.

    However, if a Python installation is shared between users, it is a
    good idea to byte-compile all modules upon installation, since
    other users may not be able to write in the source directories,
    and thus they won't be able to write the .pyc/.pyo file, and then
    they would be byte-compiling every module each time it is loaded.
    This can slow down program start-up considerably.

    See compileall.py for a script/module that uses this module to
    byte-compile all installed files (or all files in selected
    directories).

    Ni   s   
s   
s   iÿÿÿÿs   execs   File "<string>"s	   File "%s"s   cs   os   wbs       i    s   macs   Pyths   PYC ((   s   oss   marshals   __builtin__s   opens   files   fs   longs   fstats   filenos	   timestamps   AttributeErrors   stats   reads
   codestrings   replaces   closes   compiles   dfiles
   codeobjects   SyntaxErrors   details	   tracebacks   syss   format_exception_onlys   liness   lines   stderrs   writes   cfiles	   __debug__s   fcs   wr_longs   dumps   flushs   seeks   MAGICs   names   macfss   FSSpecs   SetCreatorType(   s   files   cfiles   dfiles	   timestamps   __builtin__s   syss   fcs
   codeobjects   lines   fs	   tracebacks   liness   details
   codestrings   macfss   oss   marshal(    (    s    /usr/lib/python2.2/py_compile.pys   compile sH     #
  	

	(   s   __doc__s   imps	   get_magics   MAGICs   __all__s   wr_longs   Nones   compile(   s   compiles   imps   MAGICs   __all__s   wr_long(    (    s    /usr/lib/python2.2/py_compile.pys   ? s
   			