Ζ
<Oφ9c       s   d  Z  d Z d k Z d k Z d k Z d k Td 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    
  s2  d Z  h  e d <d g d <d g d <d d g d <d g d <d	 d
 g d <e d <Z d d d d d g Z d Z d Z d Z d Z Z d d d d  Z	 e e e e e d  Z
 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   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    s  |  i t | |  \ } } } t | |  } |  i | }	 | o |	 i d | g  n | o | |	 d *n | o | i |  n |  i p | o t | |  oZ | o |  i t i i |   n y |  i |	  Wn t j
 o }
 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    sZ  |  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  nd |  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 o@ 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 |   y@ | 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	 Wt 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     Z
,!$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   