Clang would like to enable some language-version-specific functionality only if the installed C++ standard library supports it (so far, sized deallocation and aligned allocation, but more cases are expected to follow). Right now, it's hard for the Clang driver to determine which version of libc++ it's found (this is typically easy for libstdc++, since the version is right there in the path).
The idea here is that the __version file is always a single-line file that simply defines the libc++ version, and Clang can determine the installed version by just reading this file. There doesn't seem to be a way to make the file contain only the version number, so it contains the relevant #define instead.