[CMake][Release] Disable PGO (#88465) (#89000)llvmorg-18.1.4
commite6c3289804a67ea0bb6a86fadbe454dd93b8d855
authorTom Stellard <tstellar@redhat.com>
Wed, 17 Apr 2024 00:21:15 +0000 (16 17:21 -0700)
committerGitHub <noreply@github.com>
Wed, 17 Apr 2024 00:21:15 +0000 (16 17:21 -0700)
tree6406d18a97ae4a051f9c1aafacf7994de2e12923
parent028e425f86ccff44aa521c2e2ac428dbda2c13d4
[CMake][Release] Disable PGO (#88465) (#89000)

Running the test-release.sh script with PGO enabled causes build errors
like:

ld.lld: error: Function Import: link error: linking module flags
'ProfileSummary': IDs have conflicting values

I believe this a build system bug due to the PGO profile data being
generated unconditionally. If you run `ninja check-all` and then `ninja
install` like we do in test-release.sh, then the profile data is
regenerated during `ninja install` and some of the clang tools which are
not test dependencies get build during the ninja install step with
different profile data. When these tools link against the LLVM
libraries, like libSupport, we end up with these errors.

(cherry picked from commit 0d2bb7f017f13ceae793fab7d83d3e67e8d8d8f8)
clang/cmake/caches/Release.cmake