瀏覽代碼

datarmnet-ext : Add support for Bazel compilation

Add the required makefiles and configurations to support the
bazel build system.

CRs-Fixed: 3524428
Change-Id: I30136320f171676dd20e341b8905af9adc259ec0
Signed-off-by: Abhinay Reddy Vanipally <[email protected]>
Abhinay Reddy Vanipally 2 年之前
父節點
當前提交
ef816753c4

+ 3 - 0
aps/Android.mk

@@ -6,6 +6,9 @@ RMNET_APS_DLKM_PLATFORMS_LIST := pineapple
 ifeq ($(call is-board-platform-in-list, $(RMNET_APS_DLKM_PLATFORMS_LIST)),true)
 LOCAL_PATH := $(call my-dir)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 include $(CLEAR_VARS)
 LOCAL_MODULE := rmnet_aps.ko
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)

+ 6 - 0
aps/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_aps.bzl", "define_aps")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_aps("pineapple", "consolidate")
+
+define_aps("pineapple", "gki")

+ 37 - 0
aps/define_aps.bzl

@@ -0,0 +1,37 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_aps(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_aps".format(kernel_build_variant),
+        out = "rmnet_aps.ko",
+        srcs = [
+            "rmnet_aps_genl.c",
+            "rmnet_aps_main.c",
+            "rmnet_aps.h",
+            "rmnet_aps_genl.h",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+            "//vendor/qcom/opensource/datarmnet:{}_rmnet_core".format(kernel_build_variant),
+            "//vendor/qcom/opensource/datarmnet:rmnet_core_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+        includes = ["include"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_aps".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
mem/Android.mk

@@ -6,6 +6,9 @@ ifeq ($(call is-board-platform-in-list, $(RMNET_MEM_DLKM_PLATFORMS_LIST)),true)
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 LOCAL_CLANG :=true
 LOCAL_MODULE := rmnet_mem.ko

+ 6 - 0
mem/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_mem.bzl", "define_mem")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_mem("pineapple", "consolidate")
+
+define_mem("pineapple", "gki")

+ 36 - 0
mem/define_mem.bzl

@@ -0,0 +1,36 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_mem(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_mem".format(kernel_build_variant),
+        out = "rmnet_mem.ko",
+        srcs = [
+            "rmnet_mem.h",
+            "rmnet_mem_main.c",
+            "rmnet_mem_nl.c",
+            "rmnet_mem_nl.h",
+            "rmnet_mem_pool.c",
+            "rmnet_mem_priv.h",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_mem".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
offload/Android.mk

@@ -7,6 +7,9 @@ ifeq ($(call is-board-platform-in-list, $(RMNET_OFFLOAD_DLKM_PLATFORMS_LIST)),tr
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 LOCAL_MODULE := rmnet_offload.ko
 LOCAL_SRC_FILES   := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)

+ 6 - 0
offload/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_offload.bzl", "define_offload")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_offload("pineapple", "consolidate")
+
+define_offload("pineapple", "gki")

+ 46 - 0
offload/define_offload.bzl

@@ -0,0 +1,46 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_offload(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_offload".format(kernel_build_variant),
+        out = "rmnet_offload.ko",
+        srcs = [
+            "rmnet_offload_engine.c",
+            "rmnet_offload_engine.h",
+            "rmnet_offload_knob.c",
+            "rmnet_offload_knob.h",
+            "rmnet_offload_main.c",
+            "rmnet_offload_main.h",
+            "rmnet_offload_state.c",
+            "rmnet_offload_state.h",
+            "rmnet_offload_stats.c",
+            "rmnet_offload_stats.h",
+            "rmnet_offload_tcp.c",
+            "rmnet_offload_tcp.h",
+            "rmnet_offload_udp.c",
+            "rmnet_offload_udp.h",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+            "//vendor/qcom/opensource/datarmnet:{}_rmnet_core".format(kernel_build_variant),
+            "//vendor/qcom/opensource/datarmnet:rmnet_core_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_offload".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
perf/Android.mk

@@ -7,6 +7,9 @@ ifeq ($(call is-board-platform-in-list, $(RMNET_PERF_DLKM_PLATFORMS_LIST)),true)
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 
 LOCAL_MODULE := rmnet_perf.ko

+ 6 - 0
perf/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_perf.bzl", "define_perf")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_perf("pineapple", "consolidate")
+
+define_perf("pineapple", "gki")

+ 37 - 0
perf/define_perf.bzl

@@ -0,0 +1,37 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_perf(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_perf".format(kernel_build_variant),
+        out = "rmnet_perf.ko",
+        srcs = [
+            "rmnet_perf_main.c",
+            "rmnet_perf_tcp.c",
+            "rmnet_perf_tcp.h",
+            "rmnet_perf_udp.c",
+            "rmnet_perf_udp.h",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+            "//vendor/qcom/opensource/datarmnet:{}_rmnet_core".format(kernel_build_variant),
+            "//vendor/qcom/opensource/datarmnet:rmnet_core_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_perf".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
perf_tether/Android.mk

@@ -7,6 +7,9 @@ ifeq ($(call is-board-platform-in-list, $(RMNET_PERF_TETHER_DLKM_PLATFORMS_LIST)
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 
 LOCAL_MODULE := rmnet_perf_tether.ko

+ 6 - 0
perf_tether/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_perf_tether.bzl", "define_perf_tether")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_perf_tether("pineapple", "consolidate")
+
+define_perf_tether("pineapple", "gki")

+ 33 - 0
perf_tether/define_perf_tether.bzl

@@ -0,0 +1,33 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_perf_tether(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_perf_tether".format(kernel_build_variant),
+        out = "rmnet_perf_tether.ko",
+        srcs = [
+            "rmnet_perf_tether_main.c",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+            "//vendor/qcom/opensource/datarmnet:{}_rmnet_core".format(kernel_build_variant),
+            "//vendor/qcom/opensource/datarmnet:rmnet_core_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_perf_tether".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
sch/Android.mk

@@ -7,6 +7,9 @@ ifeq ($(call is-board-platform-in-list, $(RMNET_SCH_DLKM_PLATFORMS_LIST)),true)
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 
 LOCAL_MODULE := rmnet_sch.ko

+ 6 - 0
sch/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_sch.bzl", "define_sch")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_sch("pineapple", "consolidate")
+
+define_sch("pineapple", "gki")

+ 29 - 0
sch/define_sch.bzl

@@ -0,0 +1,29 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_sch(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_sch".format(kernel_build_variant),
+        out = "rmnet_sch.ko",
+        srcs = [
+            "rmnet_sch_main.c",
+        ],
+        deps = ["//msm-kernel:all_headers"],
+        copts = ["-Wno-misleading-indentation"],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_sch".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
shs/Android.mk

@@ -9,6 +9,9 @@ include $(CLEAR_VARS)
 LOCAL_CFLAGS := -Wno-macro-redefined -Wno-unused-function -Wall -Werror
 LOCAL_CLANG :=true
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 LOCAL_MODULE := rmnet_shs.ko
 LOCAL_SRC_FILES   := $(wildcard $(LOCAL_PATH)/**/*) $(wildcard $(LOCAL_PATH)/*)

+ 5 - 0
shs/BUILD.bazel

@@ -0,0 +1,5 @@
+load(":define_shs.bzl", "define_shs")
+
+define_shs("pineapple", "consolidate")
+
+define_shs("pineapple", "gki")

+ 50 - 0
shs/define_shs.bzl

@@ -0,0 +1,50 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_shs(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_shs".format(kernel_build_variant),
+        out = "rmnet_shs.ko",
+        srcs = [
+            "rmnet_shs.h",
+            "rmnet_shs_common.c",
+            "rmnet_shs_common.h",
+            "rmnet_shs_config.c",
+            "rmnet_shs_config.h",
+            "rmnet_shs_freq.c",
+            "rmnet_shs_freq.h",
+            "rmnet_shs_ll.c",
+            "rmnet_shs_ll.h",
+            "rmnet_shs_main.c",
+            "rmnet_shs_modules.c",
+            "rmnet_shs_modules.h",
+            "rmnet_shs_wq.c",
+            "rmnet_shs_wq.h",
+            "rmnet_shs_wq_genl.c",
+            "rmnet_shs_wq_genl.h",
+            "rmnet_shs_wq_mem.c",
+            "rmnet_shs_wq_mem.h",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+            "//vendor/qcom/opensource/datarmnet:{}_rmnet_core".format(kernel_build_variant),
+            "//vendor/qcom/opensource/datarmnet:rmnet_core_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_shs".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )

+ 3 - 0
wlan/Android.mk

@@ -7,6 +7,9 @@ ifeq ($(call is-board-platform-in-list, $(RMNET_WLAN_DLKM_PLATFORMS_LIST)),true)
 LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 
+#Enabling BAZEL
+LOCAL_MODULE_DDK_BUILD := true
+
 LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
 
 LOCAL_MODULE := rmnet_wlan.ko

+ 6 - 0
wlan/BUILD.bazel

@@ -0,0 +1,6 @@
+load(":define_wlan.bzl", "define_wlan")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+define_wlan("pineapple", "consolidate")
+
+define_wlan("pineapple", "gki")

+ 42 - 0
wlan/define_wlan.bzl

@@ -0,0 +1,42 @@
+load("//build/bazel_common_rules/dist:dist.bzl", "copy_to_dist_dir")
+load("//build/kernel/kleaf:kernel.bzl", "ddk_module")
+
+def define_wlan(target, variant):
+    kernel_build_variant = "{}_{}".format(target, variant)
+    include_base = "../../../{}".format(native.package_name())
+
+    ddk_module(
+        name = "{}_wlan".format(kernel_build_variant),
+        out = "rmnet_wlan.ko",
+        srcs = [
+            "rmnet_wlan.h",
+            "rmnet_wlan_connection.c",
+            "rmnet_wlan_connection.h",
+            "rmnet_wlan_fragment.c",
+            "rmnet_wlan_fragment.h",
+            "rmnet_wlan_genl.c",
+            "rmnet_wlan_genl.h",
+            "rmnet_wlan_main.c",
+            "rmnet_wlan_stats.c",
+            "rmnet_wlan_stats.h",
+        ],
+        kernel_build = "//msm-kernel:{}".format(kernel_build_variant),
+        deps = [
+            "//msm-kernel:all_headers",
+            "//vendor/qcom/opensource/datarmnet:{}_rmnet_core".format(kernel_build_variant),
+            "//vendor/qcom/opensource/datarmnet:rmnet_core_headers",
+        ],
+        copts = ["-Wno-misleading-indentation"],
+    )
+
+    copy_to_dist_dir(
+        name = "{}_datarment-ext_dist".format(kernel_build_variant),
+        data = [
+            ":{}_wlan".format(kernel_build_variant),
+        ],
+        dist_dir = "out/target/product/{}/dlkm/lib/modules/".format(target),
+        flat = True,
+        wipe_dist_dir = False,
+        allow_duplicate_filenames = False,
+        mode_overrides = {"**/*": "644"},
+    )