Home | History | Annotate | Line # | Download | only in unit-tests
      1  1.3  rillig # $NetBSD: suff.mk,v 1.3 2025/01/14 21:39:25 rillig Exp $
      2  1.1  rillig #
      3  1.1  rillig # Demonstrate suffix rules and dependency resolution.
      4  1.1  rillig 
      5  1.2  rillig 
      6  1.2  rillig # Circumvent the file system cache.
      7  1.2  rillig .if !make(init) && !make(step*)
      8  1.2  rillig all:
      9  1.2  rillig 	@${MAKE} -f ${MAKEFILE} init
     10  1.2  rillig 	@${MAKE} -f ${MAKEFILE} step1
     11  1.2  rillig .endif
     12  1.2  rillig 
     13  1.2  rillig 
     14  1.2  rillig .if make(init)
     15  1.2  rillig init:
     16  1.2  rillig .  if ${.PARSEDIR:tA} != ${.CURDIR:tA}
     17  1.2  rillig ${:U}!=		cd ${MAKEFILE:H} && cp a*.mk ${.CURDIR}
     18  1.2  rillig .  endif
     19  1.2  rillig .endif
     20  1.2  rillig 
     21  1.2  rillig 
     22  1.2  rillig .if make(step1)
     23  1.2  rillig step1: .PHONY edge-case.to everything
     24  1.1  rillig 
     25  1.1  rillig .MAKEFLAGS: -dsv
     26  1.1  rillig 
     27  1.1  rillig .SUFFIXES: .from .to
     28  1.1  rillig 
     29  1.1  rillig .from.to:
     30  1.1  rillig 	: Making ${.TARGET} from ${.ALLSRC}.
     31  1.1  rillig 
     32  1.1  rillig # When making this target, ${.ARCHIVE} is undefined, but there's no warning.
     33  1.3  rillig # expect: Var_Parse: ${.ARCHIVE}.additional (eval)
     34  1.1  rillig edge-case.to: ${.PREFIX}${.ARCHIVE}.additional
     35  1.1  rillig 
     36  1.1  rillig edge-case.from edge-case.additional:
     37  1.1  rillig 	: Making ${.TARGET} out of nothing.
     38  1.1  rillig 
     39  1.1  rillig everything: .PHONY a*.mk
     40  1.1  rillig 	: Making ${.TARGET} from ${.ALLSRC}.
     41  1.2  rillig .endif
     42