mirror of
https://github.com/lm-sensors/lm-sensors.git
synced 2026-10-20 11:29:31 +00:00
The dependencies for the parser files are not correct. There is baroque irule adding header prerequisites to the parser but the parser may still fail to build. The real dependency is on conf-parse.h There is no way to tell make that a rule produces two targets, such as parse.c and parse.h. However, the dependency files are generated by a separate rule, and not as a byproduct of building the source so they can themselves have dependencies. And dependencies they do have: when the header is generated it's in lib but when the header is missing while generating dependency file it's searched in top directory, and then the file that depends on it cannot be built because the header neveer appears there. When the generated .c file is addded as prerequisite to the dependency file that should reference the header generated together with the .c file the dependency file is generated correctly with the header present. This is not easily reproducible with the current source but adding conf-lex.h generated with conf-lex.c and including it in conf-parse.c now makes both conf-lex.ad depend on conf-parse.h and conf-lex.ad on conf-lex.h making the build 100% fail.