diff options
author | John Ankarström <john@ankarstrom.se> | 2021-07-09 15:32:09 +0200 |
---|---|---|
committer | John Ankarström <john@ankarstrom.se> | 2021-07-09 15:33:54 +0200 |
commit | 3019c48804fb43f97d5c8e8ee15b5ae13ab1c4a9 (patch) | |
tree | 40fb553b67fbcdbc3a6d50a263cea3261680d800 /build.1 | |
parent | e57e5137040e65dd82474bc4c590c8c23cfce509 (diff) | |
download | build-3019c48804fb43f97d5c8e8ee15b5ae13ab1c4a9.tar.gz |
Use set -e, -x in shell process, handle exit status correctly
This makes the default behavior like make(1), but it is configurable.
Furthermore, it is still a single shell process, which is arguably
a benefit.
Diffstat (limited to 'build.1')
-rw-r--r-- | build.1 | 16 |
1 files changed, 4 insertions, 12 deletions
@@ -77,17 +77,9 @@ This means that you can keep state across multiple commands. Note that all commands are executed regardless of the exit status of previous commands. .Pp +If a command fails, .Nm -exits with a positive status if a command failed. -Note that it checks the status -of the entire command sent to the shell, -not the individual command lines. -To emulate the behavior of -.Xr make 1 , -which fails if any individual command line fails, -you can use -.Ql set -e -in your command line. +exits with a positive status and aborts the build process. . .Sh EXAMPLES .Pp @@ -120,8 +112,8 @@ Assuming that the file starts with the following text, .Bd -literal -offset indent \&.\\" This document is built with the following shell commands: -\&.\\" $ refer -p refs doc.t | troff -ms | dpost > doc.ps && -\&.\\" $ ps2pdf doc.ps > doc.pdf && +\&.\\" $ refer -p refs doc.t | troff -ms | dpost > doc.ps +\&.\\" $ ps2pdf doc.ps > doc.pdf \&.\\" $ rm doc.ps \&. \&.\\" Apart from this file, it depends on the following files: |