freebsd-nq/contrib/bmake/unit-tests/varname-dot-newline.mk
Simon J. Gerraty 2c3632d14f Update to bmake-20200902
Lots of code refactoring, simplification and cleanup.
Lots of new unit-tests providing much higher code coverage.
All courtesy of rillig at netbsd.

Other significant changes:

o new read-only variable .SHELL which provides the path of the shell
  used to run scripts (as defined by  the .SHELL target).

o variable parsing detects more errors.

o new debug option -dl: LINT mode, does the equivalent of := for all
  variable assignments so that file and line number are reported for
  variable parse errors.
2020-09-05 19:29:42 +00:00

24 lines
618 B
Makefile

# $NetBSD: varname-dot-newline.mk,v 1.3 2020/08/19 05:51:18 rillig Exp $
#
# Tests for the special .newline variable.
#
# Contrary to the special variable named "" that is used in expressions like
# ${:Usome-value}, the variable ".newline" is not protected against
# modification. Nobody exploits that though.
NEWLINE:= ${.newline}
.newline= overwritten
.if ${.newline} == ${NEWLINE}
.info The .newline variable cannot be overwritten. Good.
.else
.info The .newline variable can be overwritten. Just don't do that.
.endif
# Restore the original value.
.newline= ${NEWLINE}
all:
@echo 'first${.newline}second'