-í
ì¶<c       sÑ     d  Z    d Z  d k 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  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.38.6.1 2002/03/17 19:47:39 mwh Exp $N(   s   *(   s   copy(   s	   sysconfig(   s   newer(   s	   CCompilers   gen_preprocess_optionss   gen_lib_options(   s   DistutilsExecErrors   CompileErrors   LibErrors	   LinkErrors   UnixCCompilerc    
  s¦  . t  Z 0 d Z 8 h  e d <d g d <d g d <d d g d <d g d <d	 d
 g d <e d <Z A e i d  d j o B d g e d <n J d d d d d d g Z K d Z L d Z	 M d Z
 N d Z O d Z Z Z S d d d d „ Z Z e e e e e d „ Z 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   ranlibi   s   darwins   .cs   .Cs   .ccs   .cxxs   .cpps   .ms   .os   .as   .sos   .dylibs   lib%s%si    c    s    S W t  i |  | | | ƒ d  S(   N(   s	   CCompilers   __init__s   selfs   verboses   dry_runs   force(   s   selfs   verboses   dry_runs   force(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   __init__S s   c    s=  Z b |  i t | | ƒ \ }
 } } d t | | ƒ } e |  i | } f | o g | i d | g ƒ n h | o i | | d *n j | o k | i | ƒ n q |  i p | t j p t | | ƒ ol r | o  s |  i t i i | ƒ ƒ n t y u |  i | ƒ Wn$ v t j
 o }	 w 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   pp_argss   pp_optss   msgs   _(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys
   preprocessZ s    !


*
 c    sš  z ƒ |  i | | | ƒ \ } } } … |  i | | ƒ \ }	 } ˆ t	 | | ƒ } ‰ | d g } Š | o ‹ d g | d *n Œ | o  | | d *n Ž | t j o  g  } n “ xÒ t t | ƒ ƒ D“ ]» } ” | | }
 |	 | } • | |
 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   pp_optss   objectss   srcs   skip_sourcess   objs   cc_argss   is   msg(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   compilez 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   msgs   output_filename(    (    s-   /usr/lib/python2.2/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   msg(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   linkÇ s2   !		


c    s   ü ý d | Sd  S(   Ns   -L(   s   dir(   s   selfs   dir(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   library_dir_optionü s   c    s\   ÿ t  i i t i d ƒ ƒ } | d j p
 | d j o d | Sn d | Sd  S(   Ns   CCs   gccs   g++s   -Wl,-Rs   -R(   s   oss   paths   basenames	   sysconfigs   get_config_vars   compilers   dir(   s   selfs   dirs   compiler(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   runtime_library_dir_optionÿ s   c    s   d | Sd  S(   Ns   -l(   s   lib(   s   selfs   lib(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   library_options   c    sý   xð | D]Þ } t i i | |  i | d d ƒƒ } t i i | |  i | d d ƒƒ } t i i | |  i | d d ƒƒ } $t i i | ƒ o %| SnC &t i i | ƒ o '| Sn" (t i i | ƒ o )| Sn q W-t Sd  S(   Ns   lib_types   shareds   dylibs   static(   s   dirss   dirs   oss   paths   joins   selfs   library_filenames   libs   shareds   dylibs   statics   existss   None(   s   selfs   dirss   libs   debugs   statics   dylibs   shareds   dir(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   find_library_files   
 	'''(   s   __name__s
   __module__s   compiler_types   Nones   executabless   syss   platforms   src_extensionss   obj_extensions   static_lib_extensions   shared_lib_extensions   dylib_lib_extensions   static_lib_formats   shared_lib_formats   dylib_lib_formats   __init__s
   preprocesss   compiles   create_static_libs   links   library_dir_options   runtime_library_dir_options   library_options   find_library_file(    (    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   UnixCCompiler. s&   		]					 ,!'5(   s   __doc__s   __revision__s   strings   res   oss   syss   typess   copys	   distutilss	   sysconfigs   distutils.dep_utils   newers   distutils.ccompilers	   CCompilers   gen_preprocess_optionss   gen_lib_optionss   distutils.errorss   DistutilsExecErrors   CompileErrors   LibErrors	   LinkErrors   UnixCCompiler(   s	   sysconfigs   __revision__s   DistutilsExecErrors   strings   gen_preprocess_optionss	   CCompilers   gen_lib_optionss	   LinkErrors   UnixCCompilers   syss   res   newers   CompileErrors   copys   oss   LibError(    (    s-   /usr/lib/python2.2/distutils/unixccompiler.pys   ? s   	'
"