blob: ed179d556bac50b78879bfcac950c41bd19ea778 [file] [log] [blame]
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
assert(is_fuchsia)
import("fuchsia_sdk_pkg.gni")
config("sdk_lib_dirs_config") {
visibility = [ ":*" ]
lib_dirs = [ "sdk/arch/${target_cpu}/lib" ]
}
fuchsia_sdk_pkg("async") {
sources = [
"include/lib/async/dispatcher.h",
"include/lib/async/receiver.h",
"include/lib/async/task.h",
"include/lib/async/time.h",
"include/lib/async/trap.h",
"include/lib/async/wait.h",
"ops.c",
]
}
# async-default keep a per-thread dispatcher for async.
fuchsia_sdk_pkg("async_default") {
package_name = "async-default"
sources = [
"include/lib/async/default.h",
]
libs = [ "async-default" ]
}
fuchsia_sdk_pkg("fdio") {
sources = [
"include/lib/fdio/debug.h",
"include/lib/fdio/io.h",
"include/lib/fdio/limits.h",
"include/lib/fdio/module.modulemap",
"include/lib/fdio/namespace.h",
"include/lib/fdio/private.h",
"include/lib/fdio/remoteio.h",
"include/lib/fdio/socket.h",
"include/lib/fdio/spawn.h",
"include/lib/fdio/util.h",
"include/lib/fdio/vfs.h",
"include/lib/fdio/watcher.h",
]
libs = [ "fdio" ]
}
fuchsia_sdk_pkg("fidl") {
# FIDL headers include async headers. These dependencies needs to be public
# to ensure that dependent targets get correct include paths.
public_deps = [
":async",
":async_default",
]
sources = [
"builder.cpp",
"decoding.cpp",
"encoding.cpp",
"formatting.cpp",
"include/lib/fidl/coding.h",
"include/lib/fidl/cpp/builder.h",
"include/lib/fidl/cpp/message.h",
"include/lib/fidl/cpp/message_buffer.h",
"include/lib/fidl/cpp/message_builder.h",
"include/lib/fidl/cpp/message_part.h",
"include/lib/fidl/cpp/string_view.h",
"include/lib/fidl/cpp/vector_view.h",
"include/lib/fidl/internal.h",
"message.cpp",
"message_buffer.cpp",
"message_builder.cpp",
"validating.cpp",
]
}
fuchsia_sdk_pkg("fidl_cpp") {
public_deps = [
":fidl",
":fidl_cpp_sync",
":fit",
":zx",
]
sources = [
"clone.cc",
"include/lib/fidl/cpp/binding.h",
"include/lib/fidl/cpp/binding_set.h",
"include/lib/fidl/cpp/clone.h",
"include/lib/fidl/cpp/interface_ptr.h",
"include/lib/fidl/cpp/interface_ptr_set.h",
"include/lib/fidl/cpp/internal/header.h",
"include/lib/fidl/cpp/internal/implementation.h",
"include/lib/fidl/cpp/internal/message_handler.h",
"include/lib/fidl/cpp/internal/message_reader.h",
"include/lib/fidl/cpp/internal/pending_response.h",
"include/lib/fidl/cpp/internal/proxy.h",
"include/lib/fidl/cpp/internal/proxy_controller.h",
"include/lib/fidl/cpp/internal/stub.h",
"include/lib/fidl/cpp/internal/stub_controller.h",
"include/lib/fidl/cpp/internal/weak_stub_controller.h",
"include/lib/fidl/cpp/optional.h",
"include/lib/fidl/cpp/string.h",
"include/lib/fidl/cpp/thread_safe_binding_set.h",
"internal/message_handler.cc",
"internal/message_reader.cc",
"internal/pending_response.cc",
"internal/proxy.cc",
"internal/proxy_controller.cc",
"internal/stub.cc",
"internal/stub_controller.cc",
"internal/weak_stub_controller.cc",
"string.cc",
]
}
fuchsia_sdk_pkg("fidl_cpp_sync") {
public_deps = [
":fidl",
":fit",
":zx",
]
sources = [
"coding_traits.cc",
"decoder.cc",
"encoder.cc",
"include/lib/fidl/cpp/array.h",
"include/lib/fidl/cpp/coding_traits.h",
"include/lib/fidl/cpp/comparison.h",
"include/lib/fidl/cpp/decoder.h",
"include/lib/fidl/cpp/encoder.h",
"include/lib/fidl/cpp/interface_handle.h",
"include/lib/fidl/cpp/interface_request.h",
"include/lib/fidl/cpp/internal/logging.h",
"include/lib/fidl/cpp/internal/synchronous_proxy.h",
"include/lib/fidl/cpp/synchronous_interface_ptr.h",
"include/lib/fidl/cpp/traits.h",
"include/lib/fidl/cpp/vector.h",
"internal/logging.cc",
"internal/synchronous_proxy.cc",
]
}
fuchsia_sdk_pkg("fit") {
sources = [
"include/lib/fit/function.h",
]
}
fuchsia_sdk_fidl_pkg("fonts") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"font_provider.fidl",
]
deps = [
":mem",
]
}
fuchsia_sdk_fidl_pkg("gfx") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"commands.fidl",
"display_info.fidl",
"events.fidl",
"hit.fidl",
"nodes.fidl",
"renderer.fidl",
"resources.fidl",
"shapes.fidl",
"types.fidl",
]
deps = [
":images",
":vectorial",
]
}
fuchsia_sdk_fidl_pkg("images") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"encoded_image.fidl",
"image_info.fidl",
"image_pipe.fidl",
"memory_type.fidl",
"presentation_info.fidl",
]
}
fuchsia_sdk_fidl_pkg("input") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"commands.fidl",
"ime_service.fidl",
"input_connection.fidl",
"input_device_registry.fidl",
"input_dispatcher.fidl",
"input_event_constants.fidl",
"input_events.fidl",
"input_reports.fidl",
"text_editing.fidl",
"text_input.fidl",
"usages.fidl",
]
}
fuchsia_sdk_fidl_pkg("math") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"math.fidl",
]
}
fuchsia_sdk_fidl_pkg("media") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"audio.fidl",
"audio_device_enumerator.fidl",
"audio_in.fidl",
"audio_out.fidl",
"audio_renderer.fidl",
"gain_control.fidl",
"stream.fidl",
"stream_type.fidl",
]
}
fuchsia_sdk_fidl_pkg("mem") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"buffer.fidl",
]
}
fuchsia_sdk_fidl_pkg("netstack") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"net_address.fidl",
"netstack.fidl",
]
}
fuchsia_sdk_fidl_pkg("oldhttp") {
namespace = "fuchsia.net"
namespace_path = "fuchsia/net"
sources = [
"http_error.fidl",
"http_header.fidl",
"http_service.fidl",
"url_body.fidl",
"url_loader.fidl",
"url_request.fidl",
"url_response.fidl",
]
deps = [
":mem",
]
}
fuchsia_sdk_fidl_pkg("policy") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"display_usage.fidl",
"presentation.fidl",
"presenter.fidl",
]
deps = [
":viewsv1",
]
}
fuchsia_sdk_fidl_pkg("scenic") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"commands.fidl",
"events.fidl",
"scenic.fidl",
"session.fidl",
]
deps = [
":gfx",
":input",
":sys",
":views",
]
}
fuchsia_sdk_pkg("svc") {
sources = [
"include/lib/svc/dir.h",
]
libs = [ "svc" ]
}
fuchsia_sdk_fidl_pkg("sys") {
namespace = "fuchsia"
namespace_path = "fuchsia"
sources = [
"component_controller.fidl",
"environment.fidl",
"environment_controller.fidl",
"flat_namespace.fidl",
"launcher.fidl",
"loader.fidl",
"runner.fidl",
"service_provider.fidl",
]
deps = [
":mem",
]
}
fuchsia_sdk_fidl_pkg("vectorial") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"commands.fidl",
"events.fidl",
]
}
fuchsia_sdk_fidl_pkg("views") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"commands.fidl",
"events.fidl",
]
deps = [
":gfx",
":images",
]
}
fuchsia_sdk_fidl_pkg("viewsv1") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"view_containers.fidl",
"view_manager.fidl",
"view_properties.fidl",
"view_provider.fidl",
"view_tree_token.fidl",
"view_trees.fidl",
"views.fidl",
]
deps = [
":gfx",
":images",
":math",
":scenic",
":viewsv1token",
]
}
fuchsia_sdk_fidl_pkg("viewsv1token") {
namespace = "fuchsia.ui"
namespace_path = "fuchsia/ui"
sources = [
"view_token.fidl",
]
}
fuchsia_sdk_pkg("zx") {
sources = [
"channel.cpp",
"event.cpp",
"eventpair.cpp",
"fifo.cpp",
"guest.cpp",
"include/lib/zx/bti.h",
"include/lib/zx/channel.h",
"include/lib/zx/event.h",
"include/lib/zx/eventpair.h",
"include/lib/zx/fifo.h",
"include/lib/zx/guest.h",
"include/lib/zx/handle.h",
"include/lib/zx/interrupt.h",
"include/lib/zx/job.h",
"include/lib/zx/log.h",
"include/lib/zx/object.h",
"include/lib/zx/object_traits.h",
"include/lib/zx/pmt.h",
"include/lib/zx/port.h",
"include/lib/zx/process.h",
"include/lib/zx/resource.h",
"include/lib/zx/socket.h",
"include/lib/zx/task.h",
"include/lib/zx/thread.h",
"include/lib/zx/time.h",
"include/lib/zx/timer.h",
"include/lib/zx/vmar.h",
"include/lib/zx/vmo.h",
"interrupt.cpp",
"job.cpp",
"log.cpp",
"port.cpp",
"process.cpp",
"resource.cpp",
"socket.cpp",
"thread.cpp",
"timer.cpp",
"vmar.cpp",
"vmo.cpp",
]
}
copy("vulkan_layers") {
sources = [
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_core_validation.json",
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_image_pipe_swapchain.json",
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_object_tracker.json",
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_parameter_validation.json",
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_standard_validation.json",
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_threading.json",
"sdk/pkg/vulkan_layers/data/vulkan/explicit_layer.d/VkLayer_unique_objects.json",
]
outputs = [
"${root_gen_dir}/data/vulkan/explicit_layer.d/{{source_file_part}}",
]
}