This change configures Windows builds to build the complier-rt profile support library (clang_rt.profile-i386.lib). Windows API incompatibilities in the compiler-rt profile lib are also fixed.
I thought public domain means that there are no restrictions whatsoever - including re-licensing, selling, etc. No need for attribution even.
I modeled this after the MD5 attribution:
mmap-windows.c gets #included directly in GCDAProfiling.c since the compatibility mmap()/msync()/flock() functions are not used anywhere else (they are static).
I agree it is a bit odd - and CMake won't properly detect changes to mmap-windows.c the way things are now. Perhaps it would be better to mark them with COMPILER_RT_VISIBILITY (and not static).
Updated for davidxl's comments
-refactor Windows mmap compatibility code to have a header file, not include implementation with static functions directly
-switch to C-style comments in Windows mmap compatibility code