1
2package {
3    // http://go/android-license-faq
4    // A large-scale-change added 'default_applicable_licenses' to import
5    // the below license kinds from "hardware_qcom_sm8150_data_ipacfg-mgr_license":
6    //   SPDX-license-identifier-BSD
7    default_applicable_licenses: [
8        "hardware_qcom_sm8150_data_ipacfg-mgr_license",
9    ],
10}
11
12cc_binary {
13    name: "ipacm",
14
15    local_include_dirs: ["src"] + ["inc"],
16    header_libs: ["device_kernel_headers"],
17    cflags: ["-DFEATURE_IPA_ANDROID"] + ["-DFEATURE_IPACM_RESTART"] + [
18        "-DFEATURE_IPACM_HAL",
19	"-DDEBUG",
20        "-Wall",
21        "-Werror",
22        "-Wno-error=macro-redefined",
23	"-Wno-enum-compare",
24	"-Wno-error=implicit-fallthrough",
25    ],
26
27    srcs: [
28        "src/IPACM_Main.cpp",
29        "src/IPACM_EvtDispatcher.cpp",
30        "src/IPACM_Config.cpp",
31        "src/IPACM_CmdQueue.cpp",
32        "src/IPACM_Filtering.cpp",
33        "src/IPACM_Routing.cpp",
34        "src/IPACM_Header.cpp",
35        "src/IPACM_Lan.cpp",
36        "src/IPACM_Iface.cpp",
37        "src/IPACM_Wlan.cpp",
38        "src/IPACM_Wan.cpp",
39        "src/IPACM_IfaceManager.cpp",
40        "src/IPACM_Neighbor.cpp",
41        "src/IPACM_Netlink.cpp",
42        "src/IPACM_Xml.cpp",
43        "src/IPACM_Conntrack_NATApp.cpp",
44        "src/IPACM_ConntrackClient.cpp",
45        "src/IPACM_ConntrackListener.cpp",
46        "src/IPACM_Log.cpp",
47        "src/IPACM_OffloadManager.cpp",
48        "src/IPACM_LanToLan.cpp",
49    ],
50
51    init_rc: ["src/ipacm.rc"],
52    clang: true,
53    vendor: true,
54
55    shared_libs: [
56	"liboffloadhal",
57	"libipanat",
58	"libxml2",
59	"libnfnetlink",
60	"libnetfilter_conntrack",
61        "libhidlbase",
62        "liblog",
63        "libcutils",
64        "libdl",
65        "libbase",
66        "libutils",
67        "libhardware_legacy",
68        "libhardware",
69        "android.hardware.tetheroffload.config@1.0",
70        "android.hardware.tetheroffload.control@1.0",
71    ],
72}
73
74//###############################################################################
75
76prebuilt_etc {
77    name: "IPACM_cfg.xml",
78
79    vendor: true,
80    owner: "ipacm",
81    src: "src/IPACM_cfg.xml",
82
83}
84