06b9b3e0ad
Quite a lot of churn on style, but lots of good work refactoring complicated functions and lots more unit-tests. Thanks mostly to rillig at NetBSD Some interesting entries from ChangeLog o .MAKE.{UID,GID} represent uid and gid running make. o allow env var MAKE_OBJDIR_CHECK_WRITABLE=no to skip writable checks in InitObjdir. Explicit .OBJDIR target always allows read-only directory. o add more unit tests for META MODE Merge commit '8e11a9b4250be3c3379c45fa820bff78d99d5946' into main Change-Id: I464fd4c013067f0915671c1ccc96d2d8090b2b9c
27 lines
842 B
Makefile
27 lines
842 B
Makefile
# $NetBSD: sh-errctl.mk,v 1.1 2020/12/12 15:06:11 rillig Exp $
|
|
#
|
|
# Test a shell with error control. This only works in jobs mode; in compat
|
|
# mode, the default shell is always used, see InitShellNameAndPath.
|
|
#
|
|
# There is a subtle difference between error control and echo control.
|
|
# With error control, each simple command is checked, whereas with echo
|
|
# control, only the last command from each line is checked. A shell command
|
|
# line that behaves differently in these two modes is "false; true". In
|
|
# error control mode, this fails, while in echo control mode, it succeeds.
|
|
|
|
.MAKEFLAGS: -j1 -dj
|
|
|
|
.SHELL: \
|
|
name="sh" \
|
|
path="${.SHELL}" \
|
|
hasErrCtl="yes" \
|
|
check="\# error checking on\nset -e" \
|
|
ignore="\# error checking off\nset +e" \
|
|
echo="\# echo on" \
|
|
quiet="\# echo off"
|
|
|
|
all:
|
|
@echo silent
|
|
-echo ignerr; false
|
|
+echo always
|