� !A?h���`�dZddlZddlZddlmZddlmZddlmZd�Z Gd�de��Z dS) zBdistutils.command.build Implements the Distutils 'build' command.�N)�Command)�DistutilsOptionError)� get_platformc�&�ddlm}|��dS)Nr��show_compilers)�distutils.ccompilerrrs �D/opt/alt/python-internal/lib64/python3.11/distutils/command/build.pyrr s(��2�2�2�2�2�2��N������c ��eZdZdZdddddddd d e��zfd d d ddg ZddgZdddefgZd�Z d�Z d�Z d�Z d�Z d�Zd�Zde 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)�debug�gz;compile extensions and libraries with debugging information)�force�fz2forcibly build everything (ignore file timestamps))z executable=�ez5specify final destination interpreter path (build.py)rrz help-compilerNzlist available compilersc��d|_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_scripts�compiler� plat_namerr� executable�parallel��selfs r �initialize_optionszbuild.initialize_options8s_��!���"���!���������!����� ������ ��� ������ � � r c�,�|j�t��|_ntjdkrt d���d|jgt jdd��Rz}tt d��r|dz }|j�*tj � |j d��|_|j �-tj � |j d|z��|_ |j �%|jjr |j |_ n |j|_ |j�-tj � |j d|z��|_|j�?tj � |j d t jdd�z��|_|j�:t jr.tj �t j��|_t)|jt,��r9 t/|j��|_dS#t0$rt d ���wxYwdS) N�ntzW--plat-name only supported on Windows (try using './configure --help' on your platform)z .%s-%d.%d��gettotalrefcountz-pydebug�lib�tempz scripts-%d.%dzparallel should be an integer)r r�os�namer�sys� version_info�hasattrr�path�joinrrr� distribution� ext_modulesrrr!�normpath� isinstancer"�str�int� ValueError)r$�plat_specifiers r �finalize_optionszbuild.finalize_optionsHs�� �>� !�)�^�^�D�N�N� �w�$���*�K�L�L�L�%���'N��9I�"�1�"�9M�'N�'N�N�� �3�*� +� +� )� �j� (�N� � � %�!#����d�o�u�!E�!E�D� � � � %�!#����d�o�.3�n�.D�"F�"F�D� � �>� !�� �,� 4�!%�!3����!%�!3��� �?� "� �g�l�l�4�?�+1�N�+B�D�D�D�O� � � %�!#����d�o�.=��@P�QS�RS�QS�@T�.T�"V�"V�D� � �?� "�s�~� "� �g�.�.�s�~�>�>�D�O� �d�m�S� )� )� L� L� #�D�M� 2� 2�� � � ��� L� L� L�*�+J�K�K�K� L���� L� Ls �G7�7Hc�^�|���D]}|�|���dS�N)�get_sub_commands� run_command)r$�cmd_names r �runz build.run�s@�� �-�-�/�/� '� '�H� � � �X� &� &� &� &� '� 'r c�4�|j���Sr=)r3�has_pure_modulesr#s r rCzbuild.has_pure_modules�s��� �1�1�3�3�3r c�4�|j���Sr=)r3�has_c_librariesr#s r rEzbuild.has_c_libraries����� �0�0�2�2�2r c�4�|j���Sr=)r3�has_ext_modulesr#s r rHzbuild.has_ext_modules�rFr c�4�|j���Sr=)r3� has_scriptsr#s r rJzbuild.has_scripts�s��� �,�,�.�.�.r �build_py� build_clib� build_extr)�__name__� __module__� __qualname__� descriptionr� user_options�boolean_optionsr� help_optionsr%r;rArCrErHrJ� sub_commands�r r r r s,������6�K� -� ?� @� +� (� &� �s� �'�<�>�>� *� +� &� *� H� ?� B�3 �L�:��(�O� �$� #�^� 5� �L� ��� 6L�6L�6L�p'�'�'�4�4�4�3�3�3�3�3�3�/�/�/� �&6�7�!�o�6� �o�6�$�k�2��L�L�Lr r ) �__doc__r.r,�distutils.corer�distutils.errorsr�distutils.utilrrr rVr r �r[s���-�-���������"�"�"�"�"�"�1�1�1�1�1�1�'�'�'�'�'�'���� M�M�M�M�M�G�M�M�M�M�Mr