This patch changes the PCM serialization logic to refer to input files by their "requested" name. This fixes a bug where the dependency scanner reports the "final" file paths, which can result in failed explicit compiles due to the module.modulemap file not being surrounded by the expected framework directory structure.
Depends on D135634.
Was this canonicalization necessary? If this is needed can we do it in the implicit module build so that it is serialized with the correct path? That seems better for both stability of the implicit module build and avoids re-canonicalizing the path every time it is scanned.