[clang] Allow clang only write module/pch when output is different (#198881)
Add an parameter to the output file creation function in clang to allow
it to configure output backend to only write output if the file is
different from the file on the disk. This is useful in a legacy build
system where the incremental build state is tracked by timestamp. For
example, producing the same clang module in the build will not update
the timestamp, thus downstream jobs do not need to be re-run.
The default value is not change so NFI is expected. This is only to
allow clients need such behavior to enable when needed.
Patched-by: hjyamauchi
Co-authored-by: Hiroshi Yamauchi <56735936+hjyamauchi@users.noreply.github.com>