Currently, modules built using module map files embed the path to the directory
that houses their inputs (e.g. headers and module map file) into the output
module file. This path is embedded as an absolute path and the various input
files are either relativized to this path (if they are underneath it) or also
embedded as an absolute path.
This adds a flag which disables use of this absolutmaking the module directory path andan absolute path.
instead writes out paths into thTo support relative module unmodified (e.g.directory paths, if they were specifiedthis diff also updates the serialized
on the command line as relativeAST to write out an extra bit with serialized paths to the CWD, then they remain relative toindicate whether they are
the CWD). This allows buildingrelative to the modules without any absolute paths directory or not (before this diff, allowing themthese were handled by
to be built and shared between different workingabsolutify paths that weren't relative the module directoriesy).