SCons 编译系统

SCons 简介

    SCons 是一套由 Python 语言编写的开源构建系统,类似于 GNU Make。它采用不同于通常 Makefile 文件的方式,而是使用 SConstruct 和 SConscript 文件来替代。这些文件也是 Python 脚本,能够使用标准的 Python 语法来编写。所以在 SConstruct、SConscript 文件中可以调用 Python 标准库进行各类复杂的处理,而不局限于 Makefile 设定的规则。

RT-Thread中Scons的脚本结构

SCons 使用 SConscript 和 SConstruct 文件来组织源码结构并进行构建,SConstruct是scons构建的主脚本,SConscript存放在源代码的子目录下,通常放在项目的子目录,以达到分层构建的目的。一个项目 (BSP) 只有一 SConstruct,但是会有多个 SConscript。一般情况下,每个存放有源代码的子目录下都会放置一个 SConscript。

/

  -- rtconfig.py    ---- 控制SCons构建的配置文件,存放了如工具链,构建参数等配置,SConstruct中 import rtconfig 就是找这个文件。

  -- SConscript

  -- SConstruct    ---- SCons的入口脚本,初始化了SCons构建rt-thread所需的必要环境

  -- Kconfig        ---- 顶层Kconfig文件,menuconfig的入口Kconfig文件

  -- rt-thread/

  --- src/

  ---- SConscript  ---- 各级源码的scons子脚本,控制当前级别下的源码构建行为

  ---- Kconfig      ---- 各级源码的Kconfig子脚本,存放当前级别下的配置项

  ---- **.c


SConstruct 中应用rtconfig.LINK_SCRIPT实际就是在rtconfig.py中找LINK_SCRIPT

参考:

https://www.rt-thread.org/document/site/#/development-tools/build-config-system/SCons?id=sconshttps://os.iot.10086.cn/doc/oneos_cube/scons_script.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容