"Building a better make" series
Please note that I'm moving all my personal website pages to my new blog on wordpress.com; this page may be removed at some point in the near future.
I'm writing / have written a series of blog posts on make, build systems, etc. This is an index of those posts. The below content was first found on my weblog.
- Building a better (make|ant|maven|...) -- Software build systems are broken. Way broken. I want them fixed. I have been thinking about that for many years now. I still haven't figured out how to go about fixing it all (yes, I really do mean all). Like so many other people, I'd love to.
- what is make? -- Before we go and talk about a better make, we should make sure we define what make actually is. Its a rather simple tool for transforming files from their source form into something else and doing some amount of dependencies tracking. Its a "dependency maintenance tool" and a "software construction tool" which is at its best when used together with other tools to form a "build system" and/or a "package management system".
- What is software management? -- "Managing software" and "managing software development" is a complex subject which is surrounded by a lot of bruhahah and fancy marketing presentations full of neat-looking flow charts and ambiguous terminology. I'm trying to establish some common vocabulary so we sort-of know what we're talking about.
- What is a better make? -- What exactly do I mean when I say "build a better make"? What do all those people that have tried to build a better make over the years mean? I've compiled a list of common complaints about make and added some of my own thoughts. I also look at some of the things that make is really good at that should be preserved.
- Evolving make -- Inventing another "better make" does not make sense. Its better to work with the maintainers of GNU make. I've taken a brief look at how make has evolved over the years. Pretty impressive.
- Buildsystems for games -- Thinking more about build systems, I figured the gaming industry must have some pretty complex problems to solve there as well. Indeed they do, and there's quite a bit of info about it readily found on the web. Performance is key, and no-one seems to care much about "open development". But with microsoft XNA on the horizon, that might change.