blob: 073989cd502e5f6b240d24b157d05ac28053840c [file] [log] [blame]
# Copyright 2019 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.
declare_args() {
fidl_write_v1_wireformat = false
}
# Base library used by both Fuchsia and host
zx_library("fidl_base") {
sdk = "source"
sdk_publishable = true
host = true
sdk_headers = [
"lib/fidl/coding.h",
"lib/fidl/txn_header.h",
"lib/fidl/cpp/builder.h",
"lib/fidl/cpp/message.h",
"lib/fidl/cpp/message_buffer.h",
"lib/fidl/cpp/message_builder.h",
"lib/fidl/cpp/message_part.h",
"lib/fidl/envelope_frames.h",
"lib/fidl/internal.h",
"lib/fidl/runtime_flag.h",
"lib/fidl/transformer.h",
"lib/fidl/internal_callable_traits.h",
"lib/fidl/visitor.h",
"lib/fidl/walker.h",
]
sources = [
"builder.cc",
"decoding.cc",
"encoding.cc",
"formatting.cc",
"internal.cc",
"linearizing.cc",
"message.cc",
"message_buffer.cc",
"message_builder.cc",
"runtime_flag.cc",
"transformer.cc",
"txn_header.c",
"validating.cc",
"walker.cc",
]
deps = [
"$zx/system/ulib/zircon",
]
if (fidl_write_v1_wireformat) {
defines = [ "FIDL_EXPERIMENTAL_WRITE_V1_WIREFORMAT" ]
}
}
zx_library("fidl") {
sdk = "source"
sdk_publishable = true
sdk_headers = [ "lib/fidl/epitaph.h" ]
sources = [
"epitaph.c",
"handle_closing.cc",
]
deps = [
":fidl_base",
"$zx/system/ulib/zircon",
]
}
zx_library("fidl-llcpp") {
sdk = "source"
sdk_headers = [
"lib/fidl/llcpp/array.h",
"lib/fidl/llcpp/coding.h",
"lib/fidl/llcpp/connect_service.h",
"lib/fidl/llcpp/service_handler_interface.h",
"lib/fidl/llcpp/decoded_message.h",
"lib/fidl/llcpp/encoded_message.h",
"lib/fidl/llcpp/response_storage.h",
"lib/fidl/llcpp/sync_call.h",
"lib/fidl/llcpp/traits.h",
"lib/fidl/llcpp/transaction.h",
"lib/fidl/llcpp/string_view.h",
"lib/fidl/llcpp/vector_view.h",
]
sources = [
"llcpp_transaction.cc",
]
public_deps = [
":headers",
# <lib/fidl/llcpp/sync_call.h> has #include <lib/fit/result.h>.
"$zx/system/ulib/fit:headers",
# <lib/fidl/llcpp/traits.h> has #include <lib/zx/object.h>.
"$zx/system/ulib/zx:headers",
]
deps = [
":fidl",
"$zx/system/ulib/fit",
"$zx/system/ulib/zircon",
]
}