GNU Make & Makefiles Crash Course for Build Automation