1 BOARD_PLATFORM_LIST := test 2 BOARD_IPAv3_LIST := msm8998 3 BOARD_IPAv3_LIST += sdm845 4 ifneq ($(call is-board-platform-in-list,$(BOARD_PLATFORM_LIST)),true) 5 ifneq (,$(filter $(QCOM_BOARD_PLATFORMS),$(TARGET_BOARD_PLATFORM))) 6 ifneq (, $(filter aarch64 arm arm64, $(TARGET_ARCH))) 7 8 LOCAL_PATH := $(call my-dir) 9 10 include $(CLEAR_VARS) 11 12 LOCAL_C_INCLUDES := $(LOCAL_PATH)/../src 13 LOCAL_C_INCLUDES += $(LOCAL_PATH)/../inc 14 LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../ipanat/inc 15 LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../hal/inc 16 ifeq ($(call is-platform-sdk-version-at-least,20),true) 17 LOCAL_C_INCLUDES += external/icu/icu4c/source/common 18 else 19 LOCAL_C_INCLUDES += external/icu4c/common 20 endif 21 #LOCAL_C_INCLUDES += external/dhcpcd 22 LOCAL_C_INCLUDES += external/libxml2/include 23 LOCAL_C_INCLUDES += external/libnetfilter_conntrack/include 24 LOCAL_C_INCLUDES += external/libnfnetlink/include 25 26 ifeq ($(TARGET_COMPILE_WITH_MSM_KERNEL),true) 27 LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include 28 LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr 29 endif 30 31 LOCAL_CFLAGS := -v 32 LOCAL_CFLAGS += -DFEATURE_IPA_ANDROID 33 LOCAL_CFLAGS += -DFEATURE_IPACM_HAL -Wall -Werror 34 ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 35 LOCAL_CFLAGS += -DDEBUG 36 endif 37 38 ifeq ($(call is-board-platform-in-list,$(BOARD_IPAv3_LIST)),true) 39 LOCAL_CFLAGS += -DFEATURE_IPA_V3 40 endif 41 42 LOCAL_CFLAGS += \ 43 -Wall \ 44 -Werror \ 45 -Wno-constant-logical-operand \ 46 -Wno-format \ 47 -Wno-missing-field-initializers \ 48 -Wno-sign-compare \ 49 -Wno-sometimes-uninitialized \ 50 -Wno-unused-parameter \ 51 -Wno-unused-value \ 52 -Wno-unused-variable \ 53 -Wno-writable-strings \ 54 55 LOCAL_SRC_FILES := IPACM_Main.cpp \ 56 IPACM_EvtDispatcher.cpp \ 57 IPACM_Config.cpp \ 58 IPACM_CmdQueue.cpp \ 59 IPACM_Filtering.cpp \ 60 IPACM_Routing.cpp \ 61 IPACM_Header.cpp \ 62 IPACM_Lan.cpp \ 63 IPACM_Iface.cpp \ 64 IPACM_Wlan.cpp \ 65 IPACM_Wan.cpp \ 66 IPACM_IfaceManager.cpp \ 67 IPACM_Neighbor.cpp \ 68 IPACM_Netlink.cpp \ 69 IPACM_Xml.cpp \ 70 IPACM_Conntrack_NATApp.cpp\ 71 IPACM_ConntrackClient.cpp \ 72 IPACM_ConntrackListener.cpp \ 73 IPACM_Log.cpp \ 74 IPACM_OffloadManager.cpp 75 76 LOCAL_MODULE := ipacm 77 LOCAL_MODULE_TAGS := optional 78 79 LOCAL_SHARED_LIBRARIES := liboffloadhal 80 LOCAL_SHARED_LIBRARIES += libipanat 81 LOCAL_SHARED_LIBRARIES += libxml2 82 LOCAL_SHARED_LIBRARIES += libnfnetlink 83 LOCAL_SHARED_LIBRARIES += libnetfilter_conntrack 84 LOCAL_SHARED_LIBRARIES += libhwbinder \ 85 libhidlbase \ 86 libhidltransport \ 87 liblog \ 88 libcutils \ 89 libdl \ 90 libbase \ 91 libutils \ 92 libhardware_legacy \ 93 libhardware \ 94 android.hardware.tetheroffload.config (a] 1.0 \ 95 android.hardware.tetheroffload.control (a] 1.0 96 97 LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) 98 99 include $(BUILD_EXECUTABLE) 100 101 ################################################################################ 102 103 define ADD_TEST 104 105 include $(CLEAR_VARS) 106 LOCAL_MODULE := $1 107 LOCAL_SRC_FILES := $1 108 LOCAL_MODULE_CLASS := ipacm 109 LOCAL_MODULE_TAGS := debug 110 LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC) 111 include $(BUILD_PREBUILT) 112 113 endef 114 115 include $(CLEAR_VARS) 116 LOCAL_MODULE := IPACM_cfg.xml 117 LOCAL_MODULE_CLASS := ETC 118 LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC) 119 LOCAL_MODULE_TAGS := optional 120 LOCAL_SRC_FILES := $(LOCAL_MODULE) 121 LOCAL_MODULE_OWNER := ipacm 122 include $(BUILD_PREBUILT) 123 124 endif # $(TARGET_ARCH) 125 endif 126 endif 127