1# Copyright (C) 2011 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 17ifneq ($(TARGET_BUILD_PDK), true) 18 19# Make HAL stub library 1 20# ============================================================ 21 22include $(CLEAR_VARS) 23 24LOCAL_REQUIRED_MODULES := 25 26LOCAL_CFLAGS += -Wall -Werror -Wextra -Wno-unused-parameter -Wno-unused-function \ 27 -Wunused-variable -Winit-self -Wwrite-strings -Wshadow 28 29LOCAL_C_INCLUDES += \ 30 external/libnl-headers \ 31 $(call include-path-for, libhardware_legacy)/hardware_legacy 32 33LOCAL_SRC_FILES := \ 34 lib/wifi_hal.cpp 35 36LOCAL_MODULE := libwifi-hal 37 38include $(BUILD_STATIC_LIBRARY) 39 40# Make HAL stub library 2 41# ============================================================ 42 43include $(CLEAR_VARS) 44 45LOCAL_REQUIRED_MODULES := 46 47LOCAL_CFLAGS += -Wall -Werror -Wextra -Wno-unused-parameter -Wno-unused-function \ 48 -Wunused-variable -Winit-self -Wwrite-strings -Wshadow 49 50LOCAL_C_INCLUDES += \ 51 $(LOCAL_PATH)/jni \ 52 external/libnl-headers \ 53 $(call include-path-for, libhardware_legacy)/hardware_legacy 54 55LOCAL_SRC_FILES := \ 56 lib/wifi_hal_stub.cpp 57 58LOCAL_MODULE := libwifi-hal-stub 59 60include $(BUILD_STATIC_LIBRARY) 61 62# set correct hal library path 63# ============================================================ 64LIB_WIFI_HAL := libwifi-hal 65 66ifeq ($(BOARD_WLAN_DEVICE), bcmdhd) 67 LIB_WIFI_HAL := libwifi-hal-bcm 68else ifeq ($(BOARD_WLAN_DEVICE), qcwcn) 69 LIB_WIFI_HAL := libwifi-hal-qcom 70else ifeq ($(BOARD_WLAN_DEVICE), mrvl) 71 # this is commented because none of the nexus devices 72 # that sport Marvell's wifi have support for HAL 73 # LIB_WIFI_HAL := libwifi-hal-mrvl 74else ifeq ($(BOARD_WLAN_DEVICE), MediaTek) 75 # support MTK WIFI HAL 76 LIB_WIFI_HAL := libwifi-hal-mt66xx 77endif 78 79# Make the JNI part 80# ============================================================ 81include $(CLEAR_VARS) 82 83LOCAL_REQUIRED_MODULES := libhardware_legacy 84 85LOCAL_CFLAGS += -Wall -Werror -Wextra -Wno-unused-parameter -Wno-unused-function \ 86 -Wunused-variable -Winit-self -Wwrite-strings -Wshadow 87 88LOCAL_C_INCLUDES += \ 89 $(JNI_H_INCLUDE) \ 90 $(call include-path-for, libhardware)/hardware \ 91 $(call include-path-for, libhardware_legacy)/hardware_legacy \ 92 libcore/include 93 94LOCAL_SHARED_LIBRARIES += \ 95 libnativehelper \ 96 libcutils \ 97 libutils \ 98 libhardware \ 99 libhardware_legacy \ 100 libnl \ 101 libdl 102 103LOCAL_STATIC_LIBRARIES += libwifi-hal-stub 104LOCAL_STATIC_LIBRARIES += $(LIB_WIFI_HAL) 105 106LOCAL_SRC_FILES := \ 107 jni/com_android_server_wifi_WifiNative.cpp \ 108 jni/jni_helper.cpp 109 110ifdef INCLUDE_NAN_FEATURE 111LOCAL_SRC_FILES += \ 112 jni/com_android_server_wifi_nan_WifiNanNative.cpp 113endif 114 115LOCAL_MODULE := libwifi-service 116# b/22172328 117LOCAL_CLANG := false 118 119include $(BUILD_SHARED_LIBRARY) 120 121# Build the java code 122# ============================================================ 123 124include $(CLEAR_VARS) 125 126LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/java 127LOCAL_SRC_FILES := $(call all-java-files-under, java) \ 128 $(call all-Iaidl-files-under, java) \ 129 $(call all-logtags-files-under, java) \ 130 $(call all-proto-files-under, proto) 131 132ifndef INCLUDE_NAN_FEATURE 133LOCAL_SRC_FILES := $(filter-out $(call all-java-files-under, \ 134 java/com/android/server/wifi/nan),$(LOCAL_SRC_FILES)) 135endif 136 137LOCAL_JAVA_LIBRARIES := bouncycastle conscrypt services 138LOCAL_REQUIRED_MODULES := services 139LOCAL_MODULE_TAGS := 140LOCAL_MODULE := wifi-service 141LOCAL_PROTOC_OPTIMIZE_TYPE := nano 142 143ifeq ($(EMMA_INSTRUMENT_FRAMEWORK),true) 144LOCAL_EMMA_INSTRUMENT := true 145endif 146 147LOCAL_JACK_COVERAGE_INCLUDE_FILTER := com.android.server.wifi.* 148 149include $(BUILD_JAVA_LIBRARY) 150 151endif 152