build/pymake/tests/vpath-directive.mk

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/build/pymake/tests/vpath-directive.mk	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,31 @@
     1.4 +# On Windows, MSYS make takes Unix paths but Pymake takes Windows paths
     1.5 +VPSEP := $(if $(and $(__WIN32__),$(.PYMAKE)),;,:)
     1.6 +
     1.7 +$(shell \
     1.8 +mkdir subd1 subd2 subd3; \
     1.9 +printf "reallybaddata" >subd1/foo.in; \
    1.10 +printf "gooddata" >subd2/foo.in; \
    1.11 +printf "baddata" >subd3/foo.in; \
    1.12 +touch subd1/foo.in2 subd2/foo.in2 subd3/foo.in2; \
    1.13 +)
    1.14 +
    1.15 +vpath %.in subd
    1.16 +
    1.17 +vpath
    1.18 +vpath %.in subd2$(VPSEP)subd3
    1.19 +
    1.20 +vpath %.in2 subd0
    1.21 +vpath f%.in2 subd1
    1.22 +vpath %.in2 $(VPSEP)subd2
    1.23 +
    1.24 +%.out: %.in
    1.25 +	test "$<" = "subd2/foo.in"
    1.26 +	cp $< $@
    1.27 +
    1.28 +%.out2: %.in2
    1.29 +	test "$<" = "subd1/foo.in2"
    1.30 +	cp $< $@
    1.31 +
    1.32 +all: foo.out foo.out2
    1.33 +	test "$$(cat foo.out)" = "gooddata"
    1.34 +	@echo TEST-PASS

mercurial