From memory (sry its been a little while!), I split these up as it started to feel very clumsy left in a single file. I then ran into the UAVOBJGENERATOR macro and I figured it was a logical time to split the OS specific things up.

I was planning to move some of the tools macros into OS specific files, for example the QT_SDK_QMAKE_PATH (or something like QT_SDK_DEFAULT_QMAKE_PATH) have different values dependent upon OS. The tools.mk file (to me!) currently seems a mix between setting some defaults to guess where tools are installed, and some targets designed to get a toolchain up and running.

I have a tools.mk file and with parts moved into the OS specific files in another branch, the idea was to have the make file guess/test at using the QT "default" installer location, if it can't find it, guess/test for the tools in the tools dir, and then fall back to the path similar to what it does now.

To me, the tools dir is bad practice, and yes I realize others do not share the same view, I was hoping to come up with something that works whichever way someone wants to setup their system.