[bazel] Restore libpfm as a conditional dependency for exegesis.
authorJordan Rupprecht <rupprecht@google.com>
Wed, 28 Dec 2022 16:13:20 +0000 (08:13 -0800)
committerJordan Rupprecht <rupprecht@google.com>
Wed, 28 Dec 2022 16:13:20 +0000 (08:13 -0800)
commit4aa77690b98e564c598505749d4eb57b9a8be32c
tree49fe85e2b311a7425b3028fcdb484b697a167e7a
parent243b1e97d6cdc36d94f422e9f273c97054520d2e
[bazel] Restore libpfm as a conditional dependency for exegesis.

We used to have `pfm` built into exegesis, although since it's an external dependency we marked it as a manual target. Because of this we didn't have buildbot coverage and so we removed it in D134510 after we had a few breakages that weren't caught. This adds it back, but with three possible states similar to the story with `mpfr`, i.e. it can either be disabled, built from external sources (git/make), or use whatever `-lpfm` is installed on the system.

This change is modeled after D119547. Like that patch, the default is off (matching the status quo), but unlike that patch we don't enable it for CI because IIRC we don't have the package installed there, and building from source might be expensive. We could  enable it later either after installing it on buildbot machines or by measuring build cost and deeming it OK.

Reviewed By: GMNGeoffrey

Differential Revision: https://reviews.llvm.org/D138470
utils/bazel/.bazelrc
utils/bazel/WORKSPACE
utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
utils/bazel/third_party_build/pfm.BUILD [new file with mode: 0644]