-í
ì¶<c       s”     d  Z    d Z 	 d k Z d k Z d k Z 
 d k T d k l Z  d k l Z  d k	 T d k
 l Z  d e f d „  ƒ  YZ d S(	   sH   distutils.command.build_py

Implements the Distutils 'build_py' command.s9   $Id: build_py.py,v 1.34.6.1 2002/02/19 14:15:40 mwh Exp $N(   s   *(   s   glob(   s   Command(   s   convert_paths   build_pyc      s=   t  Z  d Z  d d d f d d d f d e d	 f d
 d d f d d d f g Z   d d g Z ! h  d d <Z $ d „  Z - d „  Z D d „  Z	 s d „  Z
 ž d „  Z ½ d „  Z È d „  Z Ø d „  Z d „  Z &d „  Z 0d „  Z 5d d „ Z Ed „  Z Ud „  Z cd „  Z |d  „  Z RS(!   Ns5   "build" pure Python modules (copy to build directory)s
   build-lib=s   ds   directory to "build" (copy) tos   compiles   cs   compile .py to .pycs
   no-compiles!   don't compile .py files [default]s	   optimize=s   Osl   also compile with optimization: -O1 for "python -O", -O2 for "python -OO", and -O0 to disable [default: -O0]s   forces   fs2   forcibly build everything (ignore file timestamps)c    s[   $ % t  |  _ & t  |  _ ' t  |  _ ( t  |  _ ) d |  _ * d |  _ + t  |  _ d  S(   Ni    (	   s   Nones   selfs	   build_libs
   py_moduless   packages   package_dirs   compiles   optimizes   force(   s   self(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   initialize_options$ s   c    sH  - . |  i d / d d f 0 d d f ƒ 4 |  i i |  _ 5 |  i i |  _ 6 h  |  _ 7 |  i i oC 8 x9 |  i i i ƒ  D8 ]" \ } } 9 t	 | ƒ |  i | <q Wn = t
 |  i ƒ t j	 o} > yK ? t |  i ƒ |  _ @ t o( d |  i j o
 d j n p t ‚ Wn( A t t f j
 o B t d ‚ n Xn d  S(   Ns   builds	   build_libs   forcei    i   s   optimize must be 0, 1, or 2(   s   selfs   set_undefined_optionss   distributions   packagess
   py_moduless   package_dirs   itemss   names   paths   convert_paths   types   optimizes   IntTypes   ints	   __debug__s   AssertionErrors
   ValueErrors   DistutilsOptionError(   s   selfs   names   path(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   finalize_options- s     6c    s   D a |  i o |  i o b d  Sn c |  i o |  i o d t d d ‚ n i |  i o j |  i ƒ  n l |  i ƒ  n |  i |  i d d ƒ ƒ d  S(   Ns5   build_py: supplying both 'packages' and 'py_modules' s   options is not alloweds   include_bytecodei    (   s   selfs
   py_moduless   packagess   DistutilsOptionErrors   build_moduless   build_packagess   byte_compiles   get_outputs(   s   self(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   runD s   c    sg  s v x t  i | d ƒ } z |  i o/ { | o | t t i i | ƒ Sn ~ d Sn€ g  }  xü  | oŠ ‚ y  ƒ |  i t  i | d ƒ } Wn7 „ t j
 o( … | i d | d ƒ † | d =n+ Xˆ | i d | ƒ ‰ t t i i | ƒ Sqg W’ |  i i d ƒ } “ | t j	 o ” | i d | ƒ n – | o — t t i i | ƒ Sn ™ d Sd S(   s½   Return the directory, relative to the top of the source
           distribution, where package 'package' should be found
           (at least according to the 'package_dir' option, if any).s   .s    i    iÿÿÿÿN(   s   strings   splits   packages   paths   selfs   package_dirs   applys   oss   joins   tails   pdirs   KeyErrors   inserts   gets   None(   s   selfs   packages   tails   paths   pdir(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   get_package_dirs s,   
	 
 	
c    sÛ   ž ¤ | d j o^ ¥ t i i | ƒ o ¦ t d | ‚ n ¨ t i i | ƒ o © t d d | ‚ n n ® | oU ¯ t i i | d ƒ } ° t i i	 | ƒ o ± | Sn ³ |  i d d | ƒ n ¸ d  Sd  S(   Ns    s%   package directory '%s' does not exists(   supposed package directory '%s' exists, s   but is not a directorys   __init__.pys!   package init file '%s' not found s   (or not a regular file)(   s   package_dirs   oss   paths   existss   DistutilsFileErrors   isdirs   packages   joins   init_pys   isfiles   selfs   warn(   s   selfs   packages   package_dirs   init_py(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   check_packagež s   
c    sJ   ½ ¾ t  i i | ƒ o% ¿ |  i d | | f ƒ Á d Sn Ã d Sd  S(   Ns!   file %s (for module %s) not foundi    i   (   s   oss   paths   isfiles   module_files   selfs   warns   module(   s   selfs   modules   module_file(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   check_module½ s   c 	   sõ   È É |  i | | ƒ Ê t t i i | d ƒ ƒ } Ë g  } Ì t i i
 |  i i ƒ } Î xŒ | DÎ ] } Ï t i i
 | ƒ } Ð | | j oB Ñ t i i t i i | ƒ ƒ d } Ò | i | | | f ƒ n Ô |  i d | ƒ qb WÕ | Sd  S(   Ns   *.pyi    s   excluding %s(   s   selfs   check_packages   packages   package_dirs   globs   oss   paths   joins   module_filess   moduless   abspaths   distributions   script_names   setup_scripts   fs   abs_fs   splitexts   basenames   modules   appends   debug_print(	   s   selfs   packages   package_dirs   fs   moduless   setup_scripts   module_filess   modules   abs_f(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   find_package_modulesÈ s   	
 	%c    s}  Ø à è h  }	 ë g  } ò xT|  i Dò ]F} ó t i | d ƒ } ô t i | d d !d ƒ } õ | d } ÷ y ø |	 | \ }
 } Wn1 ù t j
 o" ú |  i | ƒ }
 û d } n Xý | oS þ |  i | |
 ƒ } ÿ |
 d f |	 | < | o | i | d | f ƒ n n t i i |
 | d ƒ } |  i | | ƒ o
 q% n 
| i | | | f ƒ q% W| Sd S(   sÈ  Finds individually-specified Python modules, ie. those listed by
        module name in 'self.py_modules'.  Returns a list of tuples (package,
        module_base, filename): 'package' is a tuple of the path through
        package-space to the module; 'module_base' is the bare (no
        packages, no dots) module name, and 'filename' is the path to the
        ".py" file (relative to the distribution root) that implements the
        module.
        s   .i    iÿÿÿÿi   s   __init__s   .pyN(   s   packagess   moduless   selfs
   py_moduless   modules   strings   splits   paths   joins   packages   module_bases   package_dirs   checkeds   KeyErrors   get_package_dirs   check_packages   init_pys   appends   oss   module_files   check_module(   s   selfs   checkeds   packages   init_pys   moduless   modules   module_bases   paths   module_files   packagess   package_dir(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   find_modulesØ s.   		 	
!
c    s‹   |  i o |  i ƒ  } n[ g  } xK |  i D]= } |  i | ƒ } |  i | | ƒ } | i
 | ƒ q< W!| Sd S(   s4  Compute the list of all modules that will be built, whether
        they are specified one-module-at-a-time ('self.py_modules') or
        by whole packages ('self.packages').  Return a list of tuples
        (package, module, module_file), just like 'find_modules()' and
        'find_package_modules()' do.N(   s   selfs
   py_moduless   find_moduless   moduless   packagess   packages   get_package_dirs   package_dirs   find_package_moduless   ms   extend(   s   selfs   ms   package_dirs   moduless   package(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   find_all_moduless   	 	c    sQ   &(|  i ƒ  } )g  } *x% | D*] } +| i | d ƒ q% W-| Sd  S(   Niÿÿÿÿ(   s   selfs   find_all_moduless   moduless	   filenamess   modules   append(   s   selfs   moduless   modules	   filenames(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   get_source_files&s   	
 	c    s>   01| g t | ƒ | d g } 2t t i i | ƒ Sd  S(   Ns   .py(	   s	   build_dirs   lists   packages   modules   outfile_paths   applys   oss   paths   join(   s   selfs	   build_dirs   packages   modules   outfile_path(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   get_module_outfile0s   !i   c    sä   56|  i ƒ  } 7g  } 8x¸ | D8]­ \ } } } 9t i | d ƒ } :|  i	 |  i
 | | ƒ } ;| i | ƒ <| oT =|  i o >| i | d ƒ n ?|  i d j o @| i | d ƒ n n q% WB| Sd  S(   Ns   .s   ci    s   o(   s   selfs   find_all_moduless   moduless   outputss   packages   modules   module_files   strings   splits   get_module_outfiles	   build_libs   filenames   appends   include_bytecodes   compiles   optimize(   s   selfs   include_bytecodes   packages   outputss   moduless   module_files   modules   filename(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   get_outputs5s   	
 
 c    s»   EFt  | ƒ t j o Gt i | d ƒ } n- Ht  | ƒ t t f j o It d ‚ n O|  i	 |  i
 | | ƒ } Pt i i | ƒ } Q|  i | ƒ R|  i | | d d ƒSd  S(   Ns   .s:   'package' must be a string (dot-separated), list, or tuples   preserve_modei    (   s   types   packages
   StringTypes   strings   splits   ListTypes	   TupleTypes	   TypeErrors   selfs   get_module_outfiles	   build_libs   modules   outfiles   oss   paths   dirnames   dirs   mkpaths	   copy_files   module_file(   s   selfs   modules   module_files   packages   outfiles   dir(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   build_moduleEs   c    sL   UW|  i ƒ  } Xx0 | DX]% \ } } } ^|  i | | | ƒ q Wd  S(   N(   s   selfs   find_moduless   moduless   packages   modules   module_files   build_module(   s   selfs   moduless   module_files   modules   package(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   build_modulesUs   
 c    sœ   cex |  i De] } p|  i | ƒ } q|  i | | ƒ } uxN | Du]C \ } } } vt
 o | | j p t ‚ w|  i | | | ƒ qJ Wq Wd  S(   N(   s   selfs   packagess   packages   get_package_dirs   package_dirs   find_package_moduless   moduless   package_s   modules   module_files	   __debug__s   AssertionErrors   build_module(   s   selfs   package_s   packages   moduless   module_files   modules   package_dir(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   build_packagescs    	
 c    só   |}d k  l } ~|  i } | d t i j o €| t i } n †|  i oA ‡| | d d ˆd |  i	 ‰d | Šd |  i
 d |  i ƒn ‹|  i d j oD Œ| | d |  i d |  i	 Žd | d |  i
 d |  i ƒn d  S(	   N(   s   byte_compileiÿÿÿÿs   optimizei    s   forces   prefixs   verboses   dry_run(   s   distutils.utils   byte_compiles   selfs	   build_libs   prefixs   oss   seps   compiles   filess   forces   verboses   dry_runs   optimize(   s   selfs   filess   byte_compiles   prefix(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   byte_compile|s   		(   s   __name__s
   __module__s   descriptions   Nones   user_optionss   boolean_optionss   negative_opts   initialize_optionss   finalize_optionss   runs   get_package_dirs   check_packages   check_modules   find_package_moduless   find_moduless   find_all_moduless   get_source_filess   get_module_outfiles   get_outputss   build_modules   build_moduless   build_packagess   byte_compile(    (    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   build_py s(   		E
	/+9
(   s   __doc__s   __revision__s   syss   strings   oss   typess   globs   distutils.cores   Commands   distutils.errorss   distutils.utils   convert_paths   build_py(   s   syss   convert_paths   __revision__s   Commands   strings   build_pys   globs   os(    (    s0   /usr/lib/python2.2/distutils/command/build_py.pys   ? s   	

