3 �L�j�j�@sddlZddlZddlmZddlmZddlmZddlm Z ddl m Z ddl m Z ddlmZmZmZdd lmZdd l mZdd lmZdd lmZd Zdddddd�Zdddddd�dddddd�ed�Ze�rdddddd�ed<ddd d!dd�ed"<d*ZGd(d)�d)e�ZdS)+�N)�log)�Command)�DEBUG)�get_config_vars)�DistutilsPlatformError)� write_file)� convert_path� subst_vars� change_root)� get_platform)�DistutilsOptionError)� USER_BASE)� USER_SITETz$base/Lib/site-packagesz$base/Include/$dist_namez $base/Scriptsz$base)�purelib�platlib�headers�scripts�dataz/$base/lib/python$py_version_short/site-packagesz5$platbase/lib64/python$py_version_short/site-packagesz9$base/include/python$py_version_short$abiflags/$dist_namez $base/binz$base/lib/pythonz$base/lib64/pythonz$base/include/python/$dist_name)� unix_prefix� unix_home�ntz $usersitez4$userbase/Python$py_version_nodot/Include/$dist_namez)$userbase/Python$py_version_nodot/Scriptsz $userbase�nt_userz=$userbase/include/python$py_version_short$abiflags/$dist_namez $userbase/bin� unix_userrrrrrc@s:eZdZdZd_d`dadbdddedfdgdidjdkdldmdndodpdqdrgZdd%d(gZer`ejd,dd-ef�ejd,�d diZ d.d/�Z d0d1�Z d2d3�Z d4d5�Z d6d7�Zd8d9�Zd:d;�Zdd?�Zd@dA�ZdBdC�ZdDdE�ZdFdG�ZdHdI�ZdJdK�ZdLdM�ZdNdO�ZdPdQ�ZdRdS�ZdTdU�ZdVdW�ZdXefdYefdZefd[efd\d]d^�fgZdS)s�installz'install everything from build directory�prefix=N�installation prefix� exec-prefix=�.(Unix only) prefix for platform-specific files�home=�+(Unix only) home directory to install under� install-base=�;base installation directory (instead of --prefix or --home)�install-platbase=z8base installation directory for platform-specific files z$(instead of --exec-prefix or --home)�root=�|j�D]2}|j|�}x"|j�D]}||kr&|j|�q&WqW|jrl|jrl|jtjj|j |jd��|S)Nz.pth) r��get_finalized_commandr��appendr�rQrhr}r~r|)rWr�r��cmdr�rXrXrYr�bs  zinstall.get_outputscCs2g}x(|j�D]}|j|�}|j|j��qW|S)N)r�r��extend� get_inputs)rWZinputsr�r�rXrXrYr�ss  zinstall.get_inputscCs|jj�p|jj�S)N)rrZhas_pure_modulesZhas_ext_modules)rWrXrXrY�has_libs zinstall.has_libcCs |jj�S)N)rr� has_headers)rWrXrXrYr��szinstall.has_headerscCs |jj�S)N)rr� has_scripts)rWrXrXrYr��szinstall.has_scriptscCs |jj�S)N)rrZhas_data_files)rWrXrXrY�has_data�szinstall.has_datarJrIrKrLZinstall_egg_infocCsdS)NTrX)rWrXrXrY��szinstall.)rNr)rNr)rNr)r Nr!�\base installation directory for platform-specific files (instead of --exec-prefix or --home))r"Nr�)r#Nr$)r%Nr&)r'Nr(�ginstallation directory for all module distributions (overrides --install-purelib and --install-platlib))r)Nr�)r*Nr+)r,Nr-)r.Nr/)r0r1r2)r3Nr4)r5r6r7)r8r9r:)r;Nr<)r=Nr>) �__name__� __module__� __qualname__Z descriptionr�Zboolean_optionsrur�rr�rZr�rkrlrmr�r�rvrxrzr{r�ryr�r�r�r�r�r�r�r�Z sub_commandsrXrXrXrYrIs�   N3  " , r)rrrrr)rnrhZ distutilsrZdistutils.corerZdistutils.debugrZdistutils.sysconfigrZdistutils.errorsrZdistutils.file_utilrZdistutils.utilrr r r r Zsiter rruZWINDOWS_SCHEMEr�r�rrXrXrXrY�sT