1 # Copyright (C) 2016 The Android Open Source Project
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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.
15 LOCAL_PATH := $(call my-dir)
16 wificond_cpp_flags := -Wall -Werror -Wno-unused-parameter
17 ifdef WIFI_OFFLOAD_SCANS
18 wificond_cpp_flags += -DWIFI_OFFLOAD_SCANS=\"$(WIFI_OFFLOAD_SCANS)\"
20 wificond_parent_dir := $(LOCAL_PATH)/../
21 wificond_includes := \
22 $(wificond_parent_dir)
29 LOCAL_MODULE := wificond
30 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
31 LOCAL_INIT_RC := wificond.rc
32 LOCAL_C_INCLUDES := $(wificond_includes)
35 LOCAL_SHARED_LIBRARIES := \
36 android.hardware.wifi.offload@1.0 \
47 LOCAL_STATIC_LIBRARIES := \
49 include $(BUILD_EXECUTABLE)
52 ### wificond static library
55 LOCAL_MODULE := libwificond
56 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
57 LOCAL_C_INCLUDES := $(wificond_includes)
59 ap_interface_binder.cpp \
60 ap_interface_impl.cpp \
61 client_interface_binder.cpp \
62 client_interface_impl.cpp \
64 looper_backed_event_loop.cpp \
65 rtt/rtt_controller_binder.cpp \
66 rtt/rtt_controller_impl.cpp \
67 scanning/channel_settings.cpp \
68 scanning/hidden_network.cpp \
69 scanning/pno_network.cpp \
70 scanning/pno_settings.cpp \
71 scanning/scan_result.cpp \
72 scanning/offload/scan_stats.cpp \
73 scanning/single_scan_settings.cpp \
74 scanning/scan_utils.cpp \
75 scanning/scanner_impl.cpp \
76 scanning/offload/offload_scan_manager.cpp \
77 scanning/offload/offload_callback.cpp \
78 scanning/offload/offload_service_utils.cpp \
79 scanning/offload/offload_scan_utils.cpp \
81 LOCAL_SHARED_LIBRARIES := \
82 android.hardware.wifi.offload@1.0 \
90 LOCAL_WHOLE_STATIC_LIBRARIES := \
93 include $(BUILD_STATIC_LIBRARY)
96 ### wificond netlink library
99 LOCAL_MODULE := libwificond_nl
100 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
101 LOCAL_C_INCLUDES := $(wificond_includes)
104 net/netlink_manager.cpp \
105 net/netlink_utils.cpp \
106 net/nl80211_attribute.cpp \
107 net/nl80211_packet.cpp
108 LOCAL_SHARED_LIBRARIES := \
110 include $(BUILD_STATIC_LIBRARY)
113 ### wificond IPC interface library
115 include $(CLEAR_VARS)
116 LOCAL_MODULE := libwificond_ipc
117 LOCAL_AIDL_INCLUDES += $(LOCAL_PATH)/aidl
118 LOCAL_C_INCLUDES := $(wificond_includes)
119 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
122 aidl/android/net/wifi/IApInterface.aidl \
123 aidl/android/net/wifi/IANQPDoneCallback.aidl \
124 aidl/android/net/wifi/IClientInterface.aidl \
125 aidl/android/net/wifi/IInterfaceEventCallback.aidl \
126 aidl/android/net/wifi/IPnoScanEvent.aidl \
127 aidl/android/net/wifi/IRttClient.aidl \
128 aidl/android/net/wifi/IRttController.aidl \
129 aidl/android/net/wifi/IScanEvent.aidl \
130 aidl/android/net/wifi/IWificond.aidl \
131 aidl/android/net/wifi/IWifiScannerImpl.aidl \
132 scanning/channel_settings.cpp \
133 scanning/hidden_network.cpp \
134 scanning/pno_network.cpp \
135 scanning/pno_settings.cpp \
136 scanning/scan_result.cpp \
137 scanning/single_scan_settings.cpp
138 LOCAL_SHARED_LIBRARIES := \
140 include $(BUILD_STATIC_LIBRARY)
143 ### test util library
145 include $(CLEAR_VARS)
146 LOCAL_MODULE := libwificond_test_utils
147 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
148 LOCAL_C_INCLUDES := $(wificond_includes)
150 looper_backed_event_loop.cpp \
151 tests/integration/binder_dispatcher.cpp \
152 tests/integration/process_utils.cpp \
153 tests/shell_utils.cpp
154 LOCAL_SHARED_LIBRARIES := \
156 LOCAL_WHOLE_STATIC_LIBRARIES := \
158 include $(BUILD_STATIC_LIBRARY)
161 ### wificond unit tests.
163 include $(CLEAR_VARS)
164 LOCAL_MODULE := wificond_unit_test
165 LOCAL_COMPATIBILITY_SUITE := device-tests
166 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
167 LOCAL_C_INCLUDES := $(wificond_includes)
169 tests/ap_interface_impl_unittest.cpp \
170 tests/client_interface_impl_unittest.cpp \
171 tests/looper_backed_event_loop_unittest.cpp \
173 tests/mock_netlink_manager.cpp \
174 tests/mock_netlink_utils.cpp \
175 tests/mock_offload.cpp \
176 tests/mock_offload_callback_handlers.cpp \
177 tests/mock_offload_service_utils.cpp \
178 tests/mock_scan_utils.cpp \
179 tests/netlink_manager_unittest.cpp \
180 tests/netlink_utils_unittest.cpp \
181 tests/nl80211_attribute_unittest.cpp \
182 tests/nl80211_packet_unittest.cpp \
183 tests/offload_callback_test.cpp \
184 tests/offload_hal_test_constants.cpp \
185 tests/offload_scan_manager_test.cpp \
186 tests/offload_scan_utils_test.cpp \
187 tests/offload_test_utils.cpp \
188 tests/scan_result_unittest.cpp \
189 tests/scan_settings_unittest.cpp \
190 tests/scan_stats_unittest.cpp \
191 tests/scan_utils_unittest.cpp \
192 tests/server_unittest.cpp
193 LOCAL_STATIC_LIBRARIES := \
196 libwifi-system-test \
197 libwifi-system-iface-test \
200 LOCAL_SHARED_LIBRARIES := \
201 android.hardware.wifi.offload@1.0 \
211 include $(BUILD_NATIVE_TEST)
214 ### wificond device integration tests.
216 include $(CLEAR_VARS)
217 LOCAL_MODULE := wificond_integration_test
218 LOCAL_CPPFLAGS := $(wificond_cpp_flags)
219 LOCAL_C_INCLUDES := $(wificond_includes)
221 tests/integration/ap_interface_test.cpp \
222 tests/integration/client_interface_test.cpp \
223 tests/integration/life_cycle_test.cpp \
224 tests/integration/scanner_test.cpp \
225 tests/integration/service_test.cpp \
227 tests/shell_unittest.cpp
228 LOCAL_SHARED_LIBRARIES := \
235 LOCAL_STATIC_LIBRARIES := \
238 libwificond_test_utils
239 include $(BUILD_NATIVE_TEST)