Home | History | Annotate | Line # | Download | only in unit-tests
job-output.mk revision 1.1
      1  1.1  rillig # $NetBSD: job-output.mk,v 1.1 2025/06/05 21:56:54 rillig Exp $
      2  1.1  rillig #
      3  1.1  rillig # Tests for handling the output in parallel mode.
      4  1.1  rillig 
      5  1.1  rillig all: .PHONY
      6  1.1  rillig 	@${MAKE} -f ${MAKEFILE} -j1 empty-lines
      7  1.1  rillig 	@${MAKE} -f ${MAKEFILE} -j1 stdout-and-stderr
      8  1.1  rillig 	@${MAKE} -f ${MAKEFILE} -j1 echo-on-stdout-and-stderr
      9  1.1  rillig 
     10  1.1  rillig # By sleeping for a second, the output of the child process is written byte
     11  1.1  rillig # by byte, to be consumed in small pieces by make.
     12  1.1  rillig #
     13  1.1  rillig # FIXME: When reading an isolated newline character in CollectOutput, it is
     14  1.1  rillig # not passed on to the main output.
     15  1.1  rillig empty-lines: .PHONY
     16  1.1  rillig 	@echo begin $@
     17  1.1  rillig 	@sleep 1
     18  1.1  rillig 	@echo
     19  1.1  rillig 	@sleep 1
     20  1.1  rillig 	@echo
     21  1.1  rillig 	@sleep 1
     22  1.1  rillig 	@echo end $@
     23  1.1  rillig 
     24  1.1  rillig # In parallel mode, both stdout and stderr from the child process are
     25  1.1  rillig # collected in a local buffer and then written to make's stdout.
     26  1.1  rillig #
     27  1.1  rillig # expect: begin stdout-and-stderr
     28  1.1  rillig # expect: only stdout:
     29  1.1  rillig # expect: This is stdout.
     30  1.1  rillig # expect: This is stderr.
     31  1.1  rillig # expect: only stderr:
     32  1.1  rillig # expect: end stdout-and-stderr
     33  1.1  rillig stdout-and-stderr:
     34  1.1  rillig 	@echo begin $@
     35  1.1  rillig 	@echo only stdout:
     36  1.1  rillig 	@${MAKE} -f ${MAKEFILE} echo-on-stdout-and-stderr 2>/dev/null
     37  1.1  rillig 	@echo only stderr:
     38  1.1  rillig 	@${MAKE} -f ${MAKEFILE} echo-on-stdout-and-stderr 1>/dev/null
     39  1.1  rillig 	@echo end $@
     40  1.1  rillig 
     41  1.1  rillig echo-on-stdout-and-stderr: .PHONY
     42  1.1  rillig 	@echo This is stdout.
     43  1.1  rillig 	@echo This is stderr. 1>&2
     44