摘自:http://blog.csdn.net/weiniliuchao/article/details/50295527

增加内核配置选项

openwrt的.config文件中,关于内核的选项都是形如CONFIG_KERNEL_*(由关键字kernel)。在添加内核选项的时候,要在配置项前添加CONFIG_KERNEL_头。

上述添加方法是对于内核中已经存在的选项的添加方法(目前系统支持的内核配置选项可查看文件config/Config-kernel.in)。若目前系统没有该选项,需按照如下方法添加才可使选项生效。

1)  .config;   在此文件中配置CONFIG_KERNEL_选项

2)  config/Config-kernel.in;  在此文件中添加相关配置项的选择

openwrt的.config和kernel中的.config之间的联系

Make defconfig之后会执行scripts/config/conf --defconfig=.config Config.in    (include/toplevel.mk)

conf主要是将Config.in中的各个文件夹中的Config.in(Config-build.in Config-devel.in Config-image.in Config-kernel.in)选项全部读取出来,放到一个表中。然后将.config中的选项逐个的与链表中各值对比。相同,则保存在一个叫作.tmp.xxxx(进程号)的文件中。当全部比对完成以后,将.config更名为.config.old ,将.tmp.xxxx更名为.config。此时openwrt配置选项加载完成。

之后执行kernel的配置选项加载:  (include/kernel-defaults.mk)

scripts/kconfig.pl  +generic/config-3.10 mt7620/config-3.10 > .config.target

就是将generic和 mt7620中的config-3.10中的内核选项融合 添加到.config.target文件中

awk'/^(#[[:space:]]+)?CONFIG_KERNEL/{sub("CONFIG_KERNEL_","CONFIG_");print}'trunk/.config >> linux-3.10.14-p112871/.config.target

此处将openwrt.config中有关内核选项去掉KERNEL_关键字后添加到.config.target中去。

metadata.pl kconfig tmp/.packageinfotrunk/.config linux-3.10.14-p112871/.config.override

kconfig.pl 'm+' '+'linux-3.10.14-p112871/.config.target /dev/nulllinux-3.10.14-p112871/.config.override > linux-3.10.14-p112871/.config

mv linux-3.10.14-p112871/.configlinux-3.10.14-p112871/.config.old

grep -v INITRAMFS .config.old > .config

openwrt内核配置选项添加的更多相关文章

  1. 深入linux kernel内核配置选项

    ============================================================================== 深入linux kernel内核配置选项 ...

  2. Linux-4.4-x86_64 内核配置选项简介【转】

    转自:http://fx114.net/qa-188-150553.aspx 本篇文章主要介绍了"Linux-4.4-x86_64 内核配置选项简介",主要涉及到Linux-4.4 ...

  3. Linux下编译内核配置选项简介

    Code maturity level options代码成熟度选项 Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完 ...

  4. Linux内核配置选项

    http://blog.csdn.net/wdsfup/article/details/52302142 http://www.manew.com/blog-166674-12962.html Gen ...

  5. Linux 系统裁剪笔记 4 (内核配置选项及删改)

     CDROM filesystem support(CONFIG_ISO9660_FS)[Y/m/n/?]有标准光驱的系统应该选Y.Minix fs support(CONFIG_MINIX_FS)[ ...

  6. Linux内核@系统组成与内核配置编译

    Linux系统由什么组成? 由用户空间(应用程序+GNU C标准库)和内核空间(系统调用接口+内核+内核架构代码)组成. Linux内核到底是什么?以及组成. ARM的七种操作级别? 内核网络协议栈( ...

  7. Linux 内核引导选项简介

    Linux 内核引导选项简介 作者:金步国 连接地址:http://www.jinbuguo.com/kernel/boot_parameters.html 参考参数:https://www.cnbl ...

  8. Linux内核配置:定制配置选项

    很多嵌入式开发人员都需要在Linux内核中添加一些特性,以支持特别的定制硬件. ARM架构的顶层Kconfig文件中,可以看到一个名为System Type的菜单项.在ARM system type提 ...

  9. 【内核】linux2.6版本内核编译配置选项(二)

    目录 Linux2.6版本内核编译配置选项(一):http://infohacker.blog.51cto.com/6751239/1203633 Linux2.6版本内核编译配置选项(二):http ...

随机推荐

  1. PAT 1087 All Roads Lead to Rome

    PAT 1087 All Roads Lead to Rome 题目: Indeed there are many different tourist routes from our city to ...

  2. Extending and Embedding PHP

    Extending and Embedding PHP http://wizardmin.com/2010/08/extending-and-embedding-php-6/

  3. Linux下C结构体初始化

    1.前言 今天在公司看一同事写的代码,代码中用到了struct,初始化一个struct用的是乱序格式,如下代码所示: typedef struct _data_t { int a; int b; }d ...

  4. debian更新源时找不到公钥的解决办法

    W: GPG error: http://mirrors.163.com jessie-updates InRelease: The following signatures couldn't be ...

  5. C++ main函数命令行参数使用

    1. C/C++语言中的main函数,经常带有参数argc,argv,如下: int main(int argc, char** argv) int main(int argc, char* argv ...

  6. 开发Yii2过滤器并通过behaviors()行为调用(转)

    在Yii2的几乎每个controller中,我们都会看到一个函数behaviors(),通常,我们用这个函数来配置控制器的权限,例如:public function behaviors()    {  ...

  7. 高度自适应的CSS

    /*高度自适应*/ .com_fill_height{ height:100%; overflow:hidden; } 高度自适应的样式代码,真的就这么简单吗...

  8. 基于RHCS的web双机热备集群搭建

    基于RHCS的web双机热备集群搭建 RHCS集群执行原理及功能介绍 1. 分布式集群管理器(CMAN)  Cluster Manager.简称CMAN.是一个分布式集群管理工具.它执行在集群的各个节 ...

  9. [na][win]AD域组策略wifi自动配置

    http://wenku.baidu.com/link?url=MC950wliAZNeVUJ2M6Y1VTi5faqo7kG374fyBjW57r0qyLJkBZLg5ypiql4RFywQ8q7y ...

  10. 【Android】19.2 ShareActionProvider类—帮你把信息分享出去

    分类:C#.Android.VS2015: 创建日期:2016-03-06 一.简介 共享操作提供程序类(ShareActionProvider)简化了你希望与其他人(或者其他应用程序)共享或分享出来 ...