I definitely think it's good that all files are lowercased in mingw so when porting software it's very predictable what needs to be done. On the other hand, it's really silly that when I write my software using the official Microsoft docs, it says "include Windows.h" and "Kernel32.lib", and then this fails on mingw. My suggestion: Simply symlink the proper captialisations that Microsoft themselves use and document to the lowercase variants to at least reduce the amount of mingw-specific changes ...