CMake 3.29.2 Update, main branch (2024.06.10.)
After some debugging, with trying to introduce LOG_PATCH to the ExternalProject_Add commands, just to see how the patch commands are being called exactly, I had to realize that the formalism we were using for calling patch, is not working anymore with CMake.
To explain myself a little: Unfortunately the cmake
command doesn't provide a platform-independent way for applying a patch file on a source tree. patch
. When one looks at the output of man patch
, the formalism it advertises for applying patch files is using the <
redirect operator. To pipe a file into the STDIN of the application with that. For whatever reason it is very shy about advertising its -i
command line option.
The way that CMake 3.28- was forwarding these patching commands to the shell has always been quite fragile. So this update will hopefully only make our builds more robust.