7.5

Make

time to wake up

You must include a Makefile in the assignment directory, for use with make. Please see the documentation for make:

on Makefiles and make

If a Makefile is present, we will run ‘make‘ in the assignment directory before running your executable. The executable itself is be created by the running make; it does not have to be checked in to your repository.

Make rules specify the target file they will create before the colon and any files they rely on after it, e.g.

a.out: main.cpp, helper.h

 g++ main.cpp ...

this way, if you have another rule that requires the output file, e.g.

test: a.out

 ...

then running make test will only recompile if a.out is not present or its dependencies have changed.

If you do have a rule like test or clean which doesn’t produce a file with the same name as its target, you’ll want to add them as dependencies of the special rule .PHONY to prevent make getting confused if a file with that name is present in the folder, like so:

.PHONY: test, clean

More information here.