| # Copyright 2019 The Fuchsia Authors |
| # |
| # Use of this source code is governed by a MIT-style |
| # license that can be found in the LICENSE file or at |
| # https://opensource.org/licenses/MIT |
| |
| import("//build/zircon/migrated_targets.gni") |
| |
| zx_library("object") { |
| sources = [ |
| "buffer_chain.cc", |
| "bus_transaction_initiator_dispatcher.cc", |
| "channel_dispatcher.cc", |
| "clock_dispatcher.cc", |
| "diagnostics.cc", |
| "dispatcher.cc", |
| "event_dispatcher.cc", |
| "event_pair_dispatcher.cc", |
| "exception.cc", |
| "exception_dispatcher.cc", |
| "exceptionate.cc", |
| "executor.cc", |
| "fifo_dispatcher.cc", |
| "futex_context.cc", |
| "guest_dispatcher.cc", |
| "handle.cc", |
| "handle_table.cc", |
| "interrupt_dispatcher.cc", |
| "interrupt_event_dispatcher.cc", |
| "iommu_dispatcher.cc", |
| "job_dispatcher.cc", |
| "job_policy.cc", |
| "log_dispatcher.cc", |
| "mbuf.cc", |
| "memory_watchdog.cc", |
| "message_packet.cc", |
| "msi_dispatcher.cc", |
| "msi_interrupt_dispatcher.cc", |
| "pager_dispatcher.cc", |
| "pager_proxy.cc", |
| "pci_device_dispatcher.cc", |
| "pci_interrupt_dispatcher.cc", |
| "pinned_memory_token_dispatcher.cc", |
| "port_dispatcher.cc", |
| "process_dispatcher.cc", |
| "profile_dispatcher.cc", |
| "resource.cc", |
| "resource_dispatcher.cc", |
| "root_job_observer.cc", |
| "singleton.cc", |
| "socket_dispatcher.cc", |
| "stream_dispatcher.cc", |
| "suspend_token_dispatcher.cc", |
| "thread_dispatcher.cc", |
| "timer_dispatcher.cc", |
| "user_handles.cc", |
| "vcpu_dispatcher.cc", |
| "virtual_interrupt_dispatcher.cc", |
| "vm_address_region_dispatcher.cc", |
| "vm_object_dispatcher.cc", |
| "wait_signal_observer.cc", |
| ] |
| deps = [ |
| ":tests", |
| "//sdk/lib/fit", |
| "//zircon/kernel/dev/interrupt", |
| "//zircon/kernel/dev/iommu/dummy", |
| "//zircon/kernel/dev/pcie", |
| "//zircon/kernel/hypervisor", |
| "//zircon/kernel/lib/arch", |
| "//zircon/kernel/lib/boot-options", |
| "//zircon/kernel/lib/console", |
| "//zircon/kernel/lib/counters", |
| "//zircon/kernel/lib/crashlog", |
| "//zircon/kernel/lib/fbl", |
| "//zircon/kernel/lib/init", |
| "//zircon/kernel/lib/kconcurrent", |
| "//zircon/kernel/lib/ktl", |
| "//zircon/kernel/lib/ktrace", |
| "//zircon/kernel/lib/object_cache", |
| "//zircon/kernel/lib/page_cache", |
| "//zircon/kernel/lib/root_resource_filter", |
| "//zircon/system/ulib/pretty", |
| "//zircon/system/ulib/region-alloc", |
| "//zircon/system/ulib/zxc", |
| ] |
| if (current_cpu == "x64") { |
| deps += [ "//zircon/kernel/dev/iommu/intel" ] |
| } |
| public_deps = [ |
| # <object/buffer_chain.h> has #include <ktl/move.h>. |
| "//zircon/kernel/lib/ktl:headers", |
| |
| # <object/port_dispatcher.h> has <lib/object_cache.h> |
| "//zircon/kernel/lib/object_cache:headers", |
| |
| # <object/buffer_chain.h> has <lib/page_cache.h> |
| "//zircon/kernel/lib/page_cache:headers", |
| |
| # <object/pci_device_dispatcher.h> has #include <dev/pci_common.h> |
| "//zircon/kernel/dev/pcie:headers", |
| |
| # <object/log_dispatcher.h> has #include <lib/debuglog.h>. |
| "//zircon/kernel/lib/debuglog:headers", |
| |
| # <object/clock_dispatcher.h> includes things from kconcurrent |
| "//zircon/kernel/lib/kconcurrent:headers", |
| |
| # <object/resource_dispatcher.h> has #include <region-alloc/region-alloc.h>. |
| "//zircon/system/ulib/region-alloc:headers", |
| |
| # <object/vcpu_dispatcher.h> has #include <hypervisor/interrupt_tracker.h>. |
| #"//zircon/kernel/hypervisor:headers", |
| |
| # <object/process_dispatcher.h> has #include <vm/vm_aspace.h>. |
| "//zircon/kernel/vm:headers", |
| |
| # <object/clock_dispatcher.h> has #include <lib/affine/transform.h>. |
| "//zircon/system/ulib/affine", |
| ] |
| } |
| |
| source_set("tests") { |
| # TODO: testonly = true |
| sources = [ |
| "buffer_chain_tests.cc", |
| "exceptionate_tests.cc", |
| "handle_tests.cc", |
| "interrupt_event_dispatcher_tests.cc", |
| "job_dispatcher_tests.cc", |
| "job_policy_tests.cc", |
| "mbuf_tests.cc", |
| "message_packet_tests.cc", |
| "msi_object_tests.cc", |
| "root_job_observer_tests.cc", |
| "shareable_process_state_tests.cc", |
| "socket_dispatcher_tests.cc", |
| "state_tracker_tests.cc", |
| ] |
| deps = [ |
| ":headers", |
| "//zircon/kernel/lib/console", |
| "//zircon/kernel/lib/ktl", |
| "//zircon/kernel/lib/unittest", |
| ] |
| } |