(I generally find a small set of shell scripts work, or just three or four rules in the package.json file I can access with `npm run`).
Makefiles for web work
11–20 of 58 posts
Re: Makefiles for web work
#12Make becomes a pretty terrible tool at a fairly low level of complexity. I would never choose it voluntarily to build things.
Re: Makefiles for web work
#13Re: Makefiles for web work
#14Re: Makefiles for web work
#15It's interesting, but I can't help but think that by the time you're adding `.PHONY` after most rules, you're not using the right tool for the job. (I generally find a small set of shell scripts work, or just three or four rules in the package.json file I can access with `npm run`).
Re: Makefiles for web work
#16My main problem with make: When you want to write sophisticated build processes, the syntax is bizarre and difficult to work with.
Just today I was trying to help a friend build some tool with Bazel. While I'm sure there's a reason for Bazels existence, but it's just way to complex. The build failed and debugging the Bazel config was just a major hassle compared to had we just looked at the Java commands in a Makefile.
Similar with Pythons setuptools, even though that is significantly easier with the new pyproject.toml. It's really powerful, but what all I wanted is basically to copy a bunch of files and add a bit of metadata.
Re: Makefiles for web work
#17Re: Makefiles for web work
#18I’m unconvinced. I don’t see a reasonable benefit for learning yet another config syntax just to run some scripts.
Re: Makefiles for web work
#19It's interesting, but I can't help but think that by the time you're adding `.PHONY` after most rules, you're not using the right tool for the job. (I generally find a small set of shell scripts work, or just three or four rules in the package.json file I can access with `npm run`).
I generally find shell/npm scripts work until you get to the few cases that actually benefit from the dependency management and then you wish you'd just given in to .PHONY, no matter how inelegant it may be.
The main problem `make` solved was not wasting work rebuilding dependencies that hadn't changed, but in 2023 on modern computers I don't notice the CPU cycles burned on that kind of thing.
(... if I do start to notice them, I reach for a tool like bazel, because it can handle spaces in filenames).
Re: Makefiles for web work
#20Edit: I don't see a publicized image - added an issue: https://github.com/casey/just/issues/1497
However, anyone could add a docker just for just for their own project and use it to pull in just for all their projects, avoiding a download command to get just in other Containerfiles.