chromium/build/linux/unbundle/absl_functional.gn

import("//build/config/linux/pkg_config.gni")
import("//build/shim_headers.gni")

pkg_config("system_absl_any_invocable") {
  packages = [ "absl_any_invocable" ]
}

shim_headers("any_invocable_shim") {
  root_path = "."
  prefix = "absl/functional/"
  headers = [ "any_invocable.h" ]
}

source_set("any_invocable") {
  deps = [ ":any_invocable_shim" ]
  public_configs = [ ":system_absl_any_invocable" ]
}

pkg_config("system_absl_bind_front") {
  packages = [ "absl_bind_front" ]
}

shim_headers("bind_front_shim") {
  root_path = "."
  prefix = "absl/functional/"
  headers = [ "bind_front.h" ]
}

source_set("bind_front") {
  deps = [ ":bind_front_shim" ]
  public_configs = [ ":system_absl_bind_front" ]
}

pkg_config("system_absl_function_ref") {
  packages = [ "absl_function_ref" ]
}

shim_headers("function_ref_shim") {
  root_path = "."
  prefix = "absl/functional/"
  headers = [ "function_ref.h" ]
}

source_set("function_ref") {
  deps = [ ":function_ref_shim" ]
  public_configs = [ ":system_absl_function_ref" ]
}

source_set("overload") {
  # Dummy — unavailable with abseil 202308 and chromium 122 does not use it
}

source_set("any_invocable_test") {
}
source_set("function_ref_test") {
}
source_set("overload_test") {
}