1 ##############################################################################
2 #
3 #  Copyright (C) 2014 Google, Inc.
4 #
5 #  Licensed under the Apache License, Version 2.0 (the "License");
6 #  you may not use this file except in compliance with the License.
7 #  You may obtain a copy of the License at:
8 #
9 #  http://www.apache.org/licenses/LICENSE-2.0
10 #
11 #  Unless required by applicable law or agreed to in writing, software
12 #  distributed under the License is distributed on an "AS IS" BASIS,
13 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 #  See the License for the specific language governing permissions and
15 #  limitations under the License.
16 #
17 ##############################################################################
18
19LOCAL_PATH := $(call my-dir)
20
21include $(CLEAR_VARS)
22
23# osi/include/atomic.h depends on gcc atomic functions
24LOCAL_CLANG := false
25
26LOCAL_C_INCLUDES := \
27    $(LOCAL_PATH)/include \
28    $(LOCAL_PATH)/..
29
30LOCAL_SRC_FILES := \
31    ./src/alarm.c \
32    ./src/allocation_tracker.c \
33    ./src/allocator.c \
34    ./src/array.c \
35    ./src/buffer.c \
36    ./src/config.c \
37    ./src/data_dispatcher.c \
38    ./src/eager_reader.c \
39    ./src/fixed_queue.c \
40    ./src/future.c \
41    ./src/hash_functions.c \
42    ./src/hash_map.c \
43    ./src/list.c \
44    ./src/non_repeating_timer.c \
45    ./src/reactor.c \
46    ./src/ringbuffer.c \
47    ./src/semaphore.c \
48    ./src/socket.c \
49    ./src/thread.c
50
51LOCAL_CFLAGS := -std=c99 -Wall -Werror -UNDEBUG
52# Many .h files have redefined typedefs
53LOCAL_CLANG_CFLAGS += -Wno-error=typedef-redefinition
54LOCAL_MODULE := libosi
55LOCAL_MODULE_TAGS := optional
56LOCAL_SHARED_LIBRARIES := libc liblog
57LOCAL_MODULE_CLASS := STATIC_LIBRARIES
58
59include $(BUILD_STATIC_LIBRARY)
60
61#####################################################
62
63include $(CLEAR_VARS)
64
65# osi/include/atomic.h depends on gcc atomic functions
66LOCAL_CLANG := false
67
68LOCAL_C_INCLUDES := \
69    $(LOCAL_PATH)/include \
70    $(LOCAL_PATH)/..
71
72LOCAL_SRC_FILES := \
73    ./test/AlarmTestHarness.cpp \
74    ./test/AllocationTestHarness.cpp \
75    ./test/alarm_test.cpp \
76    ./test/allocation_tracker_test.cpp \
77    ./test/array_test.cpp \
78    ./test/atomic_test.cpp \
79    ./test/config_test.cpp \
80    ./test/data_dispatcher_test.cpp \
81    ./test/eager_reader_test.cpp \
82    ./test/future_test.cpp \
83    ./test/hash_map_test.cpp \
84    ./test/list_test.cpp \
85    ./test/reactor_test.cpp \
86    ./test/ringbuffer_test.cpp \
87    ./test/thread_test.cpp
88
89LOCAL_CFLAGS := -Wall -UNDEBUG
90LOCAL_MODULE := net_test_osi
91LOCAL_MODULE_TAGS := tests
92LOCAL_SHARED_LIBRARIES := liblog
93LOCAL_STATIC_LIBRARIES := libosi
94
95include $(BUILD_NATIVE_TEST)
96