PMON编译过程分析(二)- Make cfg命令分析(上)
具体命令如下:
- Perl命令介绍
Perl命令是文件操作的命令,上述命令中,对应的参数意义如下:
-i 在原文件中编辑 -n 相当于while,遍历整个文件 -e 指定字符串作为脚本执行,后面使用单引号描述对应的字符串
综上所述,上述三个Perl命令的含义为将lib/libx/Makefile文件内的部分内容,打印在Makefile.inc文件内。 - mkdir -p …/Targets/${TARGET}/compile
递归的创建目录,TARGET = ls3a5000_7a,命令展开后如下:
mkdir -p …/Targets/ls3a5000_7a/compile - cd …/Targets/${TARGET}/conf/;…/…/…/tools/pmoncfg/pmoncfg ${TARGETEL}
TARGET = ls3a5000_7a;
TARGETEL = loongson
命令展开后如下:
cd …/Targets/ls3a5000_7a/conf/
…/…/…/tools/pmoncfg/pmoncfg loongson
进入到conf文件夹,执行pmoncfg loongson命令,在conf文件下,有以下内容
loongson对应的就是上述文件中的loongson,打开这个文件,得到以下结果:
那么pmoncfg loongson的这个命令就转变为成
pmoncfg include “Targets/ls3a5000_7a/conf/ls.3a5000_7a”
ls.3a5000_7a就是pmoncfg的入口文件,也就是待处理的配置文件。
总之,这块主要是pmoncfg这个命令,在PMON中有对应的源码,这个命令大致的作用是处理配置文件的,将配置文件中option选项变成编译时的宏。