

lazymake: make for the rest of us - GitHub - bound008
https://github.com/anemitz/lazymake

======
anemitz
Jason stole my HN love here, but basically lazymake is a top-down recursive
build mechanism that's (hopefully) simpler to use than writing lengthy
makefiles for all the sub-components in the project.

At the heart of the system is a common makefile that defines rules for
building the targets. The sub-components can then define simpler makefiles,
which include just a list of directives (targets, sources, dependencies,
etc.). The common makefile interprets those directives, compiles them into
make targets and executes the make.

Would love to hear how everyone else deals with Makefiles for their random
side-projects. Don't be shy, C++ is still cool:)

~~~
apenwarr
What do you do for including a subproject that already has its own Makefiles?
For example, my huge build system includes a bunch of components, including
the Linux kernel and a bunch of libraries, as well as my app.

~~~
anemitz
I don't know if there's a 'correct' answer to this, but if you wanted to try
the path of least resistance you could make your existing sub-components build
with a RUNNABLE option in lazymake. You'd end up just using the existing make
files that way.

Not sure if that answers your question...

I generally stay away from building external dependancies at the same time as
my project. Whenever I start a new project that needs 3rd party libs I build
them all statically and version them off in my repo.

