1# Copyright (C) 2016 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) 16wificond_cpp_flags := -Wall -Werror -Wno-unused-parameter 17wificond_parent_dir := $(LOCAL_PATH)/../ 18wificond_includes := \ 19 $(wificond_parent_dir) 20 21 22### 23### wificond daemon. 24### 25include $(CLEAR_VARS) 26LOCAL_MODULE := wificond 27LOCAL_CPPFLAGS := $(wificond_cpp_flags) 28LOCAL_INIT_RC := wificond.rc 29LOCAL_C_INCLUDES := $(wificond_includes) 30LOCAL_SRC_FILES := \ 31 main.cpp 32LOCAL_SHARED_LIBRARIES := \ 33 android.hardware.wifi.offload@1.0 \ 34 libbinder \ 35 libbase \ 36 libcutils \ 37 libhidlbase \ 38 libhidltransport \ 39 libminijail \ 40 libutils \ 41 libwifi-system \ 42 libwifi-system-iface 43LOCAL_STATIC_LIBRARIES := \ 44 libwificond 45include $(BUILD_EXECUTABLE) 46 47### 48### wificond static library 49### 50include $(CLEAR_VARS) 51LOCAL_MODULE := libwificond 52LOCAL_CPPFLAGS := $(wificond_cpp_flags) 53LOCAL_C_INCLUDES := $(wificond_includes) 54LOCAL_SRC_FILES := \ 55 ap_interface_binder.cpp \ 56 ap_interface_impl.cpp \ 57 client_interface_binder.cpp \ 58 client_interface_impl.cpp \ 59 logging_utils.cpp \ 60 scanning/channel_settings.cpp \ 61 scanning/hidden_network.cpp \ 62 scanning/offload_scan_callback_interface_impl.cpp \ 63 scanning/pno_network.cpp \ 64 scanning/pno_settings.cpp \ 65 scanning/radio_chain_info.cpp \ 66 scanning/scan_result.cpp \ 67 scanning/offload/scan_stats.cpp \ 68 scanning/single_scan_settings.cpp \ 69 scanning/scan_utils.cpp \ 70 scanning/scanner_impl.cpp \ 71 scanning/offload/offload_scan_manager.cpp \ 72 scanning/offload/offload_callback.cpp \ 73 scanning/offload/offload_service_utils.cpp \ 74 scanning/offload/offload_scan_utils.cpp \ 75 server.cpp 76LOCAL_SHARED_LIBRARIES := \ 77 android.hardware.wifi.offload@1.0 \ 78 libbase \ 79 libutils \ 80 libhidlbase \ 81 libhidltransport \ 82 libwifi-system \ 83 libwifi-system-iface 84LOCAL_WHOLE_STATIC_LIBRARIES := \ 85 libwificond_ipc \ 86 libwificond_nl \ 87 libwificond_event_loop 88include $(BUILD_STATIC_LIBRARY) 89 90### 91### wificond netlink library 92### 93include $(CLEAR_VARS) 94LOCAL_MODULE := libwificond_nl 95LOCAL_CPPFLAGS := $(wificond_cpp_flags) 96LOCAL_C_INCLUDES := $(wificond_includes) 97LOCAL_SRC_FILES := \ 98 net/mlme_event.cpp \ 99 net/netlink_manager.cpp \ 100 net/netlink_utils.cpp \ 101 net/nl80211_attribute.cpp \ 102 net/nl80211_packet.cpp 103LOCAL_SHARED_LIBRARIES := \ 104 libbase 105include $(BUILD_STATIC_LIBRARY) 106 107### 108### wificond event loop library 109### 110include $(CLEAR_VARS) 111LOCAL_MODULE := libwificond_event_loop 112LOCAL_CPPFLAGS := $(wificond_cpp_flags) 113LOCAL_C_INCLUDES := $(wificond_includes) 114LOCAL_SRC_FILES := \ 115 looper_backed_event_loop.cpp 116LOCAL_WHOLE_STATIC_LIBRARIES := \ 117 liblog \ 118 libbase \ 119 libutils 120include $(BUILD_STATIC_LIBRARY) 121 122### 123### wificond IPC interface library 124### 125include $(CLEAR_VARS) 126LOCAL_MODULE := libwificond_ipc 127LOCAL_AIDL_INCLUDES += $(LOCAL_PATH)/aidl 128LOCAL_C_INCLUDES := $(wificond_includes) 129LOCAL_CPPFLAGS := $(wificond_cpp_flags) 130LOCAL_SRC_FILES := \ 131 ipc_constants.cpp \ 132 aidl/android/net/wifi/IApInterface.aidl \ 133 aidl/android/net/wifi/IApInterfaceEventCallback.aidl \ 134 aidl/android/net/wifi/IClientInterface.aidl \ 135 aidl/android/net/wifi/IInterfaceEventCallback.aidl \ 136 aidl/android/net/wifi/IPnoScanEvent.aidl \ 137 aidl/android/net/wifi/IScanEvent.aidl \ 138 aidl/android/net/wifi/IWificond.aidl \ 139 aidl/android/net/wifi/IWifiScannerImpl.aidl \ 140 scanning/channel_settings.cpp \ 141 scanning/hidden_network.cpp \ 142 scanning/pno_network.cpp \ 143 scanning/pno_settings.cpp \ 144 scanning/radio_chain_info.cpp \ 145 scanning/scan_result.cpp \ 146 scanning/single_scan_settings.cpp 147LOCAL_SHARED_LIBRARIES := \ 148 libbinder 149include $(BUILD_STATIC_LIBRARY) 150 151### 152### test util library 153### 154include $(CLEAR_VARS) 155LOCAL_MODULE := libwificond_test_utils 156LOCAL_CPPFLAGS := $(wificond_cpp_flags) 157LOCAL_C_INCLUDES := $(wificond_includes) 158LOCAL_SRC_FILES := \ 159 tests/integration/binder_dispatcher.cpp \ 160 tests/integration/process_utils.cpp \ 161 tests/shell_utils.cpp 162LOCAL_SHARED_LIBRARIES := \ 163 libbase 164LOCAL_WHOLE_STATIC_LIBRARIES := \ 165 libwificond_ipc \ 166 libwificond_event_loop 167include $(BUILD_STATIC_LIBRARY) 168 169### 170### wificond unit tests. 171### 172include $(CLEAR_VARS) 173LOCAL_MODULE := wificond_unit_test 174LOCAL_COMPATIBILITY_SUITE := device-tests 175LOCAL_CPPFLAGS := $(wificond_cpp_flags) 176LOCAL_C_INCLUDES := $(wificond_includes) 177LOCAL_SRC_FILES := \ 178 tests/ap_interface_impl_unittest.cpp \ 179 tests/client_interface_impl_unittest.cpp \ 180 tests/looper_backed_event_loop_unittest.cpp \ 181 tests/main.cpp \ 182 tests/mock_client_interface_impl.cpp \ 183 tests/mock_netlink_manager.cpp \ 184 tests/mock_netlink_utils.cpp \ 185 tests/mock_offload.cpp \ 186 tests/mock_offload_callback_handlers.cpp \ 187 tests/mock_offload_scan_callback_interface.cpp \ 188 tests/mock_offload_scan_callback_interface_impl.cpp \ 189 tests/mock_offload_scan_manager.cpp \ 190 tests/mock_offload_service_utils.cpp \ 191 tests/mock_scan_utils.cpp \ 192 tests/netlink_manager_unittest.cpp \ 193 tests/netlink_utils_unittest.cpp \ 194 tests/nl80211_attribute_unittest.cpp \ 195 tests/nl80211_packet_unittest.cpp \ 196 tests/offload_callback_test.cpp \ 197 tests/offload_hal_test_constants.cpp \ 198 tests/offload_scan_manager_test.cpp \ 199 tests/offload_scan_utils_test.cpp \ 200 tests/offload_test_utils.cpp \ 201 tests/scanner_unittest.cpp \ 202 tests/scan_result_unittest.cpp \ 203 tests/scan_settings_unittest.cpp \ 204 tests/scan_stats_unittest.cpp \ 205 tests/scan_utils_unittest.cpp \ 206 tests/server_unittest.cpp 207LOCAL_STATIC_LIBRARIES := \ 208 libgmock \ 209 libgtest \ 210 libwifi-system-test \ 211 libwifi-system-iface-test \ 212 libwificond \ 213 libwificond_nl 214LOCAL_SHARED_LIBRARIES := \ 215 android.hardware.wifi.offload@1.0 \ 216 libbase \ 217 libbinder \ 218 libcutils \ 219 libhidltransport \ 220 libhidlbase \ 221 liblog \ 222 libutils \ 223 libwifi-system \ 224 libwifi-system-iface 225include $(BUILD_NATIVE_TEST) 226 227### 228### wificond device integration tests. 229### 230include $(CLEAR_VARS) 231LOCAL_MODULE := wificond_integration_test 232LOCAL_CPPFLAGS := $(wificond_cpp_flags) 233LOCAL_C_INCLUDES := $(wificond_includes) 234LOCAL_SRC_FILES := \ 235 tests/integration/ap_interface_test.cpp \ 236 tests/integration/client_interface_test.cpp \ 237 tests/integration/life_cycle_test.cpp \ 238 tests/integration/scanner_test.cpp \ 239 tests/integration/service_test.cpp \ 240 tests/main.cpp \ 241 tests/shell_unittest.cpp 242LOCAL_SHARED_LIBRARIES := \ 243 libbase \ 244 libbinder \ 245 libcutils \ 246 libutils \ 247 libwifi-system \ 248 libwifi-system-iface 249LOCAL_STATIC_LIBRARIES := \ 250 libgmock \ 251 libwificond_ipc \ 252 libwificond_test_utils 253include $(BUILD_NATIVE_TEST) 254