From 2c8a55dcf4e571c198118dd4459d62894f6378f3 Mon Sep 17 00:00:00 2001 From: William Roberts <w.roberts@sta.samsung.com> Date: Fri, 30 Nov 2012 14:59:09 -0800 Subject: [PATCH] Replaceable mac_permission.xml support Support overriding ma_permissions.xml in BOARD_SEPOLICY_REPLACE Change-Id: If0bca8bf29bc431a291b6d7b20de132e68cd6a79 --- Android.mk | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/Android.mk b/Android.mk index c02378362..9a5ee9d19 100644 --- a/Android.mk +++ b/Android.mk @@ -10,6 +10,13 @@ POLICYVERS ?= 24 MLS_SENS=1 MLS_CATS=1024 +MAC_PERMISSION_FILE=mac_permissions.xml + +# Detect if someone tries to union the mac permissions policy file +$(if $(filter $(MAC_PERMISSION_FILE), $(BOARD_SEPOLICY_UNION)), \ + $(error Cannot specify $(MAC_PERMISSION_FILE) in BOARD_SEPOLICY_UNION) \ +) + # Quick edge case error detection for BOARD_SEPOLICY_REPLACE. # Builds the singular path for each replace file. sepolicy_replace_paths := @@ -148,15 +155,19 @@ include $(BUILD_PREBUILT) ################################## include $(CLEAR_VARS) -LOCAL_MODULE := mac_permissions.xml +LOCAL_MODULE := $(MAC_PERMISSION_FILE) LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_TAGS := optional LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/security -LOCAL_SRC_FILES := $(LOCAL_MODULE) +include $(BUILD_SYSTEM)/base_rules.mk -include $(BUILD_PREBUILT) +mmac := $(intermediates)/$(MAC_PERMISSION_FILE) +$(mmac) : $(call build_policy, $(MAC_PERMISSION_FILE)) + @mkdir -p $(dir $@) + $(hide) cp $^ $@ +mmac := ################################## build_policy := -- GitLab