mesonbuild / mesonbuild/meson

run_target() dependencies are missing when using vs2017 generator

Open
#3,333 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
6.6k
Forks
1.9k
Avg merge
2d 6h
Merged PRs (30d)
33

Description

When running project created using run_target() from vs2017 solution it skips building targets provided by `depends` kwarg. Works on windows when using `ninja` backend.

Example project [here](https://github.com/dndanik/meson_run_target_test).

run_target() generated project file:

```xml



debug
x64



{9A0E66F0-00FC-408B-B105-C58265D47616}
x64Proj
x64
launch
10.0.16299.0




MultiByte
false
v141



<_ProjectFileVersion>10.0.30319.1
.\
launch@run\
launch



"c:\users\tester\appdata\local\programs\python\python36-32\python.exe" "c:\users\tester\appdata\local\programs\python\python36-32\lib\site-packages\mesonbuild\scripts\commandrunner.py" "F:\meson_run_target_test\build" "F:\meson_run_target_test" "" "c:\users\tester\appdata\local\programs\python\python36-32\python.exe" "C:\Users\Tester\AppData\Local\Programs\Python\Python36-32\Scripts\meson.py" "C:\Users\Tester\AppData\Local\Programs\Python\Python36-32\python.EXE" "F:\meson_run_target_test\build\launcher.py"
Running custom command.


```

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue with the linked example project, comparing the VS2017-generated project from run_target() with the working Ninja backend. Start by tracing run_target() and the generated XML, then verify that targets supplied through depends are built before the command runs. Done means the VS2017 generator honors those dependencies as Ninja does.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.