£Á°è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>

fV  c               @   sr   d  Z  d d l Z d d l m Z d d l Td d l m Z d d l m Z d d   Z	 Gd	 d
   d
 e  Z
 d S(   u   distutils.command.build_clib

Implements the Distutils 'build_clib' command, to build a C/C++ library
that is included in the module distribution and needed by an extension
module.i    N(   u   Command(   u   *(   u   customize_compiler(   u   logc              C   s   d d l  m }  |    d  S(   Ni    (   u   show_compilers(   u   distutils.ccompileru   show_compilers(   u   show_compilers(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   show_compilers   s    u   show_compilersc             B   s   |  Ee  Z d  Z d Z d" d# d$ d% d& g Z d d g Z d d! d e f g Z d d   Z	 d d   Z
 d d   Z d d   Z d d   Z d d   Z d d    Z d! S('   u
   build_clibu/   build C/C++ libraries used by Python extensionsu   build-clib=u   bu%   directory to build C/C++ libraries tou   build-temp=u   tu,   directory to put temporary build by-productsu   debugu   gu"   compile with debugging informationu   forceu   fu2   forcibly build everything (ignore file timestamps)u	   compiler=u   cu   specify the compiler typeu   help-compileru   list available compilersc             C   sU   d  |  _ d  |  _ d  |  _ d  |  _ d  |  _ d  |  _ d  |  _ d |  _ d  |  _	 d  S(   Ni    (
   u   Noneu
   build_clibu
   build_tempu	   librariesu   include_dirsu   defineu   undefu   debugu   forceu   compiler(   u   self(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   initialize_options4   s    								u   build_clib.initialize_optionsc             C   s   |  j  d d d d	 d
 d  |  j j |  _ |  j rG |  j |  j  n  |  j d  k rn |  j j pe g  |  _ n  t |  j t  r |  j j t	 j
  |  _ n  d  S(   Nu   buildu
   build_tempu
   build_clibu   compileru   debugu   force(   u
   build_tempu
   build_clib(   u
   build_tempu
   build_temp(   u   compileru   compiler(   u   debugu   debug(   u   forceu   force(   u   set_undefined_optionsu   distributionu	   librariesu   check_library_listu   include_dirsu   Noneu
   isinstanceu   stru   splitu   osu   pathsep(   u   self(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   finalize_optionsD   s    		u   build_clib.finalize_optionsc             C   s   |  j  s d  Sd d l m } | d |  j d |  j d |  j  |  _ t |  j  |  j d  k	 rv |  j j	 |  j  n  |  j
 d  k	 r x- |  j
 D] \ } } |  j j | |  q Wn  |  j d  k	 r x$ |  j D] } |  j j |  q Wn  |  j |  j   d  S(   Ni    (   u   new_compileru   compileru   dry_runu   force(   u	   librariesu   distutils.ccompileru   new_compileru   compileru   dry_runu   forceu   customize_compileru   include_dirsu   Noneu   set_include_dirsu   defineu   define_macrou   undefu   undefine_macrou   build_libraries(   u   selfu   new_compileru   nameu   valueu   macro(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   run^   s     		u   build_clib.runc             C   s   t  | t  s t d   n  x | D] } t  | t  r\ t |  d k r\ t d   n  | \ } } t  | t  s t d   n  d | k s t j d k r t j | k r t d | d   n  t  | t  s% t d   q% q% Wd	 S(
   u`  Ensure that the list of libraries is valid.

        `library` is presumably provided as a command option 'libraries'.
        This method checks that it is a list of 2-tuples, where the tuples
        are (library_name, build_info_dict).

        Raise DistutilsSetupError if the structure is invalid anywhere;
        just returns otherwise.
        u+   'libraries' option must be a list of tuplesi   u*   each element of 'libraries' must a 2-tupleuN   first element of each tuple in 'libraries' must be a string (the library name)u   /u;   bad library name '%s': may not contain directory separatorsi    uM   second element of each tuple in 'libraries' must be a dictionary (build info)N(	   u
   isinstanceu   listu   DistutilsSetupErroru   tupleu   lenu   stru   osu   sepu   dict(   u   selfu	   librariesu   libu   nameu
   build_info(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   check_library_listv   s"    
"*u   build_clib.check_library_listc             C   s>   |  j  s d  Sg  } x$ |  j  D] \ } } | j |  q W| S(   N(   u	   librariesu   Noneu   append(   u   selfu	   lib_namesu   lib_nameu
   build_info(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   get_library_names   s    	u   build_clib.get_library_namesc             C   s   |  j  |  j  g  } xh |  j D]] \ } } | j d  } | d  k s] t | t t f  rp t d |   n  | j |  q  W| S(   Nu   sourcesuf   in 'libraries' option (library '%s'), 'sources' must be present and must be a list of source filenames(	   u   check_library_listu	   librariesu   getu   Noneu
   isinstanceu   listu   tupleu   DistutilsSetupErroru   extend(   u   selfu	   filenamesu   lib_nameu
   build_infou   sources(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   get_source_files   s    "u   build_clib.get_source_filesc             C   s   x | D] \ } } | j  d  } | d  k sD t | t t f  rW t d |   n  t |  } t j d |  | j  d  } | j  d  } |  j j	 | d |  j
 d | d | d |  j } |  j j | | d |  j d |  j q Wd  S(   Nu   sourcesuf   in 'libraries' option (library '%s'), 'sources' must be present and must be a list of source filenamesu   building '%s' libraryu   macrosu   include_dirsu
   output_diru   debug(   u   getu   Noneu
   isinstanceu   listu   tupleu   DistutilsSetupErroru   logu   infou   compileru   compileu
   build_tempu   debugu   create_static_libu
   build_clib(   u   selfu	   librariesu   lib_nameu
   build_infou   sourcesu   macrosu   include_dirsu   objects(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   build_libraries   s$    "		u   build_clib.build_librariesN(   u   build-clib=u   bu%   directory to build C/C++ libraries to(   u   build-temp=u   tu,   directory to put temporary build by-products(   u   debugu   gu"   compile with debugging information(   u   forceu   fu2   forcibly build everything (ignore file timestamps)(   u	   compiler=u   cu   specify the compiler type(   u   __name__u
   __module__u   __qualname__u   descriptionu   user_optionsu   boolean_optionsu   Noneu   show_compilersu   help_optionsu   initialize_optionsu   finalize_optionsu   runu   check_library_listu   get_library_namesu   get_source_filesu   build_libraries(   u
   __locals__(    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu
   build_clib   s*        	$u
   build_clib(   u   __doc__u   osu   distutils.coreu   Commandu   distutils.errorsu   distutils.sysconfigu   customize_compileru	   distutilsu   logu   show_compilersu
   build_clib(    (    (    uA   /opt/alt/python33/lib64/python3.3/distutils/command/build_clib.pyu   <module>   s   
