Dear git people, I have been thinking for some time about how to write a foolproof general-use build system that automatically tracks dependencies. (Make + depcomp is decent as long as source files aren't added/removed or generated often. Cons is good but not general-purpose.) I know there's been some work on tracing the compiler to see which files it actually opens. Another possibility is to layer a FUSE filesystem over the build tree and note which files in the virtual filesystem are opened; this has the advantage of missing most of the boring files (e.g. shared libraries that make up the compiler). So I was thinking, why not write a build system that uses git's excellent hash-based object storage support to store the files in the virtual build tree? Hashing the files makes it easy to notice when a file is rewritten with the same contents, meaning files that depend on it don't actually have to be rebuilt. I also envision the build system automatically marking generated files as git-ignored. Thoughts? -- Matt McCutchen hashproduct@xxxxxxxxxxx http://hashproduct.metaesthetics.net/ - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html