1BOARD_PLATFORM_LIST := test 2BOARD_IPAv3_LIST := msm8998 3BOARD_IPAv3_LIST += sdm845 4ifneq ($(call is-board-platform-in-list,$(BOARD_PLATFORM_LIST)),true) 5ifneq (,$(filter $(QCOM_BOARD_PLATFORMS),$(TARGET_BOARD_PLATFORM))) 6ifneq (, $(filter aarch64 arm arm64, $(TARGET_ARCH))) 7 8LOCAL_PATH := $(call my-dir) 9 10include $(CLEAR_VARS) 11 12LOCAL_C_INCLUDES := $(LOCAL_PATH)/../src 13LOCAL_C_INCLUDES += $(LOCAL_PATH)/../inc 14LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../ipanat/inc 15LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../hal/inc 16ifeq ($(call is-platform-sdk-version-at-least,20),true) 17LOCAL_C_INCLUDES += external/icu/icu4c/source/common 18else 19LOCAL_C_INCLUDES += external/icu4c/common 20endif 21#LOCAL_C_INCLUDES += external/dhcpcd 22LOCAL_C_INCLUDES += external/libxml2/include 23LOCAL_C_INCLUDES += external/libnetfilter_conntrack/include 24LOCAL_C_INCLUDES += external/libnfnetlink/include 25 26ifeq ($(TARGET_COMPILE_WITH_MSM_KERNEL),true) 27LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include 28LOCAL_ADDITIONAL_DEPENDENCIES := $(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr 29endif 30 31LOCAL_CFLAGS := -v 32LOCAL_CFLAGS += -DFEATURE_IPA_ANDROID 33LOCAL_CFLAGS += -DFEATURE_IPACM_HAL -Wall -Werror 34ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 35LOCAL_CFLAGS += -DDEBUG 36endif 37 38ifeq ($(call is-board-platform-in-list,$(BOARD_IPAv3_LIST)),true) 39LOCAL_CFLAGS += -DFEATURE_IPA_V3 40endif 41 42LOCAL_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 55LOCAL_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 76LOCAL_MODULE := ipacm 77LOCAL_MODULE_TAGS := optional 78 79LOCAL_SHARED_LIBRARIES := liboffloadhal 80LOCAL_SHARED_LIBRARIES += libipanat 81LOCAL_SHARED_LIBRARIES += libxml2 82LOCAL_SHARED_LIBRARIES += libnfnetlink 83LOCAL_SHARED_LIBRARIES += libnetfilter_conntrack 84LOCAL_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@1.0 \ 95 android.hardware.tetheroffload.control@1.0 96 97LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_EXECUTABLES) 98 99include $(BUILD_EXECUTABLE) 100 101################################################################################ 102 103define ADD_TEST 104 105include $(CLEAR_VARS) 106LOCAL_MODULE := $1 107LOCAL_SRC_FILES := $1 108LOCAL_MODULE_CLASS := ipacm 109LOCAL_MODULE_TAGS := debug 110LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC) 111include $(BUILD_PREBUILT) 112 113endef 114 115include $(CLEAR_VARS) 116LOCAL_MODULE := IPACM_cfg.xml 117LOCAL_MODULE_CLASS := ETC 118LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC) 119LOCAL_MODULE_TAGS := optional 120LOCAL_SRC_FILES := $(LOCAL_MODULE) 121LOCAL_MODULE_OWNER := ipacm 122include $(BUILD_PREBUILT) 123 124endif # $(TARGET_ARCH) 125endif 126endif 127