mesonbuild / meson

The Meson Build System
http://mesonbuild.com
Apache License 2.0
5.57k stars 1.62k forks source link

Meson doesn't set the right file-dependencies for D projects #6949

Open Cogitri opened 4 years ago

Cogitri commented 4 years ago

Describe the bug It appears that meson doesn't set the right file-dependencies in one project. So if I change file test1.d is in shared lib a and test2.d depends on the imports from test1.d and is built against the shared liba, test2.d isn't rebuilt. This can cause really weird errors, e.g. when an Enum has changed in test1.d and the final switch (a construct which requires you to do an exhaustive match on an enum) in test2.d doesn't complain about the change (e.g. an addition of a new enum member) because it isn't rebuilt

To Reproduce I'll make a toy-project to demo this in a bit.

Expected behavior Meson should rebuild test2.d too.

system parameters Meson 0.54.0

Rogni commented 4 years ago

To Reproduce:

OS: Mint 19.3 tricia

meson --version 0.54.3

ninja --version 1.9.0.git.kitware.dyndep-1.jobserver-1