Tests ----- This directory contains a regression testsuite. See the driver testsuite.sh for naming convention. The tests are run by a unix shell like bash (not a c-shell). This is fine under Linux and MacOS-X, but creates issues on Windows. Here are some tips for portability. - Do not create complex driver, keep them simple. - pipes (commands list separated by |) do not work well on windows if one process exits early. On unix, writers are killed by SIGPIPE but on windows they aren't (SIGPIPE doesn't exist) and reports errors. So avoid program that may exit before reading all the input: * instead of 'grep -q xxx', use 'grep xxx > /dev/null' - reference files use unix end of line. Use 'diff --strip-trailing-cr' to compare expected output with a reference file. - don't forget that executable files have a .exe suffix on windows, but most cygwin tools transparently add the suffix. - For VPI tests, the directory containing the dll file must be added in PATH. See issue98 for an example. - As a last resort, you can test if you are on Windows: if [ "$OS" = "Windows_NT" ]; then ...