// Copyright (C) 2018 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. cc_defaults { name: "selinux_policy_version", cflags: ["-DSEPOLICY_VERSION=30"], } se_filegroup { name: "26.0.board.compat.map", srcs: [ "compat/26.0/26.0.cil", ], } se_filegroup { name: "27.0.board.compat.map", srcs: [ "compat/27.0/27.0.cil", ], } se_filegroup { name: "28.0.board.compat.map", srcs: [ "compat/28.0/28.0.cil", ], } se_filegroup { name: "29.0.board.compat.map", srcs: [ "compat/29.0/29.0.cil", ], } se_filegroup { name: "26.0.board.ignore.map", srcs: [ "compat/26.0/26.0.ignore.cil", ], } se_filegroup { name: "27.0.board.ignore.map", srcs: [ "compat/27.0/27.0.ignore.cil", ], } se_filegroup { name: "28.0.board.ignore.map", srcs: [ "compat/28.0/28.0.ignore.cil", ], } se_filegroup { name: "29.0.board.ignore.map", srcs: [ "compat/29.0/29.0.ignore.cil", ], } se_cil_compat_map { name: "26.0.cil", bottom_half: [":26.0.board.compat.map"], top_half: "27.0.cil", } se_cil_compat_map { name: "27.0.cil", bottom_half: [":27.0.board.compat.map"], top_half: "28.0.cil", } se_cil_compat_map { name: "28.0.cil", bottom_half: [":28.0.board.compat.map"], top_half: "29.0.cil", } se_cil_compat_map { name: "29.0.cil", bottom_half: [":29.0.board.compat.map"], // top_half: "30.0.cil", } se_cil_compat_map { name: "26.0.ignore.cil", bottom_half: [":26.0.board.ignore.map"], top_half: "27.0.ignore.cil", } se_cil_compat_map { name: "27.0.ignore.cil", bottom_half: [":27.0.board.ignore.map"], top_half: "28.0.ignore.cil", } se_cil_compat_map { name: "28.0.ignore.cil", bottom_half: [":28.0.board.ignore.map"], top_half: "29.0.ignore.cil", } se_cil_compat_map { name: "29.0.ignore.cil", bottom_half: [":29.0.board.ignore.map"], // top_half: "30.0.ignore.cil", } prebuilt_etc { name: "26.0.compat.cil", src: "private/compat/26.0/26.0.compat.cil", sub_dir: "selinux/mapping", } prebuilt_etc { name: "27.0.compat.cil", src: "private/compat/27.0/27.0.compat.cil", sub_dir: "selinux/mapping", } prebuilt_etc { name: "28.0.compat.cil", src: "private/compat/28.0/28.0.compat.cil", sub_dir: "selinux/mapping", } prebuilt_etc { name: "29.0.compat.cil", src: "private/compat/29.0/29.0.compat.cil", sub_dir: "selinux/mapping", } se_filegroup { name: "file_contexts_files", srcs: ["file_contexts"], } se_filegroup { name: "file_contexts_asan_files", srcs: ["file_contexts_asan"], } se_filegroup { name: "file_contexts_overlayfs_files", srcs: ["file_contexts_overlayfs"], } se_filegroup { name: "hwservice_contexts_files", srcs: ["hwservice_contexts"], } se_filegroup { name: "property_contexts_files", srcs: ["property_contexts"], } se_filegroup { name: "service_contexts_files", srcs: ["service_contexts"], } file_contexts { name: "plat_file_contexts", srcs: [":file_contexts_files"], product_variables: { address_sanitize: { srcs: [":file_contexts_asan_files"], }, debuggable: { srcs: [":file_contexts_overlayfs_files"], }, }, flatten_apex: { srcs: ["apex/*-file_contexts"], }, recovery_available: true, } file_contexts { name: "vendor_file_contexts", srcs: [":file_contexts_files"], soc_specific: true, recovery_available: true, } file_contexts { name: "system_ext_file_contexts", srcs: [":file_contexts_files"], system_ext_specific: true, recovery_available: true, } file_contexts { name: "product_file_contexts", srcs: [":file_contexts_files"], product_specific: true, recovery_available: true, } file_contexts { name: "odm_file_contexts", srcs: [":file_contexts_files"], device_specific: true, recovery_available: true, } hwservice_contexts { name: "plat_hwservice_contexts", srcs: [":hwservice_contexts_files"], } hwservice_contexts { name: "system_ext_hwservice_contexts", srcs: [":hwservice_contexts_files"], system_ext_specific: true, } hwservice_contexts { name: "product_hwservice_contexts", srcs: [":hwservice_contexts_files"], product_specific: true, } hwservice_contexts { name: "vendor_hwservice_contexts", srcs: [":hwservice_contexts_files"], reqd_mask: true, soc_specific: true, } hwservice_contexts { name: "odm_hwservice_contexts", srcs: [":hwservice_contexts_files"], device_specific: true, } property_contexts { name: "plat_property_contexts", srcs: [":property_contexts_files"], recovery_available: true, } property_contexts { name: "system_ext_property_contexts", srcs: [":property_contexts_files"], system_ext_specific: true, recovery_available: true, } property_contexts { name: "product_property_contexts", srcs: [":property_contexts_files"], product_specific: true, recovery_available: true, } property_contexts { name: "vendor_property_contexts", srcs: [":property_contexts_files"], reqd_mask: true, soc_specific: true, recovery_available: true, } property_contexts { name: "odm_property_contexts", srcs: [":property_contexts_files"], device_specific: true, recovery_available: true, } service_contexts { name: "plat_service_contexts", srcs: [":service_contexts_files"], } service_contexts { name: "product_service_contexts", srcs: [":service_contexts_files"], product_specific: true, } service_contexts { name: "vendor_service_contexts", srcs: [":service_contexts_files"], reqd_mask: true, soc_specific: true, }