# 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

# For zircon_cpu definition.
import("//build/unification/global_variables.gni")
source_set("top") {
  sources = [
    "debug.cc",
    "init.cc",
    "main.cc",
  ]
  deps = [
    "//zircon/kernel/arch/$zircon_cpu",
    "//zircon/kernel/dev/hw_rng",
    "//zircon/kernel/kernel",
    "//zircon/kernel/lib/counters",
    "//zircon/kernel/lib/crashlog",
    "//zircon/kernel/lib/debuglog",
    "//zircon/kernel/lib/init",
    "//zircon/kernel/lib/io",
    "//zircon/kernel/lib/lockup_detector",
    "//zircon/kernel/lib/userabi",
    "//zircon/kernel/lib/version",
    "//zircon/kernel/platform",
  ]
}
