1# Copyright 2017 The Fuchsia Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5LOCAL_DIR := $(GET_LOCAL_DIR)
6LOCAL_INC := $(LOCAL_DIR)/include/lib/async
7
8#
9# libasync.a: the client library
10#
11
12MODULE := $(LOCAL_DIR)
13MODULE_NAME := async
14
15MODULE_TYPE := userlib
16MODULE_COMPILEFLAGS += -fvisibility=hidden
17
18MODULE_SRCS = \
19    $(LOCAL_DIR)/ops.c \
20
21MODULE_PACKAGE_SRCS := $(MODULE_SRCS)
22MODULE_PACKAGE_INCS := \
23    $(LOCAL_INC)/dispatcher.h \
24    $(LOCAL_INC)/exception.h \
25    $(LOCAL_INC)/receiver.h \
26    $(LOCAL_INC)/task.h \
27    $(LOCAL_INC)/time.h \
28    $(LOCAL_INC)/trap.h \
29    $(LOCAL_INC)/wait.h \
30
31MODULE_LIBS := \
32    system/ulib/c \
33    system/ulib/zircon
34
35MODULE_PACKAGE := src
36
37include make/module.mk
38
39#
40# libasync-cpp.a: the C++ client library
41#
42
43MODULE := $(LOCAL_DIR).cpp
44MODULE_NAME := async-cpp
45
46MODULE_TYPE := userlib
47MODULE_COMPILEFLAGS += -fvisibility=hidden
48
49MODULE_SRCS = \
50    $(LOCAL_DIR)/exception.cpp \
51    $(LOCAL_DIR)/receiver.cpp \
52    $(LOCAL_DIR)/task.cpp \
53    $(LOCAL_DIR)/trap.cpp \
54    $(LOCAL_DIR)/wait.cpp
55
56MODULE_PACKAGE_SRCS := $(MODULE_SRCS)
57MODULE_PACKAGE_INCS := \
58    $(LOCAL_INC)/cpp/exception.h \
59    $(LOCAL_INC)/cpp/receiver.h \
60    $(LOCAL_INC)/cpp/task.h \
61    $(LOCAL_INC)/cpp/time.h \
62    $(LOCAL_INC)/cpp/trap.h \
63    $(LOCAL_INC)/cpp/wait.h
64
65MODULE_STATIC_LIBS := \
66    system/ulib/async \
67    system/ulib/fbl
68
69MODULE_LIBS := \
70    system/ulib/c \
71    system/ulib/zx \
72    system/ulib/zircon
73
74MODULE_PACKAGE := src
75
76include make/module.mk
77
78#
79# libasync-default.so: the default dispatcher state library
80#
81
82MODULE := $(LOCAL_DIR).default
83MODULE_NAME := async-default
84
85MODULE_TYPE := userlib
86MODULE_COMPILEFLAGS += -fvisibility=hidden
87
88MODULE_SRCS = \
89    $(LOCAL_DIR)/default.c
90
91MODULE_PACKAGE_SRCS := $(MODULE_SRCS)
92MODULE_PACKAGE_INCS := $(LOCAL_INC)/default.h
93
94MODULE_SO_NAME := async-default
95MODULE_EXPORT := so
96
97MODULE_LIBS := \
98    system/ulib/c
99
100MODULE_PACKAGE := src
101
102include make/module.mk
103