In theory the clang module map should not have absolute paths for the headers. Other Swift projects seem to use the -ivfsoverlay feature of clang to work around this, but it seems difficult to get to work.