| Summary: | automatic dependencies do not work correctly | ||
|---|---|---|---|
| Product: | SDL | Reporter: | Pierre Phaneuf <pphaneuf> |
| Component: | build | Assignee: | Ryan C. Gordon <icculus> |
| Status: | RESOLVED FIXED | QA Contact: | Sam Lantinga <slouken> |
| Severity: | normal | ||
| Priority: | P2 | ||
| Version: | HG 2.0 | ||
| Hardware: | PowerPC | ||
| OS: | Mac OS X 10.5 (Intel) | ||
|
Description
Pierre Phaneuf
2009-07-05 16:15:40 UTC
The SDL_revision.h dependency was fixed today. I haven't looked into the other issue yet. Have you found a bug in the dependency checking script? It would appear so, the generated dependencies were incorrect when I looked at them. I didn't investigate further. I'd also add that I used to have a single file with all the dependencies in old build systems that I hand-wrote (like yours), but find that this ends up being fairly costly for no good reason, analyzing all the source files when just one of them changed. The best I've got at the moment is a subdirectory containing a tree of files with a .d extension, something like "%: .deps/%.d", so that you get a .deps/foobar.c.d (the double extension is to support foobar.c and foobar.cc in the same directory, just in case) for a foobar.c. That file also includes a dependency from .deps/foobar.c.d to foobar.c, so that any time foobar.c or any of the headers it depends on change, the makefile will regenerate the dependencies. I tried using something like gccmakedep, which is really fast, but I haven't been able to coax it to generate rules for building from a source tree and generating objects in a build tree. There must be a way to do it, but I haven't found it yet. This is fixed now, whee! :) |