Use `pipefail` so make sees command failures.
In a pipeline, normally only the exit code of the last command matters.
Thus when sending stuff through tee, a failure of the first command is
lost. `pipefail` makes sure that a failure on the first command causes a
failure exit code.
More info at
https://stackoverflow.com/questions/6871859/piping-command-output-to-tee-but-also-save-exit-code-of-command
Fixes #180 - "foundry_install.py script failing doesn't stop the build"
Signed-off-by: Tim 'mithro' Ansell <tansell@google.com>
diff --git a/sky130/Makefile.in b/sky130/Makefile.in
index caa9c05..44a343b 100644
--- a/sky130/Makefile.in
+++ b/sky130/Makefile.in
@@ -129,7 +129,12 @@
#
#--------------------------------------------------------------------
# This Makefile contains bash-isms
-SHELL = bash
+SHELL := /bin/bash
+export SHELL
+# We use pipes to save output to files, without pipefail they will always be
+# seen by make as having succeeded.
+SHELLOPTS := pipefail
+export SHELLOPTS
MV = mv
SED = @SED@