| #T gmake skip |
| #T grep-for: "2f7cdd0b-7277-48c1-beaf-56cb0dbacb24" |
| |
| ifdef __WIN32__ |
| PS:=; |
| else |
| PS:=: |
| endif |
| |
| export PATH := $(TESTPATH)/pathdir$(PS)$(PATH) |
| |
| # Test two commands. The first one shouldn't go through the shell and the |
| # second one should. The pathdir subdirectory has a Windows executable called |
| # pathtest.exe and a shell script called pathtest. We don't care which one is |
| # run, just that one of the two is (we use a uuid + grep-for to make sure |
| # that happens). |
| # |
| # FAQ: |
| # Q. Why skip GNU Make? |
| # A. Because $(TESTPATH) is a Windows-style path, and MSYS make doesn't take |
| # too kindly to Windows paths in the PATH environment variable. |
| # |
| # Q. Why use an exe and not a batch file? |
| # A. The use cases here were all exe files without the extension. Batch file |
| # lookup has broken semantics if the .bat extension isn't passed. |
| # |
| # Q. Why are the commands silent? |
| # A. So that we don't pass the grep-for test by mistake. |
| all: |
| @pathtest |
| @pathtest | grep -q 2f7cdd0b-7277-48c1-beaf-56cb0dbacb24 |
| @echo TEST-PASS |