News for hackers. Stuff that matters.
Re:A simple makefile is a unicorn by qznc on Thursday January 11, 2018 @05:30AM (#16122750)
The Make problems I know [0] are:

* Recursive Make Considered Harmful

* Changes to the Makefile do not implicitly trigger rebuilds

* Dependencies on directories is not really possible

* Lots of output by default

* Rules with multiple output files are not really possible

* can't handle spaces in pathnames

[0] https://github.com/qznc/annoying-build-systems#make-alone

Re:A simple makefile is a unicorn by snarfy on Thursday January 11, 2018 @06:20AM (#16122939)
Some more:

* Change tracking entirely depends on modified timestamps instead of something more robust like checksums.

* Makefiles are always platform specific. Make executes commands based on a dependency graph, but it has no commands of its own. You either write multiple makefiles or you build everything in a bash environment.

Re:A simple makefile is a unicorn by qznc on Thursday January 11, 2018 @06:45AM (#16123036)
Do you have a good link/example, why timestamps are bad?

I think in the context of Make it is ok. If you rely on checksums, you must implicitly assume that all commands you execute are idempotent. That assumption easily breaks.

Re:A simple makefile is a unicorn by oriolid on Thursday January 11, 2018 @03:12PM (#16127370)
When I worked with Clearcase (which is terrible in many ways, this is just one), one of its nice features was that it changed file timestamp to the timestamp of commit, not the timestamp it was changed on developer's machine. The commit timestamp may be after previous commit but also before the compiled object file. Because of this, the only way to do a reliable build was to start from scratch. Which took 45 minutes.

Ceterum censeo, Clearcase must be destroyed.

Re:A simple makefile is a unicorn by snarfy on Thursday January 11, 2018 @07:10AM (#16123147)
I don't have a link, but one reason to prefer checksums is if you have intermediary steps that produce artifacts, possibly binary input to another step, that may or may not need to actually be built.
Re:A simple makefile is a unicorn by hzhou321 on Thursday January 11, 2018 @09:31AM (#16124049)
Very nice. It appears to be high time to create my own simple make.