
][\                 @   s   d  Z  d d l Z d d l m Z d d l m Z d d l m Z m Z d d l	 Td d l
 m Z d d l m Z Gd	 d
   d
 e  Z d S)zdistutils.command.bdist_dumb

Implements the Distutils 'bdist_dumb' command (create a "dumb" built
distribution -- i.e., just an archive to be unpacked under $prefix or
$exec_prefix).    N)Command)get_platform)remove_treeensure_relative)*)get_python_version)logc               @   s   e  Z d  Z d Z d& d d d e   f d' d d d d f d( d) d* d+ d, g	 Z d d d g Z i d d 6d d 6Z d  d!   Z d" d#   Z	 d$ d%   Z
 d S)-
bdist_dumbz"create a "dumb" built distribution
bdist-dir=d1temporary directory for creating the distributionz
plat-name=pz;platform name to embed in generated filenames (default: %s)format=f0archive format to create (tar, ztar, gztar, zip)z	keep-tempkz/keep the pseudo-installation tree around after z!creating the distribution archive	dist-dir=-directory to put final built distributions in
skip-buildN2skip rebuilding everything (for testing/debugging)relative6build the archive using relative paths(default: false)owner=u@Owner name used when creating a tar file [default: current user]group=gAGroup name used when creating a tar file [default: current group]Zgztarposixzipntc             C   sU   d  |  _  d  |  _ d  |  _ d |  _ d  |  _ d  |  _ d |  _ d  |  _ d  |  _ d  S)Nr   )		bdist_dir	plat_nameformat	keep_tempdist_dir
skip_buildr   ownergroup)self r*   2/usr/lib/python3.4/distutils/command/bdist_dumb.pyinitialize_options1   s    								zbdist_dumb.initialize_optionsc             C   s   |  j  d  k r< |  j d  j } t j j | d  |  _  n  |  j d  k r y |  j t j |  _ Wq t	 k
 r t
 d t j   Yq Xn  |  j d d d d	  d  S)
NZbdistZdumbz@don't know how to create dumb built distributions on platform %sr%   r"   r&   )dist_dirr-   )	plat_namer.   )
skip_buildr/   )r!   Zget_finalized_command
bdist_baseospathjoinr#   default_formatnameKeyErrorDistutilsPlatformErrorZset_undefined_options)r)   r0   r*   r*   r+   finalize_options<   s    	zbdist_dumb.finalize_optionsc          	   C   s  |  j  s |  j d  n  |  j d d d } |  j | _ |  j  | _  d | _ t j d |  j  |  j d  d |  j j	   |  j
 f } t j j |  j |  } |  j s |  j } nm |  j j   r| j | j k rt d t | j  t | j  f   n! t j j |  j t | j   } |  j | |  j d	 | d
 |  j d |  j } |  j j   rnt   } n d } |  j j j d | | f  |  j st |  j d |  j n  d  S)NZbuildinstallZreinit_subcommands   r   zinstalling to %sz%s.%szScan't make a dumb built distribution where base and platbase are different (%s, %s)Zroot_dirr'   r(   anyr	   dry_run) r&   Zrun_commandZreinitialize_commandr!   rootZwarn_dirr   infoZdistributionZget_fullnamer"   r1   r2   r3   r%   r   Zhas_ext_modulesZinstall_baseZinstall_platbaser7   reprr   Zmake_archiver#   r'   r(   r   Z
dist_filesappendr$   r   r<   )r)   r9   Zarchive_basenameZpseudoinstall_rootZarchive_rootfilenameZ	pyversionr*   r*   r+   runN   s>    				
	zbdist_dumb.run)r
   r   r   )r   r   r   )r   r   r   )r   Nr   )zrelativeNr   )r   r   r   )r   r   r   )__name__
__module____qualname__Zdescriptionr   Zuser_optionsZboolean_optionsr4   r,   r8   rB   r*   r*   r*   r+   r	      s6    
      	

r	   )__doc__r1   Zdistutils.corer   Zdistutils.utilr   Zdistutils.dir_utilr   r   Zdistutils.errorsZdistutils.sysconfigr   Z	distutilsr   r	   r*   r*   r*   r+   <module>   s   
