They should also be cross-platform, provided they are used in a Unix-like environment, but I currently do not guarantee anything besides Linux (with GNU Make) in this regard, as I have yet to test ...
Makefile is a different language, is a group of instructions that when executed using the command make generates the output binaries. The binary names, how to generate them, the optimizations are ...