Android系统10 RK3399 init进程启动(二十九) SeAndroid编译规则目录

本文详细介绍Android源码中SELinux策略文件的分布、编译规则,包括system/sepolicy下的公共与私有策略,以及external/selinux提供的工具。核心步骤涉及政策转换、属性化和合并,以构建预编译的sepolicy文件。

配套系列教学视频链接:

      安卓系列教程之ROM系统开发-百问100ask

说明

系统:Android10.0

设备: FireFly RK3399 (ROC-RK3399-PC-PLUS)

前言

本章节重点介绍在Android源码中, 涉及selinux策略文件所在目录和文件,以及编译规则


一, selinux策略所在目录

system/sepolicy/

Android核心公共的策略文件,上下文文件

external/selinux

外部 SELinux 项目,用于构建主机环境中编译 SELinux 政策和标签所需的各种工具,如提供libselinux库函数,checkpolicy编译器(policy.conf编译成cil文件),secilc编译器(cil文件编译成二进制)

BOARD_SEPOLICY_DIRS

板级/供应商定制或扩展的策略文件

system/sepolicy/:Android核心公共的策略文件,上下文文件

tree -L 1 system/sepolicy/

system/sepolicy/

├── Android.bp

├── Android.mk:大部分的编译目标的规则文件,会include当前目录各个mk文件,如file_contexts.mk等

├── apex

├── build : 提供编译脚本, 脚本包含了各种编译命令,如build_cil用于编译cil文件

├── CleanSpec.mk

├── definitions.mk :只定义了transform-policy-to-conf一个函数,将策略文件转成conf文件,生成xx_policy.conf,

本质上是调用m4命令对文件中的宏进行处理。

├── file_contexts.mk:编译目标文件plat_property_context

├── hwservice_contexts.mk

├── mac_permissions.mk

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旗浩QH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值