make: don't ignore errors
-e
-> abort on the first unhandled error encountered instead of
ignoring them and continuing.
-u
-> consider reading an unset variable an error.
-o pipefail
-> propagate the failure if the left part of a pipe fails.
Makes debugging a lot easier when you see the initial error, instead of losing it behind a ton of other errors caused by the first one.