美文网首页
uboot Makefile解析(一)

uboot Makefile解析(一)

作者: QUIZ_JS | 来源:发表于2018-10-05 22:31 被阅读0次

    版本信息

    uboot版本信息在makefile显示为:

    VERSION = 2016
    PATCHLEVEL = 07
    SUBLEVEL =
    EXTRAVERSION =
    NAME =
    

    VERSION:主板本号
    PATCHLEVEL:次版本号
    SUBLEVEL:再次版本号
    EXTRAVERSION:另外附加的版本信息


    引用其他的Makefile

    make命令开始时,会把找寻include所指出的其它Makefile,并把其内容安置在当前的位置。就好像C/C++的#include指令一样。如果文件都没有指定绝对路径或是相对路径的话,make会在当前目录下首先寻找,如果当前目录下没有找到,那么,make还会在下面的几个目录下找:

    1.如果make执行时,有“-I”或“--include-dir”参数,那么make就会在这个参数所指定的目录下去寻找。
    2.如果目录/include(一般是:/usr/local/bin或/usr/include)存在的话,make也会去找。


    内置隐含规则和变量设置

    make工具内置的隐含规则和变量设置可能会导致一些无法预料的结果,应该将他们禁用掉。

    MAKEFLAGS += -rR --include-dir=$(CURDIR)
    

    环境变量 MAKEFILES
    ”-rR“表示禁用内置的隐含规则和变量定义
    ”–include-dir” 指明嵌套脚本的搜索路径
    CURDIR是make的内嵌变量,自动设置为当前目录


    语言区域设置

    获取当前区域设置的数字格式习惯

    unexport LC_ALL
    LC_COLLATE=C
    LC_NUMERIC=C
    export LC_COLLATE LC_NUMERIC
    

    export是shell命令,在make中可以执行shell命令,则表示使用export修改当前进程的环境变量。
    export是make语法中的操作符即传递变量到下级Makefile(当前代码为make中的语法)
    unexport 即不让变量传递到下级Makefile


    避免shell环境干扰

    unexport GREP_OPTIONS
    

    相关文章

      网友评论

          本文标题:uboot Makefile解析(一)

          本文链接:https://www.haomeiwen.com/subject/rjqcaftx.html