
The World's Most Boring Build System - yakshaving_jgt
http://jezenthomas.com/the-worlds-most-boring-build-system/
======
dozzie
But wait, your build system is not stupidly tied to a library manager and
installer! How are we supposed to live with that? Like, you want us to
actually consider what's a necessary dependency for our projects to work?
Outrageous!

------
foldr
I've never seen a good way of dealing with nested directories in make. E.g.,
say you have the following directory layout:

    
    
        /foo/a.js
        /foo/b/c.js
        /foo/d/e.js
    

And you want minified files to be written to:

    
    
        /bar/a.js
        /bar/b/c.js
        /bar/d/e.js
    

I'm not a huge fan of Grunt/Gulp, but doing this is very easy using those
tools.

~~~
roolebo
I can see what are you talking about. You need to use order only dependencies
for this:
[https://www.gnu.org/software/make/manual/html_node/Prerequis...](https://www.gnu.org/software/make/manual/html_node/Prerequisite-
Types.html)

~~~
foldr
How do those help exactly? I believe you, but it's far from obvious, and it
arguably makes more sense to use Gulp than to fiddle around with obscure
features of GNU Make.

~~~
roolebo
Order-only prerequisites are needed whenever your rules depend on existence of
some directories. So directories become make goals too in a sense. Obviously
it's way too tedious to write all that by hand.

You can have some sort of high-level js.mk scattered in each directory of your
project, then there's a top level Makefile which will include all those js.mk
files and expand them from high level definitions to make rules.

Make is good only if you create a sort of framework around for your domain.
However the learning curve is way too steep. I would only attempt to use make
if Gulp does its job horribly bad.

