How does one recursively copy files in Make? I'd like to make this as platform-neutral; in particular, I need this to work on plain Windows (no cp -r, no rsync, no cygwin, no Interix, etc.) and I would like for it to work in Linux with minimal changes (no robocopy, no xcopy/xcopy32). The environment where I work is very Windows-centric, and I'd like to make it possible for us to move to a Unix/Unix-like environment. Ideally, this should be standalone (few external dependencies), and it should only copy the files if they don't exist in the destination or the files in the destination are older than the source files.
Objective: Recursively walk ${SOURCE} and copy to analgous locations in ${DESTINATION} if the file doesn't exist or the corresponding file in ${DESTINATION} is older than the source.
I've seen How to copy a directory in a Makefile? and Recursive wildcards in GNU make?, but the solutions will not work in the Windows-centric environment where I work.