î Ôê[%ã@stdZddlZddlZddlmZddlmZddlmZdd„Z Gdd „d eƒZ dS) zBdistutils.command.build Implements the Distutils 'build' command.éN)ÚCommand)ÚDistutilsOptionError)Ú get_platformcCsddlm}|ƒdS)Nr)Úshow_compilers)Zdistutils.ccompilerr)r©rú-/usr/lib/python3.4/distutils/command/build.pyr src @sùeZdZdZd5d6d7d dd d fd8d9dddeƒfd:d;d<d=g ZddgZd!dd"efgZd#d$„Z d%d&„Z d'd(„Z d)d*„Z d+d,„Z d-d.„Zd/d0„Zd1e fd2e fd3efd4efgZdS)>Úbuildz"build everything needed to installú build-base=Úbú base directory for build libraryúbuild-purelib=Nú2build directory for platform-neutral distributionsúbuild-platlib=ú3build directory for platform-specific distributionsz build-lib=z9build directory for all distribution (defaults to either zbuild-purelib or build-platlibúbuild-scripts=úbuild directory for scriptsú build-temp=Útútemporary build directoryz plat-name=Úpz6platform name to build for, if supported (default: %s)ú compiler=Úcúspecify the compiler typeÚdebugÚgú;compile extensions and libraries with debugging informationÚforceÚfú2forcibly build everything (ignore file timestamps)ú executable=Úeú5specify final destination interpreter path (build.py)z help-compilerzlist available compilerscCsgd|_d|_d|_d|_d|_d|_d|_d|_d|_d|_ d|_ dS)Nrr) Ú build_baseÚ build_purelibÚ build_platlibÚ build_libÚ build_tempÚ build_scriptsZcompilerÚ plat_namerrÚ executable)ÚselfrrrÚinitialize_options6s          zbuild.initialize_optionscCs¬|jdkrtƒ|_ntjdkr<tdƒ‚nd|jtjdd…f}ttdƒrx|d7}n|jdkr¥tj j |j dƒ|_n|j dkrÖtj j |j d|ƒ|_ n|j dkr|jjr|j |_ q|j|_ n|jdkr@tj j |j d |ƒ|_n|jdkr~tj j |j d tjdd…ƒ|_n|jdkr¨tj jtjƒ|_ndS) NÚntzW--plat-name only supported on Windows (try using './configure --help' on your platform)z.%s-%sréZgettotalrefcountz-pydebugZlibZtempzscripts-)r(rÚosÚnamerÚsysÚversionÚhasattrr#ÚpathÚjoinr"r$r%Ú distributionZ ext_modulesr&r'r)Únormpath)r*Zplat_specifierrrrÚfinalize_optionsEs2     zbuild.finalize_optionscCs(x!|jƒD]}|j|ƒq WdS)N)Zget_sub_commandsZ run_command)r*Zcmd_namerrrÚrunwsz build.runcCs |jjƒS)N)r5Úhas_pure_modules)r*rrrr9ƒszbuild.has_pure_modulescCs |jjƒS)N)r5Úhas_c_libraries)r*rrrr:†szbuild.has_c_librariescCs |jjƒS)N)r5Úhas_ext_modules)r*rrrr;‰szbuild.has_ext_modulescCs |jjƒS)N)r5Ú has_scripts)r*rrrr<Œszbuild.has_scriptsZbuild_pyZ build_clibZ build_extr')r r r )r Nr )rNr)rNr)rrr)rrr)zdebugrr)zforcerr)rr r!)Ú__name__Ú __module__Ú __qualname__Z descriptionrZ user_optionsZboolean_optionsrZ help_optionsr+r7r8r9r:r;r<Z sub_commandsrrrrrsN      2       r) Ú__doc__r0r.Zdistutils.corerZdistutils.errorsrZdistutils.utilrrrrrrrÚs