[libc++] Re-apply parts of 3ea9450bda90 "Migrate Lit platform detection to the DSL"
The commit was reverted in 43c4afb56ff0 because it broke the Windows to
Linux cross-compilation build bots. The issue turned out to be that the
bots were setting the LIBCXX_EXECUTOR incorrectly. This has been fixed
now and verified with the bot owners.
Note that this is only a partial re-application of the commit, since
non-problematic parts of the commits have already been re-applied earlier.