blob: c71955f9ab708e28cce1bbdf5dc34ef6c24d9807 [file] [log] [blame]
Peter Qiu7a420d32015-09-22 11:25:15 -07001#
2# Copyright (C) 2015 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17LOCAL_PATH := $(call my-dir)
18
19# Definitions applying to all targets. Be sure to $(eval) this last.
20define apmanager_common
21 LOCAL_CPP_EXTENSION := .cc
Peter Qiu7a420d32015-09-22 11:25:15 -070022 LOCAL_CLANG := true
23 LOCAL_SHARED_LIBRARIES += \
Alex Vakulenko9ad78a52015-10-27 11:40:51 -070024 libbrillo \
25 libbrillo-dbus \
26 libbrillo-minijail \
Peter Qiu7a420d32015-09-22 11:25:15 -070027 libchrome \
28 libchrome-dbus \
Peter Qiu7a420d32015-09-22 11:25:15 -070029 libdbus \
30 libfirewalld-client \
31 libminijail \
Peter Qiu06379fc2015-10-01 11:11:01 -070032 libshill-client \
Peter Qiu7a420d32015-09-22 11:25:15 -070033 libshill-net
34 LOCAL_C_INCLUDES += \
35 $(LOCAL_PATH)/.. \
36 external/cros/system_api # D-Bus service constants.
37 LOCAL_CFLAGS += -Wall -Werror -Wno-unused-parameter
38 # -Wno-non-virtual-dtor: for generated D-Bus adaptors.
39 # -Wno-missing-field-initializers: for LAZY_INSTANCE_INITIALIZER.
40 LOCAL_CPPFLAGS += \
41 -Wno-sign-promo \
42 -Wno-non-virtual-dtor \
43 -Wno-missing-field-initializers
44endef
45
Peter Qiu7a420d32015-09-22 11:25:15 -070046# === libapmanager-client (shared library) ===
47include $(CLEAR_VARS)
48LOCAL_MODULE := libapmanager-client
49LOCAL_SRC_FILES := \
50 dbus_bindings/dbus-service-config.json \
51 dbus_bindings/org.chromium.apmanager.Config.dbus-xml \
52 dbus_bindings/org.chromium.apmanager.Device.dbus-xml \
53 dbus_bindings/org.chromium.apmanager.Manager.dbus-xml \
54 dbus_bindings/org.chromium.apmanager.Service.dbus-xml
55LOCAL_DBUS_PROXY_PREFIX := apmanager
56include $(BUILD_SHARED_LIBRARY)
57
58# === libapmanager (static library) ===
59include $(CLEAR_VARS)
60LOCAL_MODULE := libapmanager
61LOCAL_SRC_FILES := \
62 dbus_bindings/dbus-service-config.json \
63 dbus_bindings/org.chromium.apmanager.Config.dbus-xml \
64 dbus_bindings/org.chromium.apmanager.Device.dbus-xml \
65 dbus_bindings/org.chromium.apmanager.Manager.dbus-xml \
66 dbus_bindings/org.chromium.apmanager.Service.dbus-xml \
67 config.cc \
68 daemon.cc \
Peter Qiu00029782015-11-17 13:45:57 -080069 dbus/config_dbus_adaptor.cc \
Peter Qiu58083962015-11-05 14:29:50 -080070 dbus/dbus_control.cc \
Peter Qiuf9335402015-11-16 12:09:16 -080071 dbus/device_dbus_adaptor.cc \
Peter Qiu58083962015-11-05 14:29:50 -080072 dbus/firewalld_dbus_proxy.cc \
Peter Qiu685dd4a2015-11-21 17:47:49 -080073 dbus/manager_dbus_adaptor.cc \
Peter Qiu0e92d1e2015-11-20 10:11:36 -080074 dbus/service_dbus_adaptor.cc \
Peter Qiu58083962015-11-05 14:29:50 -080075 dbus/shill_dbus_proxy.cc \
Peter Qiu7a420d32015-09-22 11:25:15 -070076 device.cc \
77 device_info.cc \
78 dhcp_server.cc \
79 dhcp_server_factory.cc \
Peter Qiu69d25212015-11-19 13:13:25 -080080 error.cc \
Peter Qiu7a420d32015-09-22 11:25:15 -070081 event_dispatcher.cc \
82 file_writer.cc \
83 firewall_manager.cc \
Peter Qiu7a420d32015-09-22 11:25:15 -070084 hostapd_monitor.cc \
85 manager.cc \
86 process_factory.cc \
87 service.cc \
Peter Qiu58083962015-11-05 14:29:50 -080088 shill_manager.cc
Peter Qiu7a420d32015-09-22 11:25:15 -070089$(eval $(apmanager_common))
90include $(BUILD_STATIC_TEST_LIBRARY)
91
92# === apmanager ===
93include $(CLEAR_VARS)
94LOCAL_MODULE := apmanager
Peter Qiu8070c3a2015-09-28 14:26:25 -070095LOCAL_INIT_RC := apmanager.rc
Peter Qiu7a420d32015-09-22 11:25:15 -070096LOCAL_SRC_FILES := \
97 main.cc
98LOCAL_STATIC_LIBRARIES := libapmanager
99LOCAL_C_INCLUDES += external/gtest/include
100$(eval $(apmanager_common))
101include $(BUILD_EXECUTABLE)
102
Peter Qiu015a4992015-10-06 13:30:32 -0700103# === apmanager_test ===
Peter Qiu7a420d32015-09-22 11:25:15 -0700104include $(CLEAR_VARS)
Peter Qiu015a4992015-10-06 13:30:32 -0700105LOCAL_MODULE := apmanager_test
106ifdef BRILLO
Jorge Lucangeli Obes66cf1b12016-02-04 13:36:55 -0800107 LOCAL_MODULE_TAGS := eng
Peter Qiu015a4992015-10-06 13:30:32 -0700108endif # BRILLO
Peter Qiu7a420d32015-09-22 11:25:15 -0700109LOCAL_SRC_FILES := \
110 config_unittest.cc \
111 device_info_unittest.cc \
112 device_unittest.cc \
113 dhcp_server_unittest.cc \
Peter Qiu69d25212015-11-19 13:13:25 -0800114 error_unittest.cc \
Peter Qiud9c79aa2015-11-19 15:36:00 -0800115 fake_config_adaptor.cc \
Peter Qiuf9335402015-11-16 12:09:16 -0800116 fake_device_adaptor.cc \
Peter Qiu7a420d32015-09-22 11:25:15 -0700117 hostapd_monitor_unittest.cc \
118 manager_unittest.cc \
119 mock_config.cc \
Peter Qiuf9335402015-11-16 12:09:16 -0800120 mock_control.cc \
Peter Qiu7a420d32015-09-22 11:25:15 -0700121 mock_device.cc \
122 mock_dhcp_server.cc \
123 mock_dhcp_server_factory.cc \
124 mock_event_dispatcher.cc \
125 mock_file_writer.cc \
126 mock_hostapd_monitor.cc \
127 mock_manager.cc \
128 mock_process_factory.cc \
129 mock_service.cc \
Peter Qiu2ea547f2015-11-20 14:18:11 -0800130 mock_service_adaptor.cc \
Peter Qiu7a420d32015-09-22 11:25:15 -0700131 service_unittest.cc \
132 run_all_tests.cc
133LOCAL_STATIC_LIBRARIES := libapmanager libgmock
134$(eval $(apmanager_common))
135include $(BUILD_NATIVE_TEST)