a oe@sTdZddlZddlZddlmZddlmZddlmZddZ Gd d d eZ dS) zBdistutils.command.build Implements the Distutils 'build' command.N)Command)DistutilsOptionError) get_platformcCsddlm}|dS)Nrshow_compilers)Z ccompilerrrrDC:\Program Files\Certbot\pkgs\setuptools\_distutils\command\build.pyr s rc @seZdZdZdddddddd d efd d d ddg ZddgZdddefgZddZ ddZ ddZ ddZ ddZ dd Zd!d"Zd#e fd$e fd%efd&efgZdS)'buildz"build everything needed to install)z build-base=bz base directory for build library)zbuild-purelib=Nz2build directory for platform-neutral distributions)zbuild-platlib=Nz3build directory for platform-specific distributions)z build-lib=NzWbuild directory for all distribution (defaults to either build-purelib or build-platlib)zbuild-scripts=Nzbuild directory for scripts)z build-temp=tztemporary build directoryz plat-name=pz6platform name to build for, if supported (default: %s))z compiler=czspecify the compiler type)z parallel=jznumber of parallel build jobs)debuggz;compile extensions and libraries with debugging information)forcefz2forcibly build everything (ignore file timestamps))z executable=ez5specify final destination interpreter path (build.py)rrz help-compilerNzlist available compilerscCsLd|_d|_d|_d|_d|_d|_d|_d|_d|_d|_ d|_ d|_ dS)Nr r) build_base build_purelib build_platlib build_lib build_temp build_scriptsZcompiler plat_namerr executableparallelselfrrr initialize_options4szbuild.initialize_optionscCsZ|jdurt|_ntjdkr&tdd|jtjj}t tdrJ|d7}|j durftj |j d|_ |jdurtj |j d||_|jdur|jr|j|_n|j |_|jdurtj |j d||_|jdurtj |j dtjdd |_|jdurtjrtj tj|_t|jtrVzt|j|_WntyTtd Yn0dS) NntzW--plat-name only supported on Windows (try using './configure --help' on your platform)z.{}-{}Zgettotalrefcountz-pydebuglibZtempz scripts-%d.%drzparallel should be an integer)rrosnamerformatsysimplementation cache_taghasattrrpathjoinrrr distributionhas_ext_modulesrr version_infornormpath isinstancerstrint ValueError)rZplat_specifierrrr finalize_optionsDs<           zbuild.finalize_optionscCs|D]}||qdSN)Zget_sub_commandsZ run_command)rZcmd_namerrr run|s z build.runcCs |jSr5)r,has_pure_modulesrrrr r7szbuild.has_pure_modulescCs |jSr5)r,has_c_librariesrrrr r8szbuild.has_c_librariescCs |jSr5)r,r-rrrr r-szbuild.has_ext_modulescCs |jSr5)r, has_scriptsrrrr r9szbuild.has_scriptsZbuild_pyZ build_clibZ build_extr)__name__ __module__ __qualname__ descriptionrZ user_optionsZboolean_optionsrZ help_optionsr r4r6r7r8r-r9Z sub_commandsrrrr r sD 8 r ) __doc__r&r#Zcorererrorsrutilrrr rrrr s