12 15

OpenWRT编译系统分析之rootfs/prepare

顾名思义,该任务的主要作用就是根文件系统的一些准备工作。 该make目标定义在*package/Makefile*中。主要包含以下内容:

  1. 调用*package/preconfig*,该目标实际上不存在,所以这个调用没有任何作用。
  2. 检查顶层目录下是否存在files目录。如果存在全部复制到目标根文件系统目录(*build_dir/target-mips_uClibc-0.9.30.1/root-wndr4500v3*)中。
  3. 在目标根文件系统目录中,创建*/etc/rc.d*目录。
  4. 进入目标根文件系统目录,遍历*/etc/init.d/下所有的文件,找出所有包含#!/bin/sh /etc/rc.common的文件。并调用目标根文件系统中的/etc/rc.common script enable把这些脚本都安装到/etc/rc.d*中。
  5. 清理目标根文件系统中所有的*CSV.svn文件以及所有以.*开头的文件。
  6. 调用mklibs函数。该函数只有*CONFIG_USE_MKLIBS*有效时才有有效的定义,但该配置默认未设置。所以实际上这一步也没有任何作用。