Managing Projects with GNU Make

This is not really an article as such but as questions on using make files pop-up frequently I would like to draw peoples attention to this book:

Managing Projects with GNU Make, Third Edition
By Robert Mecklenburg

It is available in print from all good bookshops or alternatively you can go to the O'Reilly Open Books website and download the .PDFs (chapter by chapter).
closed account (S6k9GNh0)
So good, it needed two topics.
I think Make has gone through many versions and recent version seem to support even more functionalities. However, due to the popularity of Java and the classic ANT, most ppl have turned to ANT for their needs.

The only time we need to wade through Makefile is to do legacy program maintenance and also to understand some vendors that still shape their products with Makefile along.

However, for C++ libraries in particular, I guess the C++ developers still prefer Make over ANT :)
closed account (S6k9GNh0)
Most people haven't turned to ANT. I'd like to know where this information came from and what you base it on. Alternatives that simplify the basic tasks such as Jam, Cmake, etc. are becoming more popular but even then, Makefiles are still dominant. I've seen ANT in Java but hardly ever anywhere else.
Last edited on
I did emphasize ANT as related to Java isn't it ?

I did not say I discard Make but what I am saying is while Make move along so does ANT. As more IT projects is based on Java, most likely ANT will be the de-facto choice.

Of cuz it could be 10 years later, Java became deprecated due to new kid on the block (a new programming language), ANT will die a slow death :)

Hopefully 10 years later while ANT die, Make survived and still going strong. Then that moment is testament to Make immortality :P
Is this going to descend into another dumb-ass Java v's C++ thread?

The aim of the thread was to point the people asking about make files to a resource about make.
ANT is an old story. Many Java projects have migrated to Maven2 (which pretty much sucks) or the most advanced projects to Buildr / SBT (which are the story of the future). But C++ compilation system is probably too low-level to be supported by them fully. In C++, source dependency checking is a task for the build system. In the Java ecosystem, source dependency checking is a task for the compiler. Thus, I don't think old make is going anywhere.

Last edited on
Can you please stop killing the thread? Let it stay on topic. I know this sounds rich coming from me, given my history of derailing threads (which I haven't done outside of the Lounge for a long while), but this argument will go nowhere and is detracting from the quality of the article.
Topic archived. No new replies allowed.