RDA Kconfig介绍 ***
安装显示库:
sudo apt-get install libncurses5-dev libncursesw5-dev
执行相关文件:
1、radisson.Kconfig
2、gen_radisson_customer.pl
3、.config
4、back2source.sh
5、modify_config.sh
6、radisson.config
7、Makefile.radisson
8、build_history.sh
文件的相关功能:
radisson.Kconfig
“radisson.Kconfig”为“radissonconfig”规则文件,规定了Kconfig的显示规则&条目。
由于目录中项目是动态变化的,所以在运行“radissonconfig”时要用脚本“gen_radisson_customer.pl”重新生产“Kconfig”文件,即动态生成“radissonconfig”的规则文件。
source "../BUILD_RECORD/Kconfig"
source "../CUS_FILE/AQ/Kconfig"
source "../CUS_FILE/BD/Kconfig"
source "../CUS_FILE/IR/Kconfig"
source "../CUS_FILE/KP/Kconfig"
source "../CUS_FILE/LG/Kconfig"
source "../CUS_FILE/PN/Kconfig"
source "../CUS_FILE/PQ/Kconfig"
source "aps/customer/Kconfig.radisson"
gen_radisson_customer.pl
迭代BUILD_RECORD/AQ/BD/IR/KP/LG/PN/PQ等目录,动态生成相关的“Kconfig”,便于“radissonconfig”界面加载规则。
.config
“.config”为“radissonconfig”显示的数据文件。
即“radisson.Kconfig”&“.config”形成了“规则”&“数据”文件,“radissonconfig”才能正常加载并显示。
back2source.sh
“radisson.Kconfig”&“.config”完成界面的规则与数据,但在界面中进行配置后保存的“.config”文件,要转换为CODE使用的头文件“BUILD_SETTING.h”
即“back2source.sh”完成“.config”到“BUILD_SETTING.h”的转换工作,相关的输入/输出文件如下:
输入文件:.config
输出文件:MI170824LBJ001_XXXX/BUILD_SETTING.h
执行格式为:
./back2source.sh MI170824LBJ001_COMMON_512C816
即将配置文件保存在“MI170824LBJ001_COMMON_512C816”目录下的“BUILD_SETTING.h”。
执行时机为:
./scripts/kconfig/mconf.c 退出“radissonconfig”界面时执行。
modify_config.sh
既然界面退出时要完成配置文件到头文件的转换保存工作(“.config”转换为“BUILD_SETTING.h”),那么在进入“radissonconfig”界面时也要完成相关的“BUILD_SETTING.h”转换为“.config”的工作。
这样才能保证“radissonconfig”加载到正确的数据。即“modify_config.sh”完成“BUILD_SETTING.h”到“.config”的转换,相关的输入/输出文件如下:
输入文件:“BUILD_SETTING.h”&“radisson.config”
输出文件:“.config”
执行格式:
./modify_config.sh ../BUILD_RECORD/MI170816LBJ001_RAD_8503RR8303AMSTARUI/BUILD_SETTING.h
radisson.config
虽然在“radisson.Kconfig”中定义了显示规则,但“BUILD_SETTING.h”文件中却不能保存所有规则的数据,这就导致“BUILD_SETTING.h”中未配置项在“radissonconfig”中不能正常显示。
这也就是“radisson.config”文件必须存在的原因,这个文件定义了未配置项在界面中显示的默认值。
build_history.sh
完成程序的配置及编译工作。
另外要输出根目录的“mconfig.config”文件,对应的输入文件为:“DEFAULT.config”/“BUILD_SETTING.h”/“radisson.config”,执行过程如下:
1、拷贝“DEFAULT.config”为“menuconfig.config”
2、“BUILD_SETTING.h”相关项目覆盖到“menuconfig.config”
整体原则是:BUILD_SETTING.h + DEFAULT.config = menuconfig.config。即radissonconfig配置项,DEFAULT.config文件中就不要再配置,否则重叠了就会有冲突。
//“BUILD_RECORD”目录下,所有的“BUILD_SETTING.h”插入新行“#define NEWLINE”方式:
sed -i "s/====MARK_MENUCONFIG_START====/====MARK_MENUCONFIG_START====\\n#define NEWLINE/g" `grep -rl ====MARK_MENUCONFIG_START==== ./`
RDA Kconfig介绍 ***的更多相关文章
- Kconfig介绍
https://www.kernel.org/doc/Documentation/kbuild/kconfig-language.txt
- 编译android的linux kernel goldfish
https://source.android.com/source/building-kernels.html $ export PATH=/home/hzh/oldhome/learn/androi ...
- RDA 多屏参流程
一.RDA MAKEFILE的本地变量 在介绍多屏参之前,先看一下./code/env.conf的包含过程,通过./code/Makefile.project加载,env.conf中所有的变量,都变为 ...
- 【RDA】使用RDA(Remote Diagnostic Agent)工具对数据库进行健康检查
[RDA]使用RDA(Remote Diagnostic Agent)工具对数据库进行健康检查 分类: Linux RDA英文全称叫做"Oracle Remote Diagnostic Ag ...
- Linux内核配置机制(make menuconfig 、Kconfig、Makefile)讲解【转】
本文转载自:http://www.codexiu.cn/linux/blog/34801/ 前面我们介绍模块编程的时候介绍了驱动进入内核有两种方式:模块和直接编译进内核,并介绍了模块的一种编译方式—— ...
- Linux ARM kernel Makefile and Kconfig
kernel build:顶层Makefile:-->1. include build/main.mk -->2. include build/kernel.mk k ...
- Linux Kconfig及Makefile学习
内核源码树的目录下都有两个文档Kconfig (2.4版本是Config.in)和Makefile.分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源 ...
- 【转】Android bluetooth介绍(二): android blueZ蓝牙代码架构及其uart 到rfcomm流程
原文网址:http://blog.sina.com.cn/s/blog_602c72c50102uzoj.html 关键词:蓝牙blueZ UART HCI_UART H4 HCI L2CAP ...
- 【转】Kconfig,Makefile 和 .config
原文网址:http://blog.csdn.net/nxh_love/article/details/11846861 最新在做Sensor驱动移植的时候,发现了Android driver 中有Kc ...
随机推荐
- Jquery 动态添加元素后,获取不到元素对象情况
- UVaLive 4868 Palindrometer (暴力 / 构造)
题意: 给定一个固定长度的字符串, 字符串是一个含有前导0的数字, 问这个数字加上多少能构成一个回文字符串. 分析: 其实这题有很多种方法, 方法12是我做完后看别人代码总结的, 方法3是我当时想的一 ...
- 优先队列重载运算符< 以及初始化列表
优先队列定义 priority_queue<int, vector<int>, greater<int> >pq; 优先队列重载<运算符 在结构体中定义一个 ...
- 2017 GDCPC 省赛总结
第一年参加省赛,也是我接触acm半年多的第一个正式省级赛事,这半年来我为acm付出的可能很多,但经历过这次省赛后,给我唯一的感觉就是,还不够多. 直接分析题目吧,开始拿到试题后我读的是A题,然后我的队 ...
- 标准sqlserver连接语句
sqlserver左右全内连接 原始链接http://www.cnblogs.com/youzhangjin/archive/2009/05/22/1486982.html 连接条件可在FR ...
- Vue页面骨架屏(一)
在开发webapp的时候总是会受到首屏加载时间过长的影响,主流的解决方法是在载入完成之前显示loading图效果,而一些大公司会配置一套服务端渲染的架构来解决这个问题.考虑到ssr所要解决的一系列问题 ...
- 关于java post get请求Demo (请求c#iis接口)
废话不多说,直接上代码 package dxq.httpGetDemo; import java.io.ByteArrayOutputStream; import java.io.InputStrea ...
- c++中的string常用函数用法总结!
标准c++中string类函数介绍 注意不是CString 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够.字符串长度等等,而且作 ...
- hosts.allow和hosts.deny文件
之前想通过外部主机访问自己主机上的VMWare虚拟机,使用了VMWare的NAT端口映射,经过一番尝试,算是成功了,总结一下. VMWare NAT端口映射就可以将虚拟机上的服务映射成自己主机上的端口 ...
- [bzoj1112][POI2008]砖块Klo_非旋转Treap
砖块Klo bzoj-1112 POI-2008 题目大意:$N$柱砖,希望有连续$K$柱的高度是一样的. 你可以选择以下两个动作 1:从某柱砖的顶端拿一块砖出来,丢掉不要了. 2:从仓库中拿出一块砖 ...