File "build_py.cpython-38.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python38/lib64/python3.8/distutils/command/__pycache__/build_py.cpython-38.pyc
File size: 10.25 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

U

if&C@szdZddlZddlZddlZddlZddlmZddlTddl	m
Z
mZddlm
Z
GdddeZGd	d
d
eeZdS)zHdistutils.command.build_py

Implements the Distutils 'build_py' command.N)Command)*)convert_path	Mixin2to3)logc@seZdZdZdddddgZddgZd	diZd
dZdd
ZddZ	ddZ
ddZddZddZ
ddZddZddZddZd d!Zd"d#Zd$d%Zd2d'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1S)3build_pyz5"build" pure Python modules (copy to build directory))z
build-lib=dzdirectory to "build" (copy) to)compileczcompile .py to .pyc)
no-compileNz!don't compile .py files [default])z	optimize=Ozlalso compile with optimization: -O1 for "python -O", -O2 for "python -OO", and -O0 to disable [default: -O0])forcefz2forcibly build everything (ignore file timestamps)r	r
rcCs4d|_d|_d|_d|_d|_d|_d|_d|_dS)Nr)	build_lib
py_modulespackagepackage_datapackage_dirr	optimizer
selfr?/opt/alt/python38/lib64/python3.8/distutils/command/build_py.pyinitialize_options szbuild_py.initialize_optionsc	Cs|ddd|jj|_|jj|_|jj|_i|_|jjr^|jjD]\}}t||j|<qF||_	t
|jtsz,t|j|_d|jkrdksnt
Wn tt
fk
rtdYnXdS)NZbuild)rr)r
r
rzoptimize must be 0, 1, or 2)Zset_undefined_optionsdistributionpackagesrrritemsrget_data_files
data_files
isinstancerintAssertionError
ValueErrorZDistutilsOptionError)rnamepathrrrfinalize_options*s$



 zbuild_py.finalize_optionscCs:|jr||jr$||||jdddSNr)include_bytecode)r
build_modulesrbuild_packagesbuild_package_databyte_compileget_outputsrrrrrunCszbuild_py.runcsg}|js|S|jD]h}||}tjj|jg|d}d|rPt|dfdd|||D}|	||||fq|S)z?Generate list of '(package,src_dir,build_dir,filenames)' tuples.rcsg|]}|dqSNr).0fileZplenrr
<listcomp>ssz+build_py.get_data_files.<locals>.<listcomp>)
rget_package_dirosr%joinrsplitlenfind_data_filesappend)rdatarsrc_dir	build_dir	filenamesrr4rras



zbuild_py.get_data_filescsd|jdg|j|g}g|D]:}ttjt|t|}fdd|Dq$S)z6Return filenames for package's data files in 'src_dir'cs$g|]}|krtj|r|qSr)r7r%isfile)r2fnfilesrrr5sz,build_py.find_data_files.<locals>.<listcomp>)	rgetglobr7r%r8escaperextend)rrr>ZglobspatternZfilelistrrDrr;yszbuild_py.find_data_filescCs`d}|jD]P\}}}}|D]>}tj||}|tj||jtj|||ddqq
dS)z$Copy data files into build directoryNFZ
preserve_mode)rr7r%r8mkpathdirname	copy_file)rZlastdirrr>r?r@filenametargetrrrr+szbuild_py.build_package_datacCs|d}|js&|r tjj|SdSng}|rz|jd|}Wn*tk
rl|d|d|d=Yq*X|d|tjj|Sq*|jd}|dk	r|d||rtjj|SdSdS)zReturn the directory, relative to the top of the source
           distribution, where package 'package' should be found
           (at least according to the 'package_dir' option, if any).r/rArN)r9rr7r%r8KeyErrorinsertrF)rrr%tailZpdirrrrr6s(
	zbuild_py.get_package_dircCsj|dkr8tj|s td|tj|s8td||rftj|d}tj|rZ|Std|dS)NrAz%package directory '%s' does not existz>supposed package directory '%s' exists, but is not a directoryz__init__.pyz8package init file '%s' not found (or not a regular file))	r7r%existsZDistutilsFileErrorisdirr8rBrwarn)rrrinit_pyrrr
check_packages&zbuild_py.check_packagecCs&tj|std||dSdSdS)Nz!file %s (for module %s) not foundFT)r7r%rBrrW)rmodulemodule_filerrrcheck_moduleszbuild_py.check_modulec	Cs|||ttjt|d}g}tj|jj}|D]P}tj|}||krtj	tj
|d}||||fq>|d|q>|S)Nz*.pyrzexcluding %s)
rYrGr7r%r8rHabspathrZscript_namesplitextbasenamer<Zdebug_print)	rrrZmodule_filesmodulesZsetup_scriptrZabs_frZrrrfind_package_modulesszbuild_py.find_package_modulesc	Csi}g}|jD]}|d}d|dd}|d}z||\}}Wn"tk
rh||}d}YnX|s|||}	|df||<|	r||d|	ftj||d}
|	||
sq||||
fq|S)aFinds individually-specified Python modules, ie. those listed by
        module name in 'self.py_modules'.  Returns a list of tuples (package,
        module_base, filename): 'package' is a tuple of the path through
        package-space to the module; 'module_base' is the bare (no
        packages, no dots) module name, and 'filename' is the path to the
        ".py" file (relative to the distribution root) that implements the
        module.
        r/rrQr0__init__.py)
rr9r8rRr6rYr<r7r%r\)rrr`rZr%rZmodule_basercheckedrXr[rrrfind_moduless*



zbuild_py.find_modulescCsNg}|jr|||jrJ|jD]$}||}|||}||q$|S)a4Compute the list of all modules that will be built, whether
        they are specified one-module-at-a-time ('self.py_modules') or
        by whole packages ('self.packages').  Return a list of tuples
        (package, module, module_file), just like 'find_modules()' and
        'find_package_modules()' do.)rrIrerr6ra)rr`rrmrrrfind_all_moduless

zbuild_py.find_all_modulescCsdd|DS)NcSsg|]}|dqS)rQr)r2rZrrrr5-sz-build_py.get_source_files.<locals>.<listcomp>)rgrrrrget_source_files,szbuild_py.get_source_filescCs$|gt||dg}tjj|S)Nrc)listr7r%r8)rr?rrZZoutfile_pathrrrget_module_outfile/szbuild_py.get_module_outfiler0cCs|}g}|D]p\}}}|d}||j||}|||r|jr^|tjj|dd|j	dkr|tjj||j	dq|dd|j
D7}|S)Nr/rA)optimizationrcSs,g|]$\}}}}|D]}tj||qqSr)r7r%r8)r2rr>r?r@rOrrrr5Bs
z(build_py.get_outputs.<locals>.<listcomp>)rgr9rjrr<r		importlibutilcache_from_sourcerr)rr(r`ZoutputsrrZr[rOrrrr-3s*





zbuild_py.get_outputscCsbt|tr|d}nt|ttfs,td||j||}tj	
|}|||j||ddS)Nr/z:'package' must be a string (dot-separated), list, or tuplerrK)
r strr9rituple	TypeErrorrjrr7r%rMrLrN)rrZr[rZoutfiledirrrrbuild_moduleJs

zbuild_py.build_modulecCs*|}|D]\}}}||||qdSr1)rers)rr`rrZr[rrrr)Yszbuild_py.build_modulescCsP|jD]D}||}|||}|D]$\}}}||ks:t||||q$qdSr1)rr6rar"rs)rrrr`Zpackage_rZr[rrrr*bs


zbuild_py.build_packagescCstjr|ddSddlm}|j}|dtjkr>|tj}|jrZ||d|j	||j
d|jdkr||||j|j	||j
ddS)Nz%byte-compiling is disabled, skipping.r)r,rQ)rr
prefixdry_run)sysdont_write_bytecoderWdistutils.utilr,rr7sepr	r
rur)rrEr,rtrrrr,vs&


zbuild_py.byte_compileN)r0)__name__
__module____qualname__ZdescriptionZuser_optionsZboolean_optionsZnegative_optrr&r.rr;r+r6rYr\rarergrhrjr-rsr)r*r,rrrrrs8



'4
	rc@seZdZddZddZdS)
build_py_2to3cCsLg|_|jr||jr*||||j||jdddSr')	
updated_filesrr)rr*r+Zrun_2to3r,r-rrrrr.szbuild_py_2to3.runcCs,t||||}|dr(|j|d|S)Nr0r)rrsr~r<)rrZr[rresrrrrsszbuild_py_2to3.build_moduleN)rzr{r|r.rsrrrrr}sr})__doc__r7importlib.utilrlrvrGZdistutils.corerZdistutils.errorsrxrrZ	distutilsrrr}rrrr<module>s}