HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/1991111/cwd/usr/lib/python3/dist-packages/gyp/generator/__pycache__/
Upload File :
Current File : //proc/1991111/cwd/usr/lib/python3/dist-packages/gyp/generator/__pycache__/eclipse.cpython-311.pyc
�

�"KbeB����dZddlmZddlZddlZddlZddlZddlZddl	Z	ddl
mcmZ
daiZdD]
Zdezee<�dD]Zdee<�d	ed
<d�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)a�GYP backend that generates Eclipse CDT settings files.

This backend DOES NOT generate Eclipse CDT projects. Instead, it generates XML
files that can be imported into an Eclipse CDT project. The XML file contains a
list of include paths and symbols (i.e. defines).

Because a full .cproject definition is not created by this generator, it's not
possible to properly define the include dirs and symbols for each file
individually.  Instead, one set of includes/symbols is generated for the entire
project.  This works fairly well (and is a vast improvement in general), but may
still result in a few indexer issues here and there.

This generator has no automated tests, so expect it to be broken.
�)�escapeNF)�INTERMEDIATE_DIR�PRODUCT_DIR�LIB_DIR�SHARED_LIB_DIR�$)�RULE_INPUT_PATH�RULE_INPUT_ROOT�RULE_INPUT_NAME�RULE_INPUT_DIRNAME�RULE_INPUT_EXT�EXECUTABLE_PREFIX�EXECUTABLE_SUFFIX�STATIC_LIB_PREFIX�STATIC_LIB_SUFFIX�SHARED_LIB_PREFIX�SHARED_LIB_SUFFIX�CONFIGURATION_NAME��$SHARED_INTERMEDIATE_DIR�SHARED_INTERMEDIATE_DIRc��|�di��}|���D]\}}|�||���tj�|��}|�d|��|dkrMddlmcm}t|dg��}t|dg��}tj
�||��dSdS)N�generator_flags�OS�winr�+generator_additional_non_configuration_keys�"generator_additional_path_sections)�get�items�
setdefault�gyp�common�	GetFlavor�gyp.generator.msvs�	generator�msvs�getattr�msvs_emulation�CalculateCommonVariables)	�default_variables�paramsr�key�val�flavor�msvs_generatorrrs	         �7/usr/lib/python3/dist-packages/gyp/generator/eclipse.py�CalculateVariablesr15s����J�J�0�"�5�5�/�!�'�'�)�)�+�+�h�c�3�� � ��c�*�*�*�*��:����'�'�&����t�V�,�,�,��u�_�_�0�/�/�/�/�/�/�/�/�29�.�5�r�3;�3;�/�)0��,�b�*2�*2�&���/�/�0A�6�J�J�J�J�J��_�c�f�|�di��}|�dd��rdadSdS)zOCalculate the generator specific info that gets fed to input (called by
  gyp).r�adjust_static_librariesFTN)r�4generator_wants_static_library_dependencies_adjusted)r+rs  r0�CalculateGeneratorInputInfor6GsJ���J�J�0�"�5�5�/����2�E�:�:�@�;?�8�8�8�@�@r2c��t��}g}|r�tj|��}|�gd���t	j|tjtjtj���}	|	���d}
d}|
���D]`}|�	d��rd}�|�	d��rn0|r-|�
��}
|
|vr|�|
���atj
�|��}|dkr|�d	i��}|D�]K}||}||d
v�r5|d
|}|dkr6tj�||��}|�|��}n|d}|D]:}|�	d��r#|d
d�}
|
|vr|�|
���;d|vr�|d}|D]�}|D]�}
|
�d|��}
t(j�|
��sFt(j�|��}|dz|
z}
t(j�|
��}
|�|
��������Mt5|��}|���|D]}||vr|�|���|S)z�Calculate the set of include directories to be used.

  Returns:
    A list including all the include_dir's specified for every target followed
    by any include directories that were added as cflag compiler options.
  )�-Ez-xc++z-v�-)�args�stdin�stdout�stderr�Fz#includeTzEnd of search list.rr�configurations�cflagsz-I�N�include_dirsr�/)�set�shlex�split�extend�
subprocess�Popen�PIPE�communicate�
splitlines�
startswith�strip�appendr!r"r#rr(�MsvsSettings�	GetCflags�replace�os�path�isabs�dirname�abspath�add�list�sort)�target_list�target_dicts�shared_intermediate_dirs�config_namer+�
compiler_path�gyp_includes_set�compiler_includes_list�command�proc�output�in_include_list�line�include_dirr.r�target_name�target�config�
msvs_settingsr@�cflagrB�shared_intermediate_dir�base_dir�all_includes_list�compiler_includes                           r0�GetAllIncludeDirectoriesrqPs+���U�U�����5��k�-�(�(�G��N�N�-�-�-�.�.�.����
��#-�?�:�?�L�L�L�D�
�
�
�
�
��
"�F��O��!�!�#�#�	5�	5��	
����	$�	$�����	
���.�	/�	/��
��	�5��j�j�l�l���4�4�4�
 �
'�
'��
4�
4�
4���:����'�'�&��u�_�_��j�j�!2�B�7�7�O� �!.�!.�k�
�+�
&�F��f�-�.�.�.��&�'��4�f�
�5����*�7�7���P�P�
��(�(��5�5�����!���7�7�%����D�!�!�	7��a�b�b�	�+�
� 6�
6�
6�"�)�)�+�6�6�6��
�6�	!�	!��n�-��'?�
	.�
	.�#�)�	.�	.�k�%�-�-�.H�.E�G�G�K��7�=�=��-�-�
9������5�5�h�$�s�N�[�8�k��G�O�O�K�8�8�k�� � ��-�-�-�-�	.���+�,�,��������0�1�1���/�/�/����/�0�0�0��
�r2c�J�tj�|d��\}}}||�di��}|D]0\}}|dvr'tj�|j|��cS�1dD]'}tj�|��}|r|cS�(dS)aDetermine a command that can be used to invoke the compiler.

  Returns:
    If this is a gyp project that has explicit make settings, try to determine
    the compiler from that.  Otherwise, see if a compiler was specified via the
    CC_target environment variable.
  r�make_global_settings)�CC�CXX)�	CC_targetrtru�gcc)	r!r"�ParseQualifiedTargetrrSrT�join�toplevel_dir�environ)	r[�data�options�
build_file�_�make_global_settings_dictr,�value�compilers	         r0�GetCompilerPathr��s����Z�4�4�[��^�D�D��*�a��"�:�.�2�2�3I�2�N�N��-�7�7�j�c�5�
�m���
�W�\�\�'�.��
6�
6�6�6�6��(���c��z�~�~�c�"�"�H���
�o�o�o��
�r2c�f�i}tj�|��}|dkr|�di��}|D�]}	||	}
|dkr6tj�|
|��}|�|��}ng}||
dvr|
d|}
|
d}ng}||zD]�}|�dd��}t|��dkr|�	d��|d�
��|vr�]|d�
��||d�
��<����|dkr|S|r�tj|��}|�gd	���tj|d
tjtj���}|���d}|�d��}|D]X}|�
��s�|�d
d��}|d}t|��dkr	|d}nd}|||<�Y|S)z�Calculate the defines for a project.

  Returns:
    A dict that includes explict defines declared in gyp files along with all of
    the default defines that the compiler uses.
  rrr?�defines�=r>�1r)r8z-dMr9�.)r:�cwdr;r<�
� rA�)r!r"r#rr(rP�GetComputedDefinesrF�lenrOrNrErGrHrIrJrK)r[r\r|r^r+r_�all_definesr.rrhrirk�
extra_definesrj�target_defines�define�split_definerb�cpp_proc�
cpp_output�	cpp_lines�cpp_line�cpp_line_partsr,r-s                         r0�
GetAllDefinesr��sm���+��:����'�'�&��u�_�_��j�j�!2�B�7�7�O� �E�E�k�
�+�
&�F�
�����(�5�5�f�o�N�N�m�#�6�6�{�C�C�m�m��m��f�-�.�.�.��&�'��4�f��i�(�n�n��n� �=�0�E�E���\�\�#�q�)�)�l�	�\�	�	�a�	�	����C� � � �	�a��	�	�	 �	 �K�	/�	/��-9�!�_�-B�-B�-D�-D�k�,�q�/�'�'�)�)�*�*�E��u�_�_������k�-�(�(�G��N�N�%�%�%�&�&�&���W�#�&0�o�j�o�O�O�O�H��%�%�'�'��*�J�� � ��&�&�I��	�	��
�^�^�
�
����~�~�c�1�-�-�n��1��c�	�^�	�	��	!�	!��Q�������k�#���	�r2c�"�|�d��|�d��|D]L}|�d|z��|D]}|�d|z���|�d���M|�d��dS)z9Write the includes section of a CDT settings export file.zT  <section name="org.eclipse.cdt.internal.ui.wizards.settingswizards.IncludePaths">
�=    <language name="holder for library settings"></language>
�    <language name="%s">
z;      <includepath workspace_path="false">%s</includepath>
�    </language>
�
  </section>
N)�write)�out�
eclipse_langsrB�langrgs     r0�WriteIncludePathsr��s����)�)�
/�0�0�0��)�)�L�M�M�M��#�#�d��I�I�*�T�1�2�2�2�#����	�i�i�N��������I�I�!�"�"�"�"��)�)������r2c��|�d��|�d��|D]�}|�d|z��t|�����D]>}|�dt|���dt||���d����?|�d����|�d��d	S)
z7Write the macros section of a CDT settings export file.zN  <section name="org.eclipse.cdt.internal.ui.wizards.settingswizards.Macros">
r�r�z      <macro><name>z</name><value>z</value></macro>
r�r�N)r��sorted�keysr)r�r�r�r�r,s     r0�WriteMacrosr�s����)�)�
)�*�*�*��)�)�L�M�M�M��#�#�d��I�I�*�T�1�2�2�2��g�l�l�n�n�%�%�5�5��	�i�i�i�������f�W�S�\�2�2�2�2�4�5�5�5�5��I�I�!�"�"�"�"��)�)������r2c�J�|d}|�di��}tj�|�dd��|��}tj�|j|��}tj�|dd��tj�|d��g}	t|||||tj�|d��||	��t
|||j|tj�|d����dS)	Nr}r�
output_dirr��obj�genzeclipse-cdt-settings.xmlzeclipse-classpath.xml)rrSrTryrz�GenerateCdtSettingsFile�GenerateClasspathFile)
r[r\r|r+r^r}r�	build_dir�toplevel_buildr]s
          r0�GenerateOutputForConfigr�s���9��'��J�J�0�"�5�5�/��g�l�l�?�.�.�|�U�C�C�&�(�(�)��7�<�<�� 4�i�@�@�.�!�g�l�l�>�5�%�H�H� �g�l�l�>�5�A�A�C���+�&�� �%��'�,�,�~�'A�C�C�!�2�4�4�4���$��,�&�����^�%<�>�>�	?�?�?�?�?r2c	���tj�|��t|d��5}|�d��|�d��gd�}	t|||��}
t
||||||
��}t||	|��t||||||
��}t||	|��|�d��ddd��dS#1swxYwYdS)N�wz'<?xml version="1.0" encoding="UTF-8"?>
z<cdtprojectproperties>
)zC++ Source Filez
C Source FilezAssembly Source FilezGNU C++zGNU C�Assemblyz</cdtprojectproperties>
)
r!r"�EnsureDirExists�openr�r�rqr�r�r�)
r[r\r|r+r^�out_namer}r]r�r�r_rBr�s
             r0r�r�;sG���*���X�&�&�&��H�c���+�c��I�I�8�9�9�9��I�I�(�)�)�)�5�5�5�M�#�K��w�?�?�M�+�K��,D�,7���P�P�L��c�=�,�7�7�7��K��t�[�"�M�3�3�G���]�G�,�,�,��I�I�)�*�*�*�+�+�+�+�+�+�+�+�+�+�+�+����+�+�+�+�+�+s�BC�C �#C c����tj�|��tjd�����fd�}|dt||�����|dt
||�����|ddg��|dtj�	|d��g��tj
����|��d	S)
z�Generates a classpath file suitable for symbol navigation and code
  completion of Java code (such as in Android projects) by finding all
  .java and .jar files used as action inputs.�	classpathc���t��}|D]j}tj�|��r4|�tj�|������U|�|���kt
|��D]C}tj�d��}|�d|��|�d|���DdS)N�classpathentry�kindrT)	rDrSrTrUrX�relpathr��ET�
SubElement)r��paths�	rel_pathsrT�
entry_element�resultrzs     ��r0�AddElementsz*GenerateClasspathFile.<locals>.AddElementsYs�������I�����	����t�	�	���
�
�b�g�o�o�d�L�9�9�:�:�:�:��
�
�d������y�!�!�&�&���m�F�,<�=�=�m������%�%�%������%�%�%�%�&�&r2�lib�src�conz'org.eclipse.jdt.launching.JRE_CONTAINERrdz.eclipse-java-buildN)r!r"r�r��Element�GetJavaJars�GetJavaSourceDirsrSrTry�ElementTreer�)r[r\rzr�r�r�r�s  `   @r0r�r�Qs�����
�*���X�&�&�&�
�:�k�"�"�&�
&�
&�
&�
&�
&�
&��+�e�[��l�L�I�I�J�J�J�
�+�e�&�{�L�,�O�O�P�P�P�
�+�e�?�@�A�A�A��+�h�����n�6K�L�L�M�N�N�N��.������x�(�(�(�(�(r2c#�K�|D]�}||}|�dg��D]�}|dD]�}tj�|��ddkrx|�d��sctj�|��r|V��dtj�tj�|��|��V�������dS)z1Generates a sequence of all .jars used as inputs.�actions�inputsr>z.jarrN)rrSrT�splitextrMrUryrV)r[r\rzrhri�action�input_s       r0r�r�ss����� �E�E�k�
�+�
&�F��*�*�Y��+�+�E�E���8�$�E�E�&�
�7���F�#�#�A�&�&�0�0��9J�9J�3�9O�9O�0�
�W�]�]�6�
"�
"�E��L�L�L�L��'�,�,�r�w���{�;�;�V�D�D�D�D�D��E�E�E�Er2c
#�K�|D�]B}||}|�dg��D�]}|dD�]}tj�|��ddkr�|�d��s�tj�tj�tj�|��|����}|}tj�|��dvrPtj�|��\}}	|r||kr|V�n%tj�|��dv�P|V�����!��DdS)zAGenerates a sequence of all likely java package root directories.r�r�r>z.javar)r��javaN)	rrSrTr�rMrVry�basenamerF)
r[r\rzrhrir�r��dir_�
parent_searchrs
          r0r�r��sX���� � � �k�
�+�
&�F��*�*�Y��+�+� � ���8�$� � �&��G���V�$�$�Q�'�7�2�2��!�!�#�&�&�
3���������b�g�o�o�k�.J�.J�.4�"6�"6�7�7�$��-��� � ��/�/��F�F�!�w�}�}�]�;�;��M�1� �
�M�\�$A�$A��j�j�j���� � ��/�/��F�F� �����% � � � r2c��|djrtd���|�di���dd��}|rt|||||��dS||dd}|D]}t|||||���dS)zFGenerate an XML settings file that can be imported into a CDT project.r}z.--generator_output not implemented for eclipserrjNrr?)�generator_output�NotImplementedErrorrr�)r[r\r|r+�user_config�config_namesr^s       r0�GenerateOutputr��s����I��'�P�
�N�
O�
O�O��
�
�,�b�1�1�5�5�h��E�E�+��+��K��t�V�'�)�)�)�)�)� ��A��/�0@�A�L�#�+�+���k�<��v�)�+�+�+�+�+�+r2)�__doc__�xml.sax.saxutilsr�os.pathrSrHr!�
gyp.common�gyp.msvs_emulationrE�xml.etree.cElementTree�etree�cElementTreer�r5�generator_default_variablesrV�unusedr1r6rqr�r�r�r�r�r�r�r�r�r��r2r0�<module>r�s���

�
�$�#�#�#�#�#���������
�
�
�
�������������#�#�#�#�#�#�#�#�#�7<�4���P�7�7�G�),�w���g�&�&�%�+�+�F�)+��f�%�%���5�6�K�K�K�$@�@�@�V�V�V�r���08�8�8�v������?�?�?�B+�+�+�,)�)�)�D
E�
E�
E� � � �4+�+�+�+�+r2