News for hackers. Stuff that matters.
Re:Tup – A file-based build system for Linux, OS X, and Windows by skybrian on Sunday October 02, 2016 @05:09PM (#12624260)
I don't think this really gets rid of all dependencies; it just reduces the build graph a bit. Even a shell script implicitly provides a simple dependency graph: you run the commands from top to bottom, so that's a linear order.

If you have two build targets, do you have two shell scripts? Do you create a library so they share code? That's a dependency graph too.

What's really going on is that the build system doesn't know the true dependency graph until it's run each command once. The first time around, it uses a conservative approximation that you specify.

In tup's case, you don't need to specify any dependencies that aren't themselves generated. That's generally true of header files. If you have a generated header file, you still need to explicitly add the dependency to the tup file [1].

[1] http://gittup.org/tup/ex_generated_header.html

There are no comments on this comment yet.