Android.mk revision 2915a7b9a45821a7530d2fea8a982bc1b6efc7d3
1# Copyright (C) 2015 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15LOCAL_PATH := $(call my-dir)
16
17# Common variables
18# ========================================================
19
20buffetCommonCppExtension := .cc
21buffetCommonCFlags := -DBUFFET_USE_WIFI_BOOTSTRAPPING -Wall -Werror \
22	-Wno-char-subscripts -Wno-missing-field-initializers \
23	-Wno-unused-function -Wno-unused-parameter \
24
25buffetCommonCppFlags := \
26	-Wno-deprecated-register \
27	-Wno-sign-compare \
28	-Wno-sign-promo \
29	-Wno-non-virtual-dtor \
30
31buffetCommonCIncludes := \
32	$(LOCAL_PATH)/.. \
33	$(LOCAL_PATH)/dbus-proxies \
34	external/cros/system_api \
35	external/gtest/include \
36
37buffetSharedLibraries := \
38	libapmanager-client \
39	libavahi-common \
40	libchrome \
41	libchrome-dbus \
42	libchromeos \
43	libchromeos-dbus \
44	libchromeos-http \
45	libchromeos-stream \
46	libdbus \
47	libshill-client \
48	libweave \
49	libwebserv \
50
51# buffet-common
52# ========================================================
53include $(CLEAR_VARS)
54LOCAL_MODULE := buffet-common
55LOCAL_CPP_EXTENSION := $(buffetCommonCppExtension)
56LOCAL_CFLAGS := $(buffetCommonCFlags)
57LOCAL_CPPFLAGS := $(buffetCommonCppFlags)
58LOCAL_C_INCLUDES := $(buffetCommonCIncludes)
59LOCAL_SHARED_LIBRARIES := $(buffetSharedLibraries)
60LOCAL_STATIC_LIBRARIES :=
61LOCAL_RTTI_FLAG := -frtti
62LOCAL_CLANG := true
63LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
64
65LOCAL_SRC_FILES := \
66	buffet/ap_manager_client.cc \
67	buffet/avahi_mdns_client.cc \
68	buffet/buffet_config.cc \
69	buffet/dbus_command_dispatcher.cc \
70	buffet/dbus_command_proxy.cc \
71	buffet/dbus_conversion.cc \
72	buffet/dbus_constants.cc \
73	buffet/flouride_socket_bluetooth_client.cc \
74	buffet/http_transport_client.cc \
75	buffet/manager.cc \
76	buffet/shill_client.cc \
77	buffet/socket_stream.cc \
78	buffet/webserv_client.cc \
79	buffet/dbus_bindings/dbus-service-config.json \
80	buffet/dbus_bindings/com.android.Weave.Command.dbus-xml \
81	buffet/dbus_bindings/com.android.Weave.Manager.dbus-xml \
82
83include $(BUILD_STATIC_LIBRARY)
84
85# buffet
86# ========================================================
87include $(CLEAR_VARS)
88LOCAL_MODULE := weaved
89LOCAL_REQUIRED_MODULES := \
90	avahi-daemon \
91	com.android.Weave.conf \
92	webservd \
93
94LOCAL_CPP_EXTENSION := $(buffetCommonCppExtension)
95LOCAL_CFLAGS := $(buffetCommonCFlags)
96LOCAL_CPPFLAGS := $(buffetCommonCppFlags)
97LOCAL_C_INCLUDES := $(buffetCommonCIncludes)
98LOCAL_INIT_RC := weaved.rc
99LOCAL_SHARED_LIBRARIES := $(buffetSharedLibraries)
100LOCAL_WHOLE_STATIC_LIBRARIES := buffet-common
101LOCAL_CLANG := true
102LOCAL_RTTI_FLAG := -frtti
103
104LOCAL_SRC_FILES := \
105	buffet/main.cc
106
107include $(BUILD_EXECUTABLE)
108
109# libweaved-client
110# ========================================================
111include $(CLEAR_VARS)
112LOCAL_MODULE := libweaved-client
113LOCAL_DBUS_PROXY_PREFIX := buffet
114
115LOCAL_SRC_FILES := \
116	buffet/dbus_bindings/dbus-service-config.json \
117	buffet/dbus_bindings/com.android.Weave.Command.dbus-xml \
118	buffet/dbus_bindings/com.android.Weave.Manager.dbus-xml \
119
120include $(BUILD_SHARED_LIBRARY)
121
122# buffet_testrunner
123# ========================================================
124include $(CLEAR_VARS)
125LOCAL_MODULE := buffet_testrunner
126LOCAL_CPP_EXTENSION := $(buffetCommonCppExtension)
127LOCAL_CFLAGS := $(buffetCommonCFlags)
128LOCAL_CPPFLAGS := $(buffetCommonCppFlags)
129LOCAL_C_INCLUDES := \
130	$(buffetCommonCIncludes) \
131	external/gmock/include \
132
133LOCAL_SHARED_LIBRARIES := \
134	$(buffetSharedLibraries) \
135
136LOCAL_STATIC_LIBRARIES := \
137	buffet-common \
138	libchrome_dbus_test_helpers \
139	libchrome_test_helpers \
140	libchromeos-test-helpers \
141	libgtest \
142	libgmock \
143	libweave-test \
144
145LOCAL_RTTI_FLAG := -frtti
146LOCAL_CLANG := true
147
148LOCAL_SRC_FILES := \
149	buffet/buffet_testrunner.cc \
150	buffet/dbus_command_proxy_unittest.cc \
151	buffet/dbus_conversion_unittest.cc \
152
153include $(BUILD_NATIVE_TEST)
154
155# DBus config files for /etc/dbus-1
156# ========================================================
157include $(CLEAR_VARS)
158LOCAL_MODULE := com.android.Weave.conf
159LOCAL_MODULE_CLASS := ETC
160LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/dbus-1
161LOCAL_SRC_FILES := buffet/etc/dbus-1/com.android.Weave.conf
162include $(BUILD_PREBUILT)
163