Home | History | Annotate | Line # | Download | only in unit-tests
      1 # $NetBSD: sh-errctl.mk,v 1.1 2020/12/12 15:06:11 rillig Exp $
      2 #
      3 # Test a shell with error control.  This only works in jobs mode; in compat
      4 # mode, the default shell is always used, see InitShellNameAndPath.
      5 #
      6 # There is a subtle difference between error control and echo control.
      7 # With error control, each simple command is checked, whereas with echo
      8 # control, only the last command from each line is checked.  A shell command
      9 # line that behaves differently in these two modes is "false; true".  In
     10 # error control mode, this fails, while in echo control mode, it succeeds.
     11 
     12 .MAKEFLAGS: -j1 -dj
     13 
     14 .SHELL: \
     15 	name="sh" \
     16 	path="${.SHELL}" \
     17 	hasErrCtl="yes" \
     18 	check="\# error checking on\nset -e" \
     19 	ignore="\# error checking off\nset +e" \
     20 	echo="\# echo on" \
     21 	quiet="\# echo off"
     22 
     23 all:
     24 	@echo silent
     25 	-echo ignerr; false
     26 	+echo always
     27