Skip to content

Instantly share code, notes, and snippets.

@icholy
Created December 13, 2012 19:54
Show Gist options
  • Save icholy/4279254 to your computer and use it in GitHub Desktop.
Save icholy/4279254 to your computer and use it in GitHub Desktop.

For the past couple days I have been learning how to use autotools and friends. Compared to writing makefiles manually, the autofriends are awesome.

AutoTools

But I can't say I like it either. The problem isn't that it's limited or broken. The issue is that there is 100 different ways to do the same thing. Also, even though there's autoscan to help a bit, you still end up writing lots of boilerplate code just to get up and running.

Scons

I already looked at scons. Python is my favourite scripting language behind javascript so it seemed perfect. It's really complicated though, or maybe I'm just not smart enough for it.

CMake

Regardless, I eventually tried out cmake and it was love at first sight. It's simple, lots of sane defaults, and can generate projects for lots of other ide's and build systems.

At the end of the day, I'm happy I learned the basics of the autotools before making the switch to cmake. Now I know what's going on behing the scene when I ./configure && make && make install. But I'll never use it in my own projects if I have anything to say about it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment