‡Æ
<Oö9c       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	 l
 Z
 l Z l Z  d k l Z l Z l Z l Z - d e
 f d	 „  ƒ  YZ d S(
   s9  distutils.unixccompiler

Contains the UnixCCompiler class, a subclass of CCompiler that handles
the "typical" Unix-style command-line C compiler:
  * macros defined with -Dname[=value]
  * macros undefined with -Uname
  * include search directories specified with -Idir
  * libraries specified with -lllib
  * library search directories specified with -Ldir
  * compile handled by 'cc' (or similar) executable with -c option:
    compiles .c to .o
  * link static library handled by 'ar' command (possibly with 'ranlib')
  * link shared library handled by 'cc -shared'
s<   $Id: unixccompiler.py,v 1.32 2000/09/27 02:08:14 gward Exp $N(   s   *(   s   copy(   s   newer(   s	   CCompilers   gen_preprocess_optionss   gen_lib_options(   s   DistutilsExecErrors   CompileErrors   LibErrors	   LinkErrors   UnixCCompilerc    
  se  - / d Z  7 h  e d <d g d <d g d <d d g d <d g d <d	 d
 g d <e d <Z F d d d d d g Z G d Z H d Z I d Z J d Z Z N d d d d „ Z	 U e e e e e d „ Z
 t e e e d e e d „ Z   e d d „ Z Á e e e e e d e e e d „	 Z ö d „  Z ù d „  Z ü d „  Z  d d „ Z RS(    Ns   unixs   preprocessors   ccs   compilers   compiler_sos   -shareds	   linker_sos
   linker_exes   ars   -crs   archivers   ranlibs   .cs   .Cs   .ccs   .cxxs   .cpps   .os   .as   .sos   lib%s%sc    s    N R t  i |  | | | ƒ d  S(   N(   s	   CCompilers   __init__s   selfs   verboses   dry_runs   force(   s   selfs   verboses   dry_runs   forces4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   __init__N s   i    c    s7  U ] |  i t | | ƒ \ } } } _ t | | ƒ } ` |  i | }	 a | o b |	 i d | g ƒ n c | o d | |	 d *n e | o f | i | ƒ n k |  i p | o t | | ƒ ol l | o  m |  i t i i | ƒ ƒ n n y o |  i |	 ƒ Wn$ p t j
 o }
 q t |
 ‚ n Xn d  S(   Ns   -oi    (   s   selfs   _fix_compile_argss   Nones   macross   include_dirss   _s   gen_preprocess_optionss   pp_optss   preprocessors   pp_argss   output_files   extends   extra_preargss   extra_postargss   forces   newers   sources   mkpaths   oss   paths   dirnames   spawns   DistutilsExecErrors   msgs   CompileError(   s   selfs   sources   output_files   macross   include_dirss   extra_preargss   extra_postargss   _s   pp_optss   pp_argss   msgs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys
   preprocessU s    !


$
 c    sœ  t } |  i | | | ƒ \ } } }  |  i | | ƒ \ } }	 ‚ t	 | | ƒ }
 ƒ |
 d g } „ | o … d g | d *n † | o ‡ | | d *n ˆ | t j o ‰ g  } n  xÔ t t | ƒ ƒ d  r» } Ž | | } | | }  |	 | o  |  i d | | f ƒ ns ’ |  i t i i | ƒ ƒ “ y, ” |  i |  i | | d | g | ƒ Wn$ — t j
 o } ˜ t | ‚ n XqÏ W› | Sd  S(   Ns   -cs   -gi    s   skipping %s (%s up-to-date)s   -o(   s   selfs   _fix_compile_argss
   output_dirs   macross   include_dirss   _prep_compiles   sourcess   objectss   skip_sourcess   gen_preprocess_optionss   pp_optss   cc_argss   debugs   extra_preargss   extra_postargss   Nones   ranges   lens   is   srcs   objs   announces   mkpaths   oss   paths   dirnames   spawns   compiler_sos   DistutilsExecErrors   msgs   CompileError(   s   selfs   sourcess
   output_dirs   macross   include_dirss   debugs   extra_preargss   extra_postargss   objectss   skip_sourcess   pp_optss   cc_argss   is   srcs   objs   msgs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   compilet s*   	!

 	,c    s    ¦ |  i | | ƒ \ } } ¨ |  i | d | ƒ} « |  i | | ƒ ož ¬ |  i t	 i
 i | ƒ ƒ ­ |  i |  i | g | |  i ƒ ¶ |  i oL · y ¸ |  i |  i | g ƒ Wn$ ¹ t j
 o } º t | ‚ n Xn n ¼ |  i d | ƒ d  S(   Ns
   output_dirs   skipping %s (up-to-date)(   s   selfs   _fix_object_argss   objectss
   output_dirs   library_filenames   output_libnames   output_filenames
   _need_links   mkpaths   oss   paths   dirnames   spawns   archivers   ranlibs   DistutilsExecErrors   msgs   LibErrors   announce(   s   selfs   objectss   output_libnames
   output_dirs   debugs   output_filenames   msgs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   create_static_lib  s   %	c    së  Á Ï |  i | | ƒ \ } } Ð |  i | | | ƒ \ } } } Ó t |  Ô | | Õ | ƒ } Ö t
 | ƒ t t f j o × t d ‚ n Ø | t j	 o Ù t i i | | ƒ } n Û |  i | | ƒ oÜ | |  i | d | g } Þ |	 o ß d g | d *n à |
 o á |
 | d *n â | o ã | i | ƒ n ä |  i t i i | ƒ ƒ å yI æ | t i j o ç |  i |  i | ƒ n é |  i |  i  | ƒ Wn$ ê t! j
 o } ë t# | ‚ n Xn í |  i$ d | ƒ d  S(   Ns%   'output_dir' must be a string or Nones   -os   -gi    s   skipping %s (up-to-date)(%   s   selfs   _fix_object_argss   objectss
   output_dirs   _fix_lib_argss	   librariess   library_dirss   runtime_library_dirss   gen_lib_optionss   lib_optss   types
   StringTypes   NoneTypes	   TypeErrors   Nones   oss   paths   joins   output_filenames
   _need_links   ld_argss   debugs   extra_preargss   extra_postargss   extends   mkpaths   dirnames   target_descs	   CCompilers
   EXECUTABLEs   spawns
   linker_exes	   linker_sos   DistutilsExecErrors   msgs	   LinkErrors   announce(   s   selfs   target_descs   objectss   output_filenames
   output_dirs	   librariess   library_dirss   runtime_library_dirss   export_symbolss   debugs   extra_preargss   extra_postargss
   build_temps   lib_optss   ld_argss   msgs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   linkÁ s2   !		


c    s   ö ÷ d | Sd  S(   Ns   -L(   s   dir(   s   selfs   dirs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   library_dir_optionö s   c    s   ù ú d | Sd  S(   Ns   -R(   s   dir(   s   selfs   dirs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   runtime_library_dir_optionù s   c    s   ü ý d | Sd  S(   Ns   -l(   s   lib(   s   selfs   libs4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   library_optionü s   c    s·    xª | d r– } t i i | |  i | d d ƒƒ } t i i | |  i | d d ƒƒ } t i i
 | ƒ o | Sn" t i i
 | ƒ o | Sn q Wt Sd  S(   Ni    s   lib_types   shareds   static(   s   dirss   dirs   oss   paths   joins   selfs   library_filenames   libs   shareds   statics   existss   None(   s   selfs   dirss   libs   debugs   dirs   shareds   statics4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   find_library_file s    	''(   s   compiler_types   Nones   executabless   src_extensionss   obj_extensions   static_lib_extensions   shared_lib_extensions   static_lib_formats   shared_lib_formats   __init__s
   preprocesss   compiles   create_static_libs   links   library_dir_options   runtime_library_dir_options   library_options   find_library_file(    s4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   UnixCCompiler- s    	]			,!'5(   s   __doc__s   __revision__s   strings   res   oss   typess   copys   distutils.dep_utils   newers   distutils.ccompilers	   CCompilers   gen_preprocess_optionss   gen_lib_optionss   distutils.errorss   DistutilsExecErrors   CompileErrors   LibErrors	   LinkErrors   UnixCCompiler(    s4   /mit/python/lib/python2.0/distutils/unixccompiler.pys   ? s   	
"