blob: 1bf0050f543bdc58186c0212b335b00881028468 [file] [log] [blame]
# Copyright 2023 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# See README.md for details.
import("//build/bazel/export_fuchsia_package_to_bazel.gni")
import("//build/components.gni")
import("//src/fonts/build/font_asset_provider.gni")
import("//src/fonts/build/fonts.gni")
group("asset_providers") {
testonly = true
deps = [
":common",
":open-fonts-collection",
":small-open-fonts-collection",
]
}
# Hermetic font server.
fuchsia_component_manifest("server.manifest") {
manifest = "meta/font-server.cml"
component_name = "font-server"
}
fuchsia_component("server.component") {
cm_label = ":server.manifest"
component_name = "font-server"
deps = [ "//src/fonts:font_provider" ]
}
fuchsia_package("server.package") {
package_name = "font-server"
deps = [ ":server.component" ]
}
# Hermetic asset provider.
fuchsia_component_manifest("asset-provider.manifest") {
manifest = "meta/asset-provider.cml"
component_name = "asset-provider"
}
# Common font asset provider components.
#
# Used by font_asset_provider.gni.
group("common") {
public_deps = [
# Package and component for the asset provider are font collection
# dependent.
":asset-provider.manifest",
":provider.package",
":server.package",
]
}
# Top level fonts provider component.
fuchsia_component_manifest("provider.manifest") {
manifest = "meta/fonts.cml"
component_name = "fonts"
}
fuchsia_component("provider.component") {
cm_label = ":provider.manifest"
component_name = "fonts"
}
fuchsia_package("provider.package") {
package_name = "fonts"
deps = [ ":provider.component" ]
}
# Generate bazel inputs for the font asset provider packages above.
group("bazel_inputs") {
public_deps = [
":open-fonts-collection-bazel",
":small-open-fonts-collection-bazel",
]
}
# Font asset provider definitions.
# Expect to have one for each font collection in //src/fonts/collections.
font_asset_provider("open-fonts-collection") {
deps = [ "//src/fonts/collections:open-fonts-collection" ]
}
export_fuchsia_package_to_bazel("open-fonts-collection-bazel") {
package = ":open-fonts-collection.asset-provider.package"
}
font_asset_provider("small-open-fonts-collection") {
deps = [ "//src/fonts/collections:small-open-fonts-collection" ]
}
export_fuchsia_package_to_bazel("small-open-fonts-collection-bazel") {
package = ":small-open-fonts-collection.asset-provider.package"
}