The discussion so far has been based on the idea that the user is expressing an order on the command line and will be surprised if that order is not followed. That definitely makes sense, and I was quite shocked to discover this problem. ("make -j clean all" does /what/?!)
But when I ran into this issue a couple months ago, I thought a temporal prerequisite might be the solution. In other words, give the creator of the makefile a way to express that there's no requirement to build A just because you're going to build B, and no reason to rebuild B just because you've built A, but, nevertheless, if you need to build both A and B, A must be built first. (As it happens, I'm only on this mailing list because I thought order-only prerequisites were like that, and I found a discussion here from a few years ago that straightened me out.) I claim that a requirement for ordering on the command line is caused, for the most part, because the user knows what logical order the makefile needs, and the makefile cannot express the requirement for itself. -don provan -- View this message in context: http://gnu-make.2324884.n4.nabble.com/Parallel-Build-but-Not-for-the-Command-Line-Targets-tp15766p15791.html Sent from the Gnu - Make - Bugs mailing list archive at Nabble.com. _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make