£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

f@w  c               @   s  d  Z  d d l Z d d l Z d d l Z d d l Z d d l m Z m Z m Z m	 Z	 m
 Z
 d d l m Z m Z m Z d d l m Z d d l m Z d d l Z e j Z e j Z e j Z e j Z e j e j e j e j f Z  e j! d k oe j" d' k Z# e# r!d
 Z$ d Z% d Z& n d Z$ d Z% d Z& i d d 6d d 6d d 6Z' Gd d   d  Z( Gd d   d  Z) d d   Z* d d   Z+ d d   Z, d d    Z- d d! d"  Z. e*   Z/ e/ d# k  re d$ e/   n  Gd% d&   d& e  Z0 d S((   u  distutils.msvc9compiler

Contains MSVCCompiler, an implementation of the abstract CCompiler class
for the Microsoft Visual Studio 2008.

The module is compatible with VS 2005 and VS 2008. You can find legacy support
for older versions of VS in distutils.msvccompiler.
i    N(   u   DistutilsExecErroru   DistutilsPlatformErroru   CompileErroru   LibErroru	   LinkError(   u	   CCompileru   gen_preprocess_optionsu   gen_lib_options(   u   log(   u   get_platformu   win32i   i    u1   Software\Wow6432Node\Microsoft\VisualStudio\%0.1fu5   Software\Wow6432Node\Microsoft\Microsoft SDKs\Windowsu,   Software\Wow6432Node\Microsoft\.NETFrameworku%   Software\Microsoft\VisualStudio\%0.1fu)   Software\Microsoft\Microsoft SDKs\Windowsu    Software\Microsoft\.NETFrameworku   x86u   amd64u	   win-amd64u   ia64u   win-ia64c             B   sz   |  Ee  Z d  Z d Z d d   Z e e  Z d d   Z e e  Z d d   Z e e  Z d d	   Z e	 e  Z d
 S(   u   Regu2   Helper class to read values from the registry
    c             C   sM   x: t  D]2 } |  j | |  } | r | | k r | | Sq Wt |   d  S(   N(   u   HKEYSu   read_valuesu   KeyError(   u   clsu   pathu   keyu   baseu   d(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu	   get_valueA   s
    u   Reg.get_valuec             C   s   y t  | |  } Wn t k
 r+ d SYn Xg  } d } xC y t | |  } Wn t k
 rc PYn X| j |  | d 7} q; | S(   u   Return list of registry keys.i    i   N(   u   RegOpenKeyExu   RegErroru   Noneu
   RegEnumKeyu   append(   u   clsu   baseu   keyu   handleu   Lu   iu   k(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu	   read_keysI   s    	u   Reg.read_keysc       	      C   s   y t  | |  } Wn t k
 r+ d SYn Xi  } d } xg y t | |  \ } } } Wn t k
 rl PYn X| j   } |  j |  | |  j |  <| d 7} q; | S(   u`   Return dict of registry keys and values.

        All names are converted to lowercase.
        i    i   N(   u   RegOpenKeyExu   RegErroru   Noneu   RegEnumValueu   loweru   convert_mbcs(	   u   clsu   baseu   keyu   handleu   du   iu   nameu   valueu   type(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   read_values[   s    	u   Reg.read_valuesc             C   sJ   t  |  d d   } | d  k	 rF y | d  }  WqF t k
 rB YqF Xn  |  S(   Nu   decodeu   mbcs(   u   getattru   Noneu   UnicodeError(   u   su   dec(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   convert_mbcsq   s    u   Reg.convert_mbcsN(
   u   __name__u
   __module__u   __qualname__u   __doc__u	   get_valueu   classmethodu	   read_keysu   read_valuesu   convert_mbcsu   staticmethod(   u
   __locals__(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   Reg=   s   u   Regc             B   sD   |  Ee  Z d  Z d d   Z d d   Z d d   Z d d   Z d	 S(
   u   MacroExpanderc             C   s'   i  |  _  t | |  _ |  j |  d  S(   N(   u   macrosu   VS_BASEu   vsbaseu   load_macros(   u   selfu   version(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   __init__}   s    	u   MacroExpander.__init__c             C   s!   t  j | |  |  j d | <d  S(   Nu   $(%s)(   u   Regu	   get_valueu   macros(   u   selfu   macrou   pathu   key(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu	   set_macro   s    u   MacroExpander.set_macroc             C   sT  |  j  d |  j d d  |  j  d |  j d d  |  j  d t d  y2 | d k rl |  j  d	 t d
  n t d
   Wn t k
 r t d   Yn X| d k r |  j  d |  j d  |  j  d t d  n~ d } xu t D]m } y t | |  } Wn t k
 rw Yn Xt	 | d  } t
 j | d | | f  } | d |  j d <q Wd  S(   Nu   VCInstallDiru	   \Setup\VCu
   productdiru   VSInstallDiru	   \Setup\VSu   FrameworkDiru   installrootg       @u   FrameworkSDKDiru   sdkinstallrootv2.0u  Python was built with Visual Studio 2008;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2008 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.g      "@u   FrameworkVersionu   clr versionu   WindowsSdkDiru   currentinstallfolderu.   Software\Microsoft\NET Framework Setup\Producti    u   %s\%su   versionu   $(FrameworkVersion)(   u	   set_macrou   vsbaseu   NET_BASEu   KeyErroru   DistutilsPlatformErroru   WINSDK_BASEu   HKEYSu   RegOpenKeyExu   RegErroru
   RegEnumKeyu   Regu	   get_valueu   macros(   u   selfu   versionu   pu   baseu   hu   keyu   d(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   load_macros   s.    
u   MacroExpander.load_macrosc             C   s6   x/ |  j  j   D] \ } } | j | |  } q W| S(   N(   u   macrosu   itemsu   replace(   u   selfu   su   ku   v(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   sub   s    u   MacroExpander.subN(   u   __name__u
   __module__u   __qualname__u   __init__u	   set_macrou   load_macrosu   sub(   u
   __locals__(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   MacroExpander{   s   u   MacroExpanderc              C   s   d }  t  j j |   } | d
 k r( d S| t |   } t  j | d  j d d  \ } } t | d d   d } t | d d   d } | d k r d	 } n  | d k r | | Sd S(   u   Return the version of MSVC that was used to build Python.

    For Python 2.3 and up, the version number is included in
    sys.version.  For earlier versions, assume the compiler is MSVC 6.
    u   MSC v.i   i   Nu    i   i   g      $@i    ii(   u   sysu   versionu   findu   lenu   splitu   intu   None(   u   prefixu   iu   su   restu   majorVersionu   minorVersion(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   get_build_version   s    %	u   get_build_versionc             C   sI   g  } x< |  D]4 } t  j j |  } | | k r | j |  q q W| S(   un   Return a list of normalized paths with duplicates removed.

    The current order of paths is maintained.
    (   u   osu   pathu   normpathu   append(   u   pathsu   reduced_pathsu   pu   np(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   normalize_and_reduce_paths   s    u   normalize_and_reduce_pathsc             C   s[   |  j  t j  } g  } x* | D]" } | | k r | j |  q q Wt j j |  } | S(   u8   Remove duplicate values of an environment variable.
    (   u   splitu   osu   pathsepu   appendu   join(   u   variableu   oldListu   newListu   iu   newVariable(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   removeDuplicates   s    u   removeDuplicatesc             C   sa  t  |  } y t j d | d  } Wn% t k
 rK t j d  d } Yn X| sf t j j	 |  rd |  } t j
 j | d  } | r t j j	 |  r t j j | t j t j d  } t j j |  } t j j	 |  st j d |  d Sqt j d |  n  | s%t j d  d St j j | d	  } t j j |  rP| St j d
  d S(   u   Find the vcvarsall.bat file

    At first it tries to find the productdir of VS 2008 in the registry. If
    that fails it falls back to the VS90COMNTOOLS env var.
    u   %s\Setup\VCu
   productdiru%   Unable to find productdir in registryu   VS%0.f0COMNTOOLSu   VCu   %s is not a valid directoryu    Env var %s is not set or invalidu   No productdir foundu   vcvarsall.batu   Unable to find vcvarsall.batN(   u   VS_BASEu   Regu	   get_valueu   KeyErroru   logu   debugu   Noneu   osu   pathu   isdiru   environu   getu   joinu   pardiru   abspathu   isfile(   u   versionu   vsbaseu
   productdiru   toolskeyu   toolsdiru	   vcvarsall(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   find_vcvarsall   s2    

!u   find_vcvarsallc             C   s  t  |   } t d  } i  } | d k r9 t d   n  t j d | |   t j d | | f d t j d	 t j } z | j	   \ } } | j
   d
 k r t | j d    n  | j d  } x | j d  D] } t j |  } d | k r q n  | j   } | j d d  \ }	 }
 |	 j   }	 |	 | k r |
 j t j  r]|
 d d  }
 n  t |
  | |	 <q q WWd | j j   | j j   Xt |  t |  k rt t t | j       n  | S(   uD   Launch vcvarsall.bat and read the settings from its environment
    u   includeu   libu   libpathu   pathu   Unable to find vcvarsall.batu'   Calling 'vcvarsall.bat %s' (version=%s)u   "%s" %s & setu   stdoutu   stderri    u   mbcsu   
u   =i   N(   u   includeu   libu   libpathu   pathi(   u   find_vcvarsallu   setu   Noneu   DistutilsPlatformErroru   logu   debugu
   subprocessu   Popenu   PIPEu   communicateu   waitu   decodeu   splitu   Regu   convert_mbcsu   stripu   loweru   endswithu   osu   pathsepu   removeDuplicatesu   stdoutu   closeu   stderru   lenu
   ValueErroru   stru   listu   keys(   u   versionu   archu	   vcvarsallu   interestingu   resultu   popenu   stdoutu   stderru   lineu   keyu   value(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   query_vcvarsall   s<    	!u   query_vcvarsallg       @u(   VC %0.1f is not supported by this modulec             B   s  |  Ee  Z d  Z d Z d Z i  Z d g Z d d d g Z d g Z d g Z	 e e e e	 Z
 d	 Z d
 Z d Z d Z d Z Z d Z d d d d d  Z d- d d  Z d d d d  Z d- d- d- d d- d- d- d d  Z d- d d- d d  Z d- d- d- d- d- d d- d- d- d- d d 
 Z d d   Z d d    Z d! d"   Z d# d$   Z d% d&   Z d' d(   Z d d) d*  Z d+ d,   Z  d- S(.   u   MSVCCompileruw   Concrete class that implements an interface to Microsoft Visual C++,
       as defined by the CCompiler abstract class.u   msvcu   .cu   .ccu   .cppu   .cxxu   .rcu   .mcu   .resu   .obju   .libu   .dllu   %s%su   .exei    c             C   sP   t  j |  | | |  t |  _ d |  _ g  |  _ d  |  _ d  |  _ d |  _
 d  S(   Nu   Software\Microsoft\VisualStudioF(   u	   CCompileru   __init__u   VERSIONu   _MSVCCompiler__versionu   _MSVCCompiler__rootu   _MSVCCompiler__pathsu   Noneu	   plat_nameu   _MSVCCompiler__archu   Falseu   initialized(   u   selfu   verboseu   dry_runu   force(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   __init__G  s    					u   MSVCCompiler.__init__c             C   s  | d  k r t   } n  d$ } | | k r@ t d | f   n  d t j k r d t j k r |  j d  r d |  _ d |  _ d	 |  _ d
 |  _	 d |  _
 n| t   k s | d k r t | } n t t   d t | } t t |  } | d j t j  |  _ | d t j d <| d t j d <t |  j  d k rSt d |  j   n  |  j d  |  _ |  j d  |  _ |  j d	  |  _ |  j d
  |  _	 |  j d  |  _
 y5 x. t j d j d  D] } |  j j |  qWWn t k
 rYn Xt |  j  |  _ d j |  j  t j d <d  |  _ |  j d k rpd d d d d g |  _ d d d d d d g |  _ n9 d d d d d d g |  _ d d d d d d d g |  _ d d d g |  _ |  j d  k rd d d! d" d# g |  _ n  d g |  _ d% |  _  d  S(&   Nu   win32u	   win-amd64u   win-ia64u   --plat-name must be one of %su   DISTUTILS_USE_SDKu   MSSdku   cl.exeu   link.exeu   lib.exeu   rc.exeu   mc.exeu   _u   pathu   libu   includei    ux   Python was built with %s, and extensions need to be built with the same version of the compiler, but it isn't installed.u   ;u   x86u   /nologou   /Oxu   /MDu   /W3u   /DNDEBUGu   /Odu   /MDdu   /Z7u   /D_DEBUGu   /GS-u   /DLLu   /INCREMENTAL:NOi   u   /INCREMENTAL:nou   /DEBUGu	   /pdb:None(   u   win32u	   win-amd64u   win-ia64T(!   u   Noneu   get_platformu   DistutilsPlatformErroru   osu   environu   find_exeu   ccu   linkeru   libu   rcu   mcu   PLAT_TO_VCVARSu   query_vcvarsallu   VERSIONu   splitu   pathsepu   _MSVCCompiler__pathsu   lenu   _MSVCCompiler__productu   appendu   KeyErroru   normalize_and_reduce_pathsu   joinu   preprocess_optionsu   _MSVCCompiler__archu   compile_optionsu   compile_options_debugu   ldflags_sharedu   _MSVCCompiler__versionu   ldflags_shared_debugu   ldflags_staticu   Trueu   initialized(   u   selfu	   plat_nameu   ok_platsu	   plat_specu   vc_envu   p(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu
   initializeR  sd    -					u   MSVCCompiler.initializeu    c             C   sD  | d  k r d } n  g  } x"| D]} t j j |  \ } } t j j |  d } | t j j |  d   } | |  j k r t d |   n  | r t j j |  } n  | |  j	 k r | j
 t j j | | |  j   q" | |  j k r| j
 t j j | | |  j   q" | j
 t j j | | |  j   q" W| S(   Nu    i   u   Don't know how to compile %s(   u   Noneu   osu   pathu   splitextu
   splitdriveu   isabsu   src_extensionsu   CompileErroru   basenameu   _rc_extensionsu   appendu   joinu   res_extensionu   _mc_extensionsu   obj_extension(   u   selfu   source_filenamesu	   strip_diru
   output_diru	   obj_namesu   src_nameu   baseu   ext(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   object_filenames  s(     	u   MSVCCompiler.object_filenamesc	             C   s  |  j  s |  j   n  |  j | | | | | |  }	 |	 \ } }
 } } } | pR g  } | j d  | r{ | j |  j  n | j |  j  x|
 D]} y | | \ } } Wn t k
 r w Yn X| r t j	 j
 |  } n  | |  j k r d | } n| |  j k rd | } n| |  j k r| } d | } y) |  j |  j g | | g | g  Wq t k
 r} z t |   WYd  d  } ~ Xq Xq n| |  j k rt j	 j |  } t j	 j |  } y |  j |  j g d | d | g | g  t j	 j t j	 j |   \ } } t j	 j | | d  } |  j |  j g d | g | g  Wq t k
 r} z t |   WYd  d  } ~ Xq Xq n t d | | f   d	 | } y- |  j |  j g | | | | g |  Wq t k
 r} z t |   WYd  d  } ~ Xq Xq W|
 S(
   Nu   /cu   /Tcu   /Tpu   /fou   -hu   -ru   .rcu"   Don't know how to compile %s to %su   /Fo(   u   initializedu
   initializeu   _setup_compileu   appendu   extendu   compile_options_debugu   compile_optionsu   KeyErroru   osu   pathu   abspathu   _c_extensionsu   _cpp_extensionsu   _rc_extensionsu   spawnu   rcu   DistutilsExecErroru   CompileErroru   _mc_extensionsu   dirnameu   mcu   splitextu   basenameu   joinu   cc(   u   selfu   sourcesu
   output_diru   macrosu   include_dirsu   debugu   extra_preargsu   extra_postargsu   dependsu   compile_infou   objectsu   pp_optsu   buildu   compile_optsu   obju   srcu   extu	   input_optu
   output_optu   msgu   h_diru   rc_diru   baseu   _u   rc_file(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   compile  sj    	
#$$#
#u   MSVCCompiler.compilec       	      C   s   |  j  s |  j   n  |  j | |  \ } } |  j | d | } |  j | |  r | d | g } | ro n  y |  j |  j g |  Wq t k
 r } z t |   WYd  d  } ~ Xq Xn t	 j
 d |  d  S(   Nu
   output_diru   /OUT:u   skipping %s (up-to-date)(   u   initializedu
   initializeu   _fix_object_argsu   library_filenameu
   _need_linku   spawnu   libu   DistutilsExecErroru   LibErroru   logu   debug(	   u   selfu   objectsu   output_libnameu
   output_diru   debugu   target_langu   output_filenameu   lib_argsu   msg(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   create_static_lib  s    		"u   MSVCCompiler.create_static_libc             C   s.  |  j  s |  j   n  |  j | |  \ } } |  j | | |  } | \ } } } | rr |  j d t |   n  t |  | | |  } | d  k	 r t j	 j
 | |  } n  |  j | |  r| t j k r |	 r |  j d d   } q|  j d d   } n |	 r|  j } n	 |  j } g  } x% | p+g  D] } | j d |  q,W| | | | d | g } t j	 j | d  } | d  k	 rt j	 j t j	 j |   \ } } t j	 j
 | |  j |   } | j d |  n  |  j | | |  |
 r|
 | d  d  <n  | r| j |  n  |  j t j	 j |   y |  j |  j g |  Wn1 t k
 r} z t |   WYd  d  } ~ Xn X|  j | |  } | d  k	 r*| \ } } d | | f } y  |  j d d	 d
 | | g  Wqt k
 r} z t |   WYd  d  } ~ XqXq*n t j d |  d  S(   Nu5   I don't know what to do with 'runtime_library_dirs': i   u   /EXPORT:u   /OUT:i    u   /IMPLIB:u   -outputresource:%s;%su   mt.exeu   -nologou	   -manifestu   skipping %s (up-to-date)(   u   initializedu
   initializeu   _fix_object_argsu   _fix_lib_argsu   warnu   stru   gen_lib_optionsu   Noneu   osu   pathu   joinu
   _need_linku	   CCompileru
   EXECUTABLEu   ldflags_shared_debugu   ldflags_sharedu   appendu   dirnameu   splitextu   basenameu   library_filenameu   manifest_setup_ldargsu   extendu   mkpathu   spawnu   linkeru   DistutilsExecErroru	   LinkErroru   manifest_get_embed_infou   logu   debug(   u   selfu   target_descu   objectsu   output_filenameu
   output_diru	   librariesu   library_dirsu   runtime_library_dirsu   export_symbolsu   debugu   extra_preargsu   extra_postargsu
   build_tempu   target_langu
   fixed_argsu   lib_optsu   ldflagsu   export_optsu   symu   ld_argsu   dll_nameu   dll_extu   implib_fileu   msgu   mfinfou
   mffilenameu   mfidu   out_arg(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   link5  sl    							%u   MSVCCompiler.linkc             C   s:   t  j j | t  j j |  d  } | j d |  d  S(   Nu	   .manifestu   /MANIFESTFILE:(   u   osu   pathu   joinu   basenameu   append(   u   selfu   output_filenameu
   build_tempu   ld_argsu   temp_manifest(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   manifest_setup_ldargs  s    	u"   MSVCCompiler.manifest_setup_ldargsc             C   s   x; | D]/ } | j  d  r | j d d  d } Pq q Wd  S| t j k rV d } n d } |  j |  } | d  k r{ d  S| | f S(   Nu   /MANIFESTFILE:u   :i   i   (   u
   startswithu   splitu   Noneu	   CCompileru
   EXECUTABLEu   _remove_visual_c_ref(   u   selfu   target_descu   ld_argsu   argu   temp_manifestu   mfid(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   manifest_get_embed_info  s    	u$   MSVCCompiler.manifest_get_embed_infoc             C   s   y t  |  } z | j   } Wd  | j   Xt j d t j  } t j | d |  } d } t j | d |  } t j d t j  } t j | |  d  k r d  St  | d  } z | j	 |  | SWd  | j   XWn t
 k
 r Yn Xd  S(   NuU   <assemblyIdentity.*?name=("|')Microsoft\.VC\d{2}\.CRT("|').*?(/>|</assemblyIdentity>)u    u*   <dependentAssembly>\s*</dependentAssembly>uI   <assemblyIdentity.*?name=(?:"|')(.+?)(?:"|').*?(?:/>|</assemblyIdentity>)u   w(   u   openu   readu   closeu   reu   compileu   DOTALLu   subu   searchu   Noneu   writeu   IOError(   u   selfu   manifest_fileu
   manifest_fu   manifest_bufu   pattern(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   _remove_visual_c_ref  s.    	u!   MSVCCompiler._remove_visual_c_refc             C   s   d | S(   Nu	   /LIBPATH:(    (   u   selfu   dir(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   library_dir_option  s    u   MSVCCompiler.library_dir_optionc             C   s   t  d   d  S(   Nu<   don't know how to set runtime library search path for MSVC++(   u   DistutilsPlatformError(   u   selfu   dir(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   runtime_library_dir_option  s    u'   MSVCCompiler.runtime_library_dir_optionc             C   s   |  j  |  S(   N(   u   library_filename(   u   selfu   lib(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   library_option  s    u   MSVCCompiler.library_optionc             C   s   | r | d | g } n	 | g } xW | D]K } xB | D]: } t  j j | |  j |   } t  j j |  r6 | Sq6 Wq) Wd  Sd  S(   Nu   _d(   u   osu   pathu   joinu   library_filenameu   existsu   None(   u   selfu   dirsu   libu   debugu	   try_namesu   diru   nameu   libfile(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   find_library_file  s    	u   MSVCCompiler.find_library_filec             C   s   xH |  j  D]= } t j j t j j |  |  } t j j |  r
 | Sq
 WxU t j d j d  D]= } t j j t j j |  |  } t j j |  rb | Sqb W| S(   u  Return path to an MSVC executable program.

        Tries to find the program in several places: first, one of the
        MSVC program search paths from the registry; next, the directories
        in the PATH environment variable.  If any of those work, return an
        absolute path that is known to exist.  If none of them work, just
        return the original program name, 'exe'.
        u   Pathu   ;(   u   _MSVCCompiler__pathsu   osu   pathu   joinu   abspathu   isfileu   environu   split(   u   selfu   exeu   pu   fn(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   find_exe   s    	!!u   MSVCCompiler.find_exeN(!   u   __name__u
   __module__u   __qualname__u   __doc__u   compiler_typeu   executablesu   _c_extensionsu   _cpp_extensionsu   _rc_extensionsu   _mc_extensionsu   src_extensionsu   res_extensionu   obj_extensionu   static_lib_extensionu   shared_lib_extensionu   static_lib_formatu   shared_lib_formatu   exe_extensionu   __init__u   Noneu
   initializeu   object_filenamesu   compileu   create_static_libu   linku   manifest_setup_ldargsu   manifest_get_embed_infou   _remove_visual_c_refu   library_dir_optionu   runtime_library_dir_optionu   library_optionu   find_library_fileu   find_exe(   u
   __locals__(    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   MSVCCompiler)  sR   			
XVR+u   MSVCCompilerl        (1   u   __doc__u   osu
   subprocessu   sysu   reu   distutils.errorsu   DistutilsExecErroru   DistutilsPlatformErroru   CompileErroru   LibErroru	   LinkErroru   distutils.ccompileru	   CCompileru   gen_preprocess_optionsu   gen_lib_optionsu	   distutilsu   logu   distutils.utilu   get_platformu   winregu	   OpenKeyExu   RegOpenKeyExu   EnumKeyu
   RegEnumKeyu	   EnumValueu   RegEnumValueu   erroru   RegErroru
   HKEY_USERSu   HKEY_CURRENT_USERu   HKEY_LOCAL_MACHINEu   HKEY_CLASSES_ROOTu   HKEYSu   platformu   maxsizeu   NATIVE_WIN64u   VS_BASEu   WINSDK_BASEu   NET_BASEu   PLAT_TO_VCVARSu   Regu   MacroExpanderu   get_build_versionu   normalize_and_reduce_pathsu   removeDuplicatesu   find_vcvarsallu   query_vcvarsallu   VERSIONu   MSVCCompiler(    (    (    u<   /opt/alt/python33/lib64/python3.3/distutils/msvc9compiler.pyu   <module>   sP   (					
>.#)	