Skip to content

Variable isn't applied properly. #147

@jptrzy

Description

@jptrzy

I haven't used python for a wail so I couldn't successfully debug this error, but for me, it looks like SolutionDir variable isn't applied.

/***/src/xrGame/xrGame.vcxproj file:

...
  <ItemGroup>
    <ProjectReference Include="$(SolutionDir)3rd party\crypto\crypto.vcxproj">
      <Project>{fa169092-ea3e-40c1-8e5a-a2b575700fe8}</Project>
      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
    </ProjectReference>
...

Logs:

...
5.787851 7> ERR  : /***/src/xrGame/xrGame.vcxproj(4196): /***/src/xrGame/$(SolutionDir)3rd party/crypto/crypto.vcxproj file not exists.
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
  File "/usr/lib/python3.10/multiprocessing/pool.py", line 125, in worker
    result = (True, func(*args, **kwds))
  File "/usr/lib/python3.10/multiprocessing/pool.py", line 48, in mapstar
    return list(map(*args))
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/data_converter.py", line 285, in run_conversion
    converted = self.convert_project(
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/data_converter.py", line 252, in convert_project
    self.collect_data(context)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/data_converter.py", line 53, in collect_data
    context.parser.parse(context)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/visual_studio/vcxproj/parser.py", line 145, in parse
    self._parse_nodes(context, root)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/parser.py", line 101, in _parse_nodes
    node_handlers[child_node_tag](context, child_node)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/visual_studio/vcxproj/parser.py", line 154, in __parse_item_group
    self._parse_nodes(context, node)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/parser.py", line 92, in _parse_nodes
    self._parse_attributes(context, child_node)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/parser.py", line 117, in _parse_attributes
    attributes_handlers[node_key](context, node_key, node.get(attr), node)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/visual_studio/vcxproj/dependencies.py", line 59, in add_target_reference
    ref = self.get_dependency_target_name(
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/dependencies.py", line 110, in get_dependency_target_name
    project_name = get_global_project_name_from_vcxproj_file(vcxproj)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/utils.py", line 174, in get_global_project_name_from_vcxproj_file
    project_name_node = vcxproj['tree'].xpath('//ns:ProjectName', namespaces=vcxproj['ns'])
TypeError: 'NoneType' object is not subscriptable
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/jp3/Src/cmakeconverter/cmake_converter/main.py", line 148, in <module>
    main()
  File "/home/jp3/Src/cmakeconverter/cmake_converter/main.py", line 144, in main
    converter.convert_solution(project_context, os.path.abspath(args.solution))
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/visual_studio/solution.py", line 330, in convert_solution
    results = self.do_conversion(project_context, input_data_for_converter)
  File "/home/jp3/.local/lib/python3.10/site-packages/cmake_converter/data_converter.py", line 317, in do_conversion
    results = pool.map(self.run_conversion, input_converter_data_list)
  File "/usr/lib/python3.10/multiprocessing/pool.py", line 367, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
  File "/usr/lib/python3.10/multiprocessing/pool.py", line 774, in get
    raise self._value
TypeError: 'NoneType' object is not subscriptable

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions