Introduction
When you want to run a project that has multiple sources, resources, etc., you need to make sure that all of the code is recompiled before the main program is compiled or run.
For example, imagine our software looks something like this:
main_program.source -> uses the