On 10/30/2014 01:55 PM, Richard Shaw wrote: > I'm working on a big update to the FindFLTK module and I'm > testing it on all platforms I have access to. > > One problem that took me quite a while to figure out was that > on *nix systems, execute_process works with shell scripts but > on my MSYS2 install it does not, I have to prefix the command > with "sh" to make sure it executes in a shell. > > Is this known/expected?
Yes. It is not execute_process, but the underlying operating system process launching rules. A shell script starts in a "shebang" (#!) line that the OS knows how to interpret to decide what program to run to launch the script. Windows does not know how to do this so we have to specify a shell explicitly. MSYS is Windows, not POSIX/Cygwin. > Should I prefix shell scripts with "sh" in all cases and not > count on it to work? Or should I test for MSYS and only prefix > the command with "sh" there? Using 'sh' should be safe. -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers
