ž «ÿf± c@sjdZddlZddlZddlZddlmZddlmZdZGdd„deƒZ dS(ukdistutils.command.install_lib Implements the Distutils 'install_lib' command (install all Python modules).iN(uCommand(uDistutilsOptionErroru.pyc BsÉ|EeZdZdZd*d+d,d-d.d/d0gZdd dgZid d6Zdd„Zdd„Z dd„Z dd„Z dd„Z dd „Z d!d"„Zd#d$„Zd%d&„Zd'd(„Zd)S(1u install_libu7install all Python modules (extensions and pure Python)u install-dir=ududirectory to install tou build-dir=ubu'build directory (where to install from)uforceufu-force installation (overwrite existing files)ucompileucucompile .py to .pyc [default]u no-compileudon't compile .py filesu optimize=uOulalso compile with optimization: -O1 for "python -O", -O2 for "python -OO", and -O0 to disable [default: -O0]u skip-builduskip the build stepscCs:d|_d|_d|_d|_d|_d|_dS(Ni(uNoneu install_diru build_diruforceucompileuoptimizeu skip_build(uself((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyuinitialize_options3s      uinstall_lib.initialize_optionsc CsÃ|jdddddddƒ|jdkr:d|_n|jdkrUd|_nt|jtƒs¿y.t|jƒ|_|jdkr”t‚nWq¿t tfk r»t d ƒ‚Yq¿XndS(Nuinstallu build_libu build_diru install_libu install_diruforceucompileuoptimizeu skip_buildiiiuoptimize must be 0, 1, or 2(u build_libu build_dir(u install_libu install_dir(uforceuforce(ucompileucompile(uoptimizeuoptimize(u skip_buildu skip_buildTF(iii( uset_undefined_optionsucompileuNoneuTrueuoptimizeuFalseu isinstanceuintuAssertionErroru ValueErroruDistutilsOptionError(uself((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyufinalize_options<s$    uinstall_lib.finalize_optionscCsE|jƒ|jƒ}|dk rA|jjƒrA|j|ƒndS(N(ubuilduinstalluNoneu distributionuhas_pure_modulesu byte_compile(uselfuoutfiles((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyurunVs  uinstall_lib.runcCsN|jsJ|jjƒr(|jdƒn|jjƒrJ|jdƒqJndS(Nubuild_pyu build_ext(u skip_buildu distributionuhas_pure_modulesu run_commanduhas_ext_modules(uself((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyubuildfs  uinstall_lib.buildcCsLtjj|jƒr0|j|j|jƒ}n|jd|jƒdS|S(Nu3'%s' does not exist -- no Python modules to install(uosupathuisdiru build_diru copy_treeu install_diruwarn(uselfuoutfiles((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyuinstallms   uinstall_lib.installc Csºtjr|jdƒdSddlm}|jdƒj}|jrp||ddd|jd|d|j ƒn|j dkr¶||d|j d|jd|d |j d|j ƒndS( Nu%byte-compiling is disabled, skipping.i(u byte_compileuinstalluoptimizeuforceuprefixudry_runuverbose( usysudont_write_bytecodeuwarnudistutils.utilu byte_compileuget_finalized_commandurootucompileuforceudry_runuoptimizeuverbose(uselfufilesu byte_compileu install_root((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyu byte_compilevs    uinstall_lib.byte_compilec CsŽ|s gS|j|ƒ}|jƒ}t||ƒ}t|ƒttjƒ}g}x4|D],} |jtjj|| |d…ƒƒqZW|S(N( uget_finalized_commandu get_outputsugetattrulenuosusepuappendupathujoin( uselfuhas_anyu build_cmdu cmd_optionu output_diru build_filesu build_diru prefix_lenuoutputsufile((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyu_mutate_outputss  *uinstall_lib._mutate_outputscCs¥g}x˜|D]}tjjtjj|ƒƒd}|tkrGq n|jro|jtj|ddƒƒn|j dkr |jtj|ddƒƒq q W|S(Niudebug_overrideiTF( uosupathusplitextunormcaseuPYTHON_SOURCE_EXTENSIONucompileuappenduimpucache_from_sourceuTrueuoptimizeuFalse(uselfu py_filenamesubytecode_filesupy_fileuext((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyu_bytecode_filenamesžs "    uinstall_lib._bytecode_filenamescCsu|j|jjƒdd|jƒ}|jr?|j|ƒ}ng}|j|jjƒdd|jƒ}|||S(uÁReturn the list of files that would be installed if this command were actually run. Not affected by the "dry-run" flag or whether modules have actually been built yet. ubuild_pyu build_libu build_ext(u_mutate_outputsu distributionuhas_pure_modulesu install_dirucompileu_bytecode_filenamesuhas_ext_modules(uselfu pure_outputsubytecode_outputsu ext_outputs((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyu get_outputs´s   uinstall_lib.get_outputscCsrg}|jjƒr:|jdƒ}|j|jƒƒn|jjƒrn|jdƒ}|j|jƒƒn|S(uþGet the list of files that are input to this command, ie. the files that get installed as they are named in the build tree. The files in this list correspond one-to-one to the output filenames returned by 'get_outputs()'. ubuild_pyu build_ext(u distributionuhas_pure_modulesuget_finalized_commanduextendu get_outputsuhas_ext_modules(uselfuinputsubuild_pyu build_ext((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyu get_inputsÉsuinstall_lib.get_inputsN(u install-dir=ududirectory to install to(u build-dir=ubu'build directory (where to install from)(uforceufu-force installation (overwrite existing files)(ucompileucucompile .py to .pyc [default](u no-compileNudon't compile .py files(u optimize=uOulalso compile with optimization: -O1 for "python -O", -O2 for "python -OO", and -O0 to disable [default: -O0](u skip-buildNuskip the build steps(u__name__u __module__u __qualname__u descriptionuNoneu user_optionsuboolean_optionsu negative_optuinitialize_optionsufinalize_optionsurunubuilduinstallu byte_compileu_mutate_outputsu_bytecode_filenamesu get_outputsu get_inputs(u __locals__((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyu install_libs*         u install_lib( u__doc__uosuimpusysudistutils.coreuCommandudistutils.errorsuDistutilsOptionErroruPYTHON_SOURCE_EXTENSIONu install_lib(((uB/opt/alt/python33/lib64/python3.3/distutils/command/install_lib.pyus