Wc\dZddlZddlZddlmZddlmZddlmZdZ GddeZ dS) zBdistutils.command.build Implements the Distutils 'build' command.N)Command)DistutilsOptionError) get_platformc"ddlm}|dS)Nrshow_compilers)distutils.ccompilerrrs 0/usr/lib64/python3.12/distutils/command/build.pyrr s%222222Nc eZdZdZdddddddd d ezfd d d ddg ZddgZdddefgZdZ dZ dZ dZ dZ dZdZde fde fdefdefgZdS) 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 compilerscd|_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_scriptscompiler plat_namerr executableparallelselfs r initialize_optionszbuild.initialize_options8s_!"!!    r c|jt|_n"tjdkr t dd|jgt j ddRz}tt dr|dz }|j1tjj|jd|_|j4tjj|jd|z|_ |j9|jjr|j|_ n|j|_ |j 4tjj|jd|z|_|j"Ftjj|jd t j ddz|_|j$Ft j$r5tjj't j$|_t)|j*t,r t/|j*|_dSdS#t0$rt d wxYw) NntzW--plat-name only supported on Windows (try using './configure --help' on your platform)z .%s-%d.%dgettotalrefcountz-pydebuglibtempz scripts-%d.%dzparallel should be an integer)r rosnamersys version_infohasattrrpathjoinrrr distribution ext_modulesrrr!normpath isinstancer"strint ValueError)r$plat_specifiers r finalize_optionszbuild.finalize_optionsHs  >> !)^DNN ww$*KLL%'N9I9I"19M'N'NN 3* + + j (N    %!#doou!ED     %!#doo.3n.D"FD  >> !  ,,,!%!3!3!%!3!3 ?? " ggll4??+1N+BDDO    %!#doo.=@P@PQSRS@T.T"VD  ?? "s~~~ gg..s~~>DO dmmS ) ) L #DMM 2  * ) L L L*+JKK Ls I""I:cT|jD]}|j|dSN)get_sub_commands run_command)r$cmd_names r runz build.runs: --/ ' 'H   X & & & ' 'r c8|jjSr=)r3has_pure_modulesr#s r rCzbuild.has_pure_moduless  1133r c8|jjSr=)r3has_c_librariesr#s r rEzbuild.has_c_libraries  0022r c8|jjSr=)r3has_ext_modulesr#s r rHzbuild.has_ext_modulesrFr c8|jjSr=)r3 has_scriptsr#s r rJzbuild.has_scriptss  ,,..r build_py build_clib build_extr)__name__ __module__ __qualname__ descriptionr user_optionsboolean_optionsr help_optionsr%r;rArCrErHrJ sub_commandsr r r r s*6K - ? @ + ( & s '<> * + & * H ? B3 L:(O $ #^ 5 L  6L6L6Lp'''444333333/// &67!o6 o6$k2LLLr r ) __doc__r.r,distutils.corerdistutils.errorsrdistutils.utilrrr rVr r r[s--""""""111111'''''' MMMMMGMMMMr