The runtime wrapper on cygwin produces lt-foo.exe.exe if libtool is called with a target filename ending with .exe AFAICT this is due to forcing the .exe exeext on cygwin to allow mv to work. This patch trims .exe from the outputname if it is present. Without this, changing a source file, running make && ./foo results in an old exe being run by the wrapper script. Rob