Home | History | Annotate | Line # | Download | only in unit-tests
      1  1.3  rillig # $NetBSD: varname-vpath.mk,v 1.3 2020/11/10 00:19:19 rillig Exp $
      2  1.1  rillig #
      3  1.3  rillig # Tests for the special VPATH variable, which is an obsolete way of
      4  1.3  rillig # specifying a colon-separated search path.  This search path is not active
      5  1.3  rillig # when the makefiles are read, but only later when the shell commands are run.
      6  1.3  rillig #
      7  1.3  rillig # Instead of the VPATH, better use the -I option or the special target .PATH.
      8  1.3  rillig 
      9  1.3  rillig .if !defined(TEST_MAIN)
     10  1.3  rillig 
     11  1.3  rillig all: .SILENT
     12  1.3  rillig 	rm -rf varname-vpath.dir
     13  1.3  rillig 	mkdir varname-vpath.dir
     14  1.3  rillig 	touch varname-vpath.dir/file-in-subdirectory
     15  1.3  rillig 	rm -rf varname-vpath.dir2
     16  1.3  rillig 	mkdir varname-vpath.dir2
     17  1.3  rillig 	touch varname-vpath.dir2/file2-in-subdirectory
     18  1.3  rillig 
     19  1.3  rillig 	TEST_MAIN=yes VPATH=varname-vpath.dir:varname-vpath.dir2 \
     20  1.3  rillig 		${MAKE} -f ${MAKEFILE} -dc
     21  1.1  rillig 
     22  1.3  rillig 	rm -r varname-vpath.dir
     23  1.3  rillig 	rm -r varname-vpath.dir2
     24  1.3  rillig 
     25  1.3  rillig .else
     26  1.3  rillig 
     27  1.3  rillig # The VPATH variable does not take effect at parse time.
     28  1.3  rillig # It is evaluated only once, between reading the makefiles and making the
     29  1.3  rillig # targets.  Therefore it could also be an ordinary variable, it doesn't need
     30  1.3  rillig # to be an environment variable or a command line variable.
     31  1.3  rillig .  if exists(file-in-subdirectory)
     32  1.3  rillig .    error
     33  1.3  rillig .  endif
     34  1.3  rillig .  if exists(file2-in-subdirectory)
     35  1.3  rillig .    error
     36  1.3  rillig .  endif
     37  1.1  rillig 
     38  1.1  rillig all:
     39  1.3  rillig 	: ${exists(file-in-subdirectory):L:?yes 1:no 1}
     40  1.3  rillig 	: ${exists(file2-in-subdirectory):L:?yes 2:no 2}
     41  1.3  rillig 
     42  1.3  rillig .endif
     43