https://aziflaj.github.io/posts/using-makefiles-for-build-automation/