Files
android_kernel_samsung_sm86…/Android.mk
Anmolpreet Kaur 8f9a7a029a securemsm-kernel: Compile sec-module-symvers conditionally
Compile sec-module-symvers only if at least  one of the
ENABLE_SECUREMSM_QTEE_DLKM or ENABLE_SECUREMSM_DLKM is true.

Change-Id: Ibf69d19ef311d02862f8a87dabd01875ae2cdcab
Signed-off-by: Anmolpreet Kaur <quic_anmolpre@quicinc.com>
2023-10-12 09:35:03 -07:00

144 lines
5.5 KiB
Makefile

# Android makefile for securemsm kernel modules
ENABLE_SECUREMSM_DLKM := true
ENABLE_SECUREMSM_QTEE_DLKM := true
ifeq ($(TARGET_KERNEL_DLKM_DISABLE), true)
ifeq ($(TARGET_KERNEL_DLKM_SECURE_MSM_OVERRIDE),false)
ENABLE_SECUREMSM_DLKM := false
endif
ifeq ($(TARGET_KERNEL_DLKM_SECUREMSM_QTEE_OVERRIDE),false)
ENABLE_SECUREMSM_QTEE_DLKM := false
endif
endif
LOCAL_PATH := $(call my-dir)
DLKM_DIR := $(TOP)/device/qcom/common/dlkm
SEC_KERNEL_DIR := $(TOP)/vendor/qcom/opensource/securemsm-kernel
LOCAL_EXPORT_KO_INCLUDE_DIRS := $(LOCAL_PATH)/include/ \
$(LOCAL_PATH)/include/uapi
SSG_SRC_FILES := \
$(wildcard $(LOCAL_PATH)/*) \
$(wildcard $(LOCAL_PATH)/*/*) \
$(wildcard $(LOCAL_PATH)/*/*/*) \
$(wildcard $(LOCAL_PATH)/*/*/*/*)
LOCAL_MODULE_DDK_BUILD := true
# This is set once per LOCAL_PATH, not per (kernel) module
KBUILD_OPTIONS := SSG_ROOT=$(SEC_KERNEL_DIR)
KBUILD_OPTIONS += BOARD_PLATFORM=$(TARGET_BOARD_PLATFORM)
CONDITIONAL_FLAGS := $(ENABLE_SECUREMSM_QTEE_DLKM) $(ENABLE_SECUREMSM_DLKM)
ifneq (0, $(words $(filter true, $(CONDITIONAL_FLAGS))))
include $(CLEAR_VARS)
# For incremental compilation
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := sec-module-symvers
LOCAL_MODULE_STEM := Module.symvers
LOCAL_MODULE_KBUILD_NAME := Module.symvers
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
endif
ifeq ($(ENABLE_SECUREMSM_QTEE_DLKM), true)
include $(CLEAR_VARS)
#LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := smcinvoke_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := smcinvoke_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_HEADER_LIBRARIES := smcinvoke_kernel_headers
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
###################################################
###################################################
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := tz_log_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := tz_log_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := qseecom_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := qseecom_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
endif #ENABLE_SECUREMSM_QTEE_DLKM
###################################################
###################################################
ifeq ($(ENABLE_SECUREMSM_DLKM), true)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := qce50_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := qce50_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
###################################################
###################################################
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := qcedev-mod_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := qcedev-mod_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
###################################################
###################################################
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := qcrypto-msm_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := qcrypto-msm_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
###################################################
###################################################
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := hdcp_qseecom_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := hdcp_qseecom_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
###################################################
###################################################
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_MODULE := qrng_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := qrng_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
###################################################
###################################################
ifeq ($(TARGET_USES_SMMU_PROXY), true)
include $(CLEAR_VARS)
#LOCAL_SRC_FILES := $(SSG_SRC_FILES)
LOCAL_EXPORT_KO_INCLUDE_DIRS := $(LOCAL_PATH)/smmu-proxy/ $(LOCAL_PATH)/
LOCAL_MODULE := smmu_proxy_dlkm.ko
LOCAL_MODULE_KBUILD_NAME := smmu_proxy_dlkm.ko
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(KERNEL_MODULES_OUT)
include $(DLKM_DIR)/Build_external_kernelmodule.mk
endif
###################################################
###################################################
endif #COMPILE_SECUREMSM_DLKM check