1# Copyright 2016 The Fuchsia Authors
2# Copyright (c) 2008-2015 Travis Geiselbrecht
3#
4# Use of this source code is governed by a MIT-style
5# license that can be found in the LICENSE file or at
6# https://opensource.org/licenses/MIT
7
8LOCAL_DIR := $(GET_LOCAL_DIR)
9
10MODULE := $(LOCAL_DIR)
11
12MODULE_DEPS := \
13    kernel/lib/console \
14    kernel/lib/crypto \
15    kernel/lib/fbl \
16    kernel/lib/pci \
17    kernel/lib/user_copy \
18    kernel/lib/vdso \
19    kernel/object \
20
21MODULE_SRCS := \
22    $(LOCAL_DIR)/syscalls.cpp \
23    $(LOCAL_DIR)/channel.cpp \
24    $(LOCAL_DIR)/ddk.cpp \
25    $(LOCAL_DIR)/ddk_pci.cpp \
26    $(LOCAL_DIR)/debug.cpp \
27    $(LOCAL_DIR)/exceptions.cpp \
28    $(LOCAL_DIR)/fifo.cpp \
29    $(LOCAL_DIR)/futex.cpp \
30    $(LOCAL_DIR)/handle_ops.cpp \
31    $(LOCAL_DIR)/hypervisor.cpp \
32    $(LOCAL_DIR)/zircon.cpp \
33    $(LOCAL_DIR)/object.cpp \
34    $(LOCAL_DIR)/object_wait.cpp \
35    $(LOCAL_DIR)/port.cpp \
36    $(LOCAL_DIR)/profile.cpp \
37    $(LOCAL_DIR)/resource.cpp \
38    $(LOCAL_DIR)/socket.cpp \
39    $(LOCAL_DIR)/system.cpp \
40    $(LOCAL_DIR)/task.cpp \
41    $(LOCAL_DIR)/test.cpp \
42    $(LOCAL_DIR)/timer.cpp \
43    $(LOCAL_DIR)/vmar.cpp \
44    $(LOCAL_DIR)/vmo.cpp \
45
46ifeq ($(ARCH),x86)
47MODULE_SRCS += $(LOCAL_DIR)/system_x86.cpp \
48	       $(LOCAL_DIR)/ddk_x86.cpp \
49
50else ifeq ($(ARCH),arm64)
51MODULE_SRCS += $(LOCAL_DIR)/system_arm64.cpp \
52	       $(LOCAL_DIR)/ddk_arm64.cpp \
53
54endif
55
56# We need a header file generated by kernel/lib/vdso/rules.mk.
57MODULE_COMPILEFLAGS += -I$(BUILDDIR)/kernel/lib/vdso
58$(BUILDDIR)/$(LOCAL_DIR)/$(LOCAL_DIR)/syscalls.cpp.o: \
59    $(BUILDDIR)/kernel/lib/vdso/vdso-valid-sysret.h
60
61include make/module.mk
62