U
�AT^� c @ sD d dl Z d dlmZ d dlT d dlmZ dd� ZG dd� de�ZdS ) � N)�Command)Z*)�get_platformc C sP ddl m} g }tjD ]"}|�d| d tj| d f� q| |�}|�d� d S )Nr )�FancyGetopt�formats=� z'List of available distribution formats:)Zdistutils.fancy_getoptr �bdist�format_commands�append�format_commandZ
print_help)r �formats�formatZpretty_printer� r �//usr/lib64/python3.8/distutils/command/bdist.py�show_formats s
�r c
@ s� e Zd ZdZdddde� fdddd d
gZdgZdd
defgZdZ ddd�Z
dddddddddg Zddddddd d!d"d#� Zd$d%� Z
d&d'� Zd(d)� Zd
S )*r z$create a built (binary) distribution)zbdist-base=Zbz4temporary directory for creating built distributionsz
plat-name=Zpz;platform name to embed in generated filenames (default: %s))r Nz/formats for distribution (comma-separated list))z dist-dir=Zdz=directory to put final built distributions in [default: dist])�
skip-buildNz2skip rebuilding everything (for testing/debugging))zowner=Zuz@Owner name used when creating a tar file [default: current user])zgroup=ZgzAGroup name used when creating a tar file [default: current group]r zhelp-formatsNz$lists available distribution formats)� bdist_rpm�gztar�zip)ZposixZnt�rpm�bztar�xztar�ztar�tar�wininst�msi)r zRPM distribution)�
bdist_dumbzgzip'ed tar file)r zbzip2'ed tar file)r zxz'ed tar file)r zcompressed tar file)r ztar file)Z
bdist_wininstzWindows executable installer)r zZIP file)Z bdist_msizMicrosoft Installer) r r r r r r r r r c C s. d | _ d | _d | _d | _d| _d | _d | _d S )Nr )�
bdist_base� plat_namer
�dist_dir�
skip_build�group�owner)�selfr r r
�initialize_optionsQ s zbdist.initialize_optionsc C s� | j d kr(| jrt� | _ n| �d�j | _ | jd krT| �d�j}tj�|d| j �| _| � d� | j
d kr�z| jtj g| _
W n" t
k
r� tdtj ��Y nX | jd kr�d| _d S )NZbuildzbdist.r
z;don't know how to create built distributions on platform %sZdist)r r r Zget_finalized_commandr �
build_base�osZpathZjoinZensure_string_listr
�default_formatZname�KeyErrorZDistutilsPlatformErrorr )r! r# r r r
�finalize_optionsZ s*
�
��
zbdist.finalize_optionsc C s� g }| j D ]>}z|�| j| d � W q
tk
rF td| ��Y q
X q
tt| j ��D ]h}|| }| �|�}|| jkr�| j | |_ |dkr�| j
|_
| j|_|||d d � kr�d|_| �
|� qXd S )Nr zinvalid format '%s'r r )r
r r r&