0001-Use-libpfm-by-default-on-supported-platforms.patch 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. From 4110acfa9a131a5a93ae4caef26bd34dd5509155 Mon Sep 17 00:00:00 2001
  2. From: Chandler Carruth <chandlerc@gmail.com>
  3. Date: Sat, 13 Jan 2024 02:58:47 -0800
  4. Subject: [PATCH] Use libpfm by default on supported platforms.
  5. ---
  6. BUILD.bazel | 26 ++++++++++++++++++--------
  7. 1 file changed, 18 insertions(+), 8 deletions(-)
  8. diff --git a/BUILD.bazel b/BUILD.bazel
  9. index 60d31d2..c313c8a 100644
  10. --- a/BUILD.bazel
  11. +++ b/BUILD.bazel
  12. @@ -1,3 +1,5 @@
  13. +load("@bazel_skylib//lib:selects.bzl", "selects")
  14. +
  15. licenses(["notice"])
  16. config_setting(
  17. @@ -24,12 +26,20 @@ config_setting(
  18. visibility = ["//visibility:public"],
  19. )
  20. -config_setting(
  21. - name = "perfcounters",
  22. - define_values = {
  23. - "pfm": "1",
  24. - },
  25. - visibility = [":__subpackages__"],
  26. +selects.config_setting_group(
  27. + name = "aarch64_or_x86_64",
  28. + match_any = [
  29. + "@platforms//cpu:aarch64",
  30. + "@platforms//cpu:x86_64",
  31. + ],
  32. +)
  33. +
  34. +selects.config_setting_group(
  35. + name = "linux_aarch64_or_x86_64",
  36. + match_all = [
  37. + "@platforms//os:linux",
  38. + ":aarch64_or_x86_64",
  39. + ],
  40. )
  41. cc_library(
  42. @@ -62,11 +72,11 @@ cc_library(
  43. defines = [
  44. "BENCHMARK_STATIC_DEFINE",
  45. ] + select({
  46. - ":perfcounters": ["HAVE_LIBPFM"],
  47. + ":linux_aarch64_or_x86_64": ["HAVE_LIBPFM"],
  48. "//conditions:default": [],
  49. }),
  50. deps = select({
  51. - ":perfcounters": ["@libpfm//:libpfm"],
  52. + ":linux_aarch64_or_x86_64": ["@libpfm//:libpfm"],
  53. "//conditions:default": [],
  54. }),
  55. )
  56. --
  57. 2.43.0