File "build_clib.cpython-34.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python34/lib64/python3.4/distutils/command/__pycache__/build_clib.cpython-34.pyc
File size: 5.32 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit


h fV@srdZddlZddlmZddlTddlmZddlmZddZ	Gd	d
d
eZ
dS)zdistutils.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.N)Command)*)customize_compiler)logcCsddlm}|dS)Nr)show_compilers)distutils.ccompilerr)rrA/opt/alt/python34/lib64/python3.4/distutils/command/build_clib.pyrsrc@seZdZdZd"d#d$d%d&gZddgZdddefgZddZddZ	ddZ
ddZddZddZ
d d!ZdS)'
build_clibz/build C/C++ libraries used by Python extensionsbuild-clib=b%directory to build C/C++ libraries tobuild-temp=t,directory to put temporary build by-productsdebugg"compile with debugging informationforcef2forcibly build everything (ignore file timestamps)	compiler=cspecify the compiler typez
help-compilerNzlist available compilerscCsUd|_d|_d|_d|_d|_d|_d|_d|_d|_dS)Nr)	r

build_temp	librariesinclude_dirsdefineundefrrcompiler)selfrrr	initialize_options4s								zbuild_clib.initialize_optionscCs|jdddd	d
d|jj|_|jrG|j|jn|jdkrn|jjpeg|_nt|jtr|jjtj	|_ndS)NZbuildrr
rrr)
build_tempz
build_clib)r"r")compilerr#)debugr$)forcer%)
Zset_undefined_optionsZdistributionrcheck_library_listr
isinstancestrsplitospathsep)r rrr	finalize_optionsDs		zbuild_clib.finalize_optionscCs|js
dSddlm}|d|jd|jd|j|_t|j|jdk	rv|jj|jn|j	dk	rx-|j	D]\}}|jj
||qWn|jdk	rx$|jD]}|jj|qWn|j
|jdS)Nr)new_compilerrdry_runr)rrr-rr.rrrZset_include_dirsrZdefine_macrorZundefine_macrobuild_libraries)r r-namevalueZmacrorrr	run^s 		
zbuild_clib.runcCst|tstdnx|D]}t|tr\t|dkr\tdn|\}}t|tstdnd|kstjdkrtj|krtd|dnt|ts%tdq%q%Wd	S)
a`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.
        z+'libraries' option must be a list of tuplesz*each element of 'libraries' must a 2-tuplezNfirst element of each tuple in 'libraries' must be a string (the library name)/z;bad library name '%s': may not contain directory separatorsrzMsecond element of each tuple in 'libraries' must be a dictionary (build info)N)	r'listDistutilsSetupErrortuplelenr(r*sepdict)r rlibr0
build_inforrr	r&vs"

"*zbuild_clib.check_library_listcCs>|js
dSg}x$|jD]\}}|j|qW|S)N)rappend)r Z	lib_nameslib_namer<rrr	get_library_namess	zbuild_clib.get_library_namescCs|j|jg}xh|jD]]\}}|jd}|dks]t|ttfrptd|n|j|q W|S)Nsourceszfin 'libraries' option (library '%s'), 'sources' must be present and must be a list of source filenames)r&rgetr'r5r7r6extend)r 	filenamesr>r<r@rrr	get_source_filess"
zbuild_clib.get_source_filescCsx|D]\}}|jd}|dksDt|ttfrWtd|nt|}tjd||jd}|jd}|jj|d|j	d|d|d|j
}|jj||d|jd|j
qWdS)Nr@zfin 'libraries' option (library '%s'), 'sources' must be present and must be a list of source filenameszbuilding '%s' librarymacrosrZ
output_dirr)
rAr'r5r7r6rinforcompilerrZcreate_static_libr
)r rr>r<r@rErZobjectsrrr	r/s$"
		zbuild_clib.build_libraries)rrr
)rrr)zdebugrr)zforcerr)rrr)__name__
__module____qualname__ZdescriptionZuser_optionsZboolean_optionsrZhelp_optionsr!r,r2r&r?rDr/rrrr	r
s*	$r
)__doc__r*Zdistutils.corerZdistutils.errorsZdistutils.sysconfigrZ	distutilsrrr
rrrr	<module>s