B
VoF @ sD d Z ddlZddlmZ ddlZyddlZW n ek
rD dZY nX ddlmZ ddl m
Z
ddlmZ ddl
mZ yddlmZ W n ek
r dZY nX ydd lmZ W n ek
r dZY nX d
d Zdd
Zd#ddZd$ddZedgdfedgdfedgdfedgdfedgdfeg dfdZdd Zd%d!d"ZdS )&zodistutils.archive_util
Utility functions for creating archive files (tarballs, zip files,
that sort of thing). N)warn)DistutilsExecError)spawn)mkpath)log)getpwnam)getgrnamc C sN t dks| dkrdS yt | }W n tk
r8 d}Y nX |dk rJ|d S dS )z"Returns a gid, given a group name.N )r KeyError)nameresult r
/builddir/build/BUILDROOT/alt-python37-setuptools-58.3.0-4.el9.x86_64/opt/alt/python37/lib/python3.7/site-packages/setuptools/_distutils/archive_util.py_get_gid s
r c C sN t dks| dkrdS yt | }W n tk
r8 d}Y nX |dk rJ|d S dS )z"Returns an uid, given a user name.Nr )r r
)r r r
r
r _get_uid+ s
r gzipc s. dddddd}dddd d
}|dk r:|| kr:td| d
} |dkrZ| ||d7 } ttj| |d ddl}
t d t
t fdd}|s|
| d|| }z|j
||d W d| X |dkr*tdt | || }
tjdkr|| |
g}n
|d| g}t||d |
S | S )a= Create a (possibly compressed) tar file from all the files under
'base_dir'.
'compress' must be "gzip" (the default), "bzip2", "xz", "compress", or
None. ("compress" will be deprecated in Python 3.2)
'owner' and 'group' can be used to define an owner and a group for the
archive that is being built. If not provided, the current owner and group
will be used.
The output tar file will be named 'base_dir' + ".tar", possibly plus
the appropriate compression extension (".gz", ".bz2", ".xz" or ".Z").
Returns the output filename.
gzbz2xz )r bzip2r Ncompressz.gzz.bz2z.xzz.Z)r r r r NzKbad value for 'compress': must be None, 'gzip', 'bzip2', 'xz' or 'compress'z.tarr )dry_runr zCreating tar archivec s, d k r | _ | _d k r(| _| _| S )N)gidgnameuiduname)tarinfo)r groupownerr r
r _set_uid_gida s z"make_tarball.